protected void Visit(KeywordExpression expression) { if (expression.Name.Text == keyword) { var list = new List<Statement>(containerStack); list.Reverse(); if (ParentNode is ExpressionStatement) list.Add(ParentNode as ExpressionStatement); else parserResult.Error("{0} keyword detected, but outside of an ExpressionStatement. It is impossible to unroll the loop", expression.Span, keyword); scopeList.Add(list); } }
private static KeywordExpression Clone(KeywordExpression expression) { return expression; }
protected virtual void Visit(KeywordExpression keywordExpression) { // A discard will be transformed to 'return' if (keywordExpression.Name.Text == "discard") { WriteLinkLine(keywordExpression); WriteLine("context.Discard();"); } else { base.Visit(keywordExpression); } }