ArrayTypeNode class
Represents an array type specification in Balbismo.
An array type node combines a primitive type with an array size specification to create a complete array type. Arrays in Balbismo are dynamically sized at runtime and are allocated on the stack.
Example Balbismo code:
int[10] arr; // Fixed size array
int[size] dynamic; // Runtime-sized array
Constructors
- ArrayTypeNode.new(TypeNode primitiveTypeNode, ArraySpecification size)
- Constructs an array type node with a primitive type and size specification.
Properties
-
children
→ List<
Node> -
Child nodes that form the structure of this node.
finalinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- id ↔ int
-
Unique identifier for this node, used for LLVM register naming.
getter/setter pairinherited
- nodeValue → LangType
-
The primary value associated with this node (varies by node type).
finalinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- size → ArraySpecification
-
Gets the array size specification from the children.
no setter
Methods
-
evaluate(
SymbolTable table) → void -
Evaluates this AST node and generates corresponding LLVM IR code.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited