FuncCall class
Represents a function call expression in Balbismo.
A function call invokes a previously declared function with the specified arguments. The function must be declared before it can be called, and the argument types must match the function's parameter types.
Example Balbismo code:
int add(int x, int y) {
return x + y;
}
int main() {
int result = add(5, 3); // 'add(5, 3)' is a FuncCall
return result;
}
This generates LLVM IR like:
%call.0 = call i64 @add(i64 %arg1, i64 %arg2)
Constructors
- FuncCall.new(IdentifierNode identifier, ArgumentList args)
- Constructs a function call with the function name and arguments.
Properties
- args → ArgumentList
-
no setter
-
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
- identifier → IdentifierNode
-
no setter
- nodeValue → void
-
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) → LangVal< LangType> -
Evaluates this AST node and generates corresponding LLVM IR code.
override
-
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