CreationShakeVariableDeclaration

Constructors

Link copied to clipboard
constructor(scope: CreationShakeScope, name: String, type: ShakeType, initialValue: CreationShakeValue?, isFinal: Boolean)

Properties

Link copied to clipboard
open override var actualType: ShakeType

The actual type of the assignable entity.

Link copied to clipboard
open override var actualValue: CreationShakeValue?

The actual value of the assignable entity.

Link copied to clipboard
open override val initialValue: CreationShakeValue?

The initial value assigned to the variable at the time of declaration, if any.

Link copied to clipboard
open override val isFinal: Boolean

Indicates whether the variable is declared as final (i.e., its value cannot be changed once initialized).

Link copied to clipboard
open override val name: String

The name of the declaration.

Link copied to clipboard
open override val project: CreationShakeProject
Link copied to clipboard
open override val qualifiedName: String

The fully qualified name of the declaration, including its scope and namespace.

Link copied to clipboard
open override val scope: CreationShakeScope

The scope in which the variable is declared.

Link copied to clipboard
open override var type: ShakeType

The declared type of the assignable entity.

Link copied to clipboard
abstract val uniqueName: String

A unique name for the declaration, used internally for identification.

Functions

Link copied to clipboard
open override fun access(scope: CreationShakeScope): CreationShakeValue
Link copied to clipboard

Performs addition assignment on this entity's type.

Link copied to clipboard
open fun assignType(other: ShakeType, scope: ShakeScope): ShakeType?

Assigns a type to this entity.

Link copied to clipboard
Link copied to clipboard

Handles the type after decrement operation.

Link copied to clipboard

Handles the type before decrement operation.

Link copied to clipboard

Performs division assignment on this entity's type.

Link copied to clipboard

Handles the type after increment operation.

Link copied to clipboard

Handles the type before increment operation.

Link copied to clipboard
open fun modulusAssignType(other: ShakeType, scope: ShakeScope): ShakeType?

Performs modulus assignment on this entity's type.

Link copied to clipboard

Performs multiplication assignment on this entity's type.

Link copied to clipboard
open fun powerAssignType(other: ShakeType, scope: ShakeScope): ShakeType?

Performs power assignment on this entity's type.

Link copied to clipboard

Performs subtraction assignment on this entity's type.

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

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

Link copied to clipboard
Link copied to clipboard
open override fun valueCompatible(value: ShakeValue): Boolean

Checks if the provided value is compatible with the variable's type.