public ForStatement( List <Statement> statements, string identifier, Expression source, Expression limit, Expression offset, bool reversed, ElseStatement elseStatement = null ) : base(statements) { Identifier = identifier; Source = source; Limit = limit; Offset = offset; Reversed = reversed; Else = elseStatement; _isContinueOffset = Offset is MemberExpression l && l.Segments.Count == 1 && ((IdentifierSegment)l.Segments[0]).Identifier == "continue"; _continueOffsetLiteral = source is MemberExpression m ? "for_continue_" + ((IdentifierSegment)m.Segments[0]).Identifier : null; }