use of cz.cuni.mff.d3s.trupple.language.runtime.customvalues.PascalSubroutine in project TrufflePascal by Aspect26.
the class NodeFactory method createSubroutineParameterPassNode.
public ExpressionNode createSubroutineParameterPassNode(Token variableToken) {
String variableIdentifier = this.getIdentifierFromToken(variableToken);
PascalSubroutine function = this.doLookup(variableIdentifier, LexicalScope::getSubroutine);
TypeDescriptor descriptor = this.doLookup(variableIdentifier, LexicalScope::getIdentifierDescriptor);
return new SubroutineLiteralNode(function, (SubroutineDescriptor) descriptor);
}
use of cz.cuni.mff.d3s.trupple.language.runtime.customvalues.PascalSubroutine in project TrufflePascal by Aspect26.
the class SubroutineDescriptor method setRootNode.
public void setRootNode(RootNode rootNode) {
RootCallTarget callTarget = Truffle.getRuntime().createCallTarget(rootNode);
this.subroutine = new PascalSubroutine(callTarget);
}
Aggregations