public ForEachNode(DeltinScriptParser.ForeachContext context, BuildAstVisitor visitor) : base(new Location(visitor.file, Range.GetRange(context))) { Array = visitor.Visit(context.expr()); Variable = new ParameterDefineNode(context.parameter_define(), visitor); Block = (BlockNode)visitor.VisitBlock(context.block()); Repeaters = 1; if (context.number() != null) { Repeaters = int.Parse(context.number().GetText()); } }
public override Node VisitForeach(DeltinScriptParser.ForeachContext context) { Node array = Visit(context.expr()); string name = context.PART().GetText(); BlockNode block = (BlockNode)VisitBlock(context.block()); int repeaters = 1; if (context.number() != null) { repeaters = int.Parse(context.number().GetText()); } return(new ForEachNode(name, array, block, repeaters, new Location(file, Range.GetRange(context)))); }