TypeNode class

Represents a type specification in Balbismo.

A type node wraps a LangType instance and is used wherever a type specification is needed in the language, such as function return types, variable declarations, and parameter types.

This node doesn't generate any LLVM IR itself - it serves as a container for type information that's used by other nodes during evaluation.

Example Balbismo code:

int x = 5;      // 'int' is represented by a TypeNode
float y = 3.14; // 'float' is represented by a TypeNode
Inheritance

Constructors

TypeNode.new(LangType value)
Constructs a type node with the specified language type.

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

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