ShakeLambdaDeclaration

Represents a lambda declaration in the Shake language. A lambda declaration is a function that can be passed around as a value and invoked. This interface extends ShakeInvokable for invocation capabilities and ShakeValue for value representation.

Since

0.1.0

Inheritors

Properties

Link copied to clipboard
abstract val body: ShakeCode?

The body of the invokable entity, containing the executable code.

Link copied to clipboard
abstract val content: ShakeCode

The content of the lambda, represented as ShakeCode. This defines the behavior of the lambda when it is invoked.

Link copied to clipboard

A list of parameters that the invokable entity accepts.

Link copied to clipboard
abstract val project: ShakeProject

The project to which this value belongs.

Link copied to clipboard
abstract val qualifiedName: String

The fully qualified name of the invokable entity.

Link copied to clipboard
abstract val returnType: ShakeType

The return type of the invokable entity.

Link copied to clipboard
abstract val type: ShakeType

The type of this value.

Functions

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

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