public void Translate(ActionSet actionSet) { ForeachBuilder foreachBuilder = new ForeachBuilder(actionSet, Array.Parse(actionSet)); actionSet.IndexAssigner.Add(ForeachVar, foreachBuilder.IndexValue); foreachBuilder.Setup(); Block.Translate(actionSet); foreachBuilder.Finish(); }
public override void Translate(ActionSet actionSet) { ForeachBuilder foreachBuilder = new ForeachBuilder(actionSet, Array.Parse(actionSet), actionSet.IsRecursive); // Add the foreach value to the assigner. actionSet.IndexAssigner.Add(ForeachVar, foreachBuilder.IndexValue); // Translate the block. Block.Translate(actionSet.Indent()); // Resolve continues. ResolveContinues(actionSet); // Finish the foreach. foreachBuilder.Finish(); // Resolve breaks. ResolveBreaks(actionSet); }