Search in sources :

Example 1 with AFunctionOperation

use of de.be4.classicalb.core.parser.node.AFunctionOperation in project probparsers by bendisposto.

the class RulesMachineChecker method caseAFunctionOperation.

@Override
public void caseAFunctionOperation(AFunctionOperation node) {
    currentOperation = new FunctionOperation(node.getName(), this.fileName, this.machineName, machineReferences);
    functionMap.put(node, (FunctionOperation) currentOperation);
    this.identifierScope.createNewScope(new ArrayList<>(node.getParameters()));
    this.identifierScope.createNewScope(new ArrayList<>(node.getReturnValues()), true);
    visitOperationAttributes(node.getAttributes());
    node.getBody().apply(this);
    currentOperation = null;
    this.identifierScope.removeScope();
}
Also used : AFunctionOperation(de.be4.classicalb.core.parser.node.AFunctionOperation)

Aggregations

AFunctionOperation (de.be4.classicalb.core.parser.node.AFunctionOperation)1