public override bool VisitStatement([NotNull] injectionParser.StatementContext context) { if (context.@goto() != null) { Generate(context.@goto()); } else if (context.label() != null) { Generate(context.label()); } else if (context.@if() != null) { Generate(context.@if()); } else if (context.@while() != null) { Generate(context.@while()); } else { AddInstruction(new GenericStatementInstruction(context)); } return(true); }
public StatementExecutionContext(int statementIndex, int line, string file, injectionParser.StatementContext statement, Interpreter interpreter) { StatementIndex = statementIndex; Line = line; File = file; this.statement = statement; this.interpreter = interpreter; }
public override bool VisitStatement([NotNull] injectionParser.StatementContext context) { if (context.@goto() != null) { Generate(context.@goto()); } else if (context.label() != null) { Generate(context.label()); } else if (context.@if() != null) { Generate(context.@if()); } else if (context.@while() != null) { Generate(context.@while()); } else if (context.@break() != null) { AddBreakJump(); } else if (context.repeat() != null) { StartBreakScope(); AddInstruction(new GenericStatementInstruction(context)); } else if (context.until() != null) { AddInstruction(new GenericStatementInstruction(context)); EndBreakScope(); } else { AddInstruction(new GenericStatementInstruction(context)); } return(true); }
public IfInstruction(injectionParser.IfContext ifSyntax) { IfSyntax = ifSyntax; Statement = (injectionParser.StatementContext)ifSyntax.Parent; }
public GotoInstruction(injectionParser.GotoContext gotoSyntax) { GotoSyntax = gotoSyntax; Statement = (injectionParser.StatementContext)gotoSyntax.Parent; }
public GenericStatementInstruction(injectionParser.StatementContext statement) { Statement = statement; }