public override object VisitIteratorStatement(IteratorStatementContext context) { var it = (new Iterator()); if (context.Dot_Dot_Dot() != null || context.Dot_Dot_Greater() != null) { it.order = F; } if (context.Dot_Dot_Less() != null || context.Dot_Dot_Greater() != null) { it.close = F; } if (context.expression().Length == 2) { it.begin = (Result)(Visit(context.expression(0))); it.end = (Result)(Visit(context.expression(1))); it.step = (new Result() { data = I32, text = "1" }); } else { it.begin = (Result)(Visit(context.expression(0))); it.end = (Result)(Visit(context.expression(2))); it.step = (Result)(Visit(context.expression(1))); } return(it); }
public override object VisitIteratorStatement([NotNull] IteratorStatementContext context) { var it = new Iterator(); var i = context.expression(); it.op = context.op.Text; if (context.expression().Length == 2) { it.from = (Result)Visit(context.expression(0)); it.to = (Result)Visit(context.expression(1)); it.step = new Result { data = i32, text = "1" }; } else { it.from = (Result)Visit(context.expression(0)); it.to = (Result)Visit(context.expression(1)); it.step = (Result)Visit(context.expression(2)); } return(it); }