ShakeInvocation

Represents an invocation in the Shake language. An invocation is a call to a callable entity (like a function or a method) with a set of arguments.

Since

0.1.0

Inheritors

Properties

Link copied to clipboard
abstract val arguments: List<ShakeValue>

The list of arguments passed to the invocation.

Link copied to clipboard
abstract val callable: ShakeInvokable

The callable entity that is being invoked.

Link copied to clipboard
abstract val isAnonymous: Boolean

Indicates if the invocation is anonymous. An anonymous invocation does not have a directly associated name in the source code.

Link copied to clipboard
abstract val name: String

The name of the callable entity being invoked.

Link copied to clipboard
abstract val parent: ShakeValue?

The parent value of this invocation, if any. This is typically used in method calls where the parent refers to the object on which the method is called.

Link copied to clipboard
abstract val project: ShakeProject

The project to which this value belongs.

Link copied to clipboard
abstract val type: ShakeType

The type of this value.

Functions

Link copied to clipboard
abstract override fun toJson(): Map<String, Any?>

Converts the invocation to a JSON representation. Useful for serialization or debugging purposes.