@@ -37,7 +37,7 @@ protected StackManipulation previouusInsn() {
3737
3838 @ Override
3939 public ScriptContext visitAssignment_statement (ntsParser .Assignment_statementContext ctx ) {
40- TerminalNode variableIdentifier = ctx .VARIABLE_IDENTIFIER ();
40+ TerminalNode variableIdentifier = ctx .IDENTIFIER ();
4141 Optional <Variable > var = scriptContext .getVariable (variableIdentifier .getText ());
4242
4343 Variable variable = var .orElseGet (() -> scriptContext .createNewVariable (variableIdentifier .getText (), ctx .assignment_values ()));
@@ -170,6 +170,11 @@ public ScriptContext visitType_double(ntsParser.Type_doubleContext ctx) {
170170 return scriptContext ;
171171 }
172172
173+ @ Override
174+ public ScriptContext visitAssignment_values (ntsParser .Assignment_valuesContext ctx ) {
175+ return super .visitAssignment_values (ctx );
176+ }
177+
173178 protected boolean parseBoolean (String text ) {
174179 if (text .equalsIgnoreCase ("t" ) || text .equalsIgnoreCase ("true" )) {
175180 return true ;
@@ -255,8 +260,12 @@ public ScriptContext visitType_enum(ntsParser.Type_enumContext ctx) {
255260
256261 @ Override
257262 public ScriptContext visitFunction_call (ntsParser .Function_callContext ctx ) {
263+ String line = ctx .getText ();
264+ if (ctx .arguments == null ) {
265+ return super .visitFunction_call (ctx );
266+ }
258267 String functionName = ctx .function_name .getText ();
259- Optional <Variable > variable = scriptContext .getVariable ("@" + functionName );
268+ Optional <Variable > variable = scriptContext .getVariable (functionName );
260269 if (variable .isPresent ()) {
261270 Variable variable1 = variable .get ();
262271 if (variable1 .getRuntimeType () != null && Runnable .class .isAssignableFrom (variable1 .getRuntimeType ())) {
@@ -333,7 +342,7 @@ public ScriptContext visitFunction_call(ntsParser.Function_callContext ctx) {
333342 }
334343 }
335344 if (parent != null ) {
336- Variable variable1 = scriptContext .currentScope ().findVariable (parent .VARIABLE_IDENTIFIER ().getText ());
345+ Variable variable1 = scriptContext .currentScope ().findVariable (parent .IDENTIFIER ().getText ());
337346 variable1 .setRuntimeType (c .getDeclaringClass ());
338347 }
339348 } else {
@@ -499,7 +508,7 @@ public ScriptContext visitLambda(ntsParser.LambdaContext ctx) {
499508 List <ntsParser .Variable_referenceContext > variable_referenceContexts = ctx .variable_reference ();
500509 Map <String , Variable > fnVars = new TreeMap <>();
501510 for (ntsParser .Variable_referenceContext var : variable_referenceContexts ) {
502- String text = var .VARIABLE_IDENTIFIER ().getText ();
511+ String text = var .IDENTIFIER ().getText ();
503512 Optional <Variable > variable = scriptContext .getVariable (text );
504513 if (variable .isEmpty ()) {
505514 throw new IllegalStateException ("Unknown variable " + text );
0 commit comments