public override void VisitWhileUntilLoopStatement(IWhileUntilLoopStatement operation) { var loopKind = operation.LoopKind; var isTopTest = operation.IsTopTest; var isWhile = operation.IsWhile; base.VisitWhileUntilLoopStatement(operation); }
/// <inheritdoc /> public override Expression VisitWhileUntilLoopStatement(IWhileUntilLoopStatement operation, LocalBinder argument) { Expression condition = operation.Condition.Accept(this, argument); Expression body = operation.Body.Accept(this, argument); return(operation.IsTopTest ? Expressive.While(condition, body) as Expression : Expressive.DoWhile(condition, body)); }
public override void VisitWhileUntilLoopStatement(IWhileUntilLoopStatement operation) { LogString(nameof(IWhileUntilLoopStatement)); LogString($" (IsTopTest: {operation.IsTopTest}, IsWhile: {operation.IsWhile})"); LogLoopStatementHeader(operation); Visit(operation.Condition, "Condition"); VisitLoopStatementBody(operation); }
public override void VisitWhileUntilLoopStatement(IWhileUntilLoopStatement operation) { if (operation.IsTopTest) { Visit(operation.Condition); Visit(operation.Body); } else { Visit(operation.Body); Visit(operation.Condition); } }
public override Location VisitWhileUntilLoopStatement([NotNull] IWhileUntilLoopStatement operation, [CanBeNull] object argument) { if (operation.Syntax is DoStatementSyntax doSyntax) { return(doSyntax.DoKeyword.GetLocation()); } if (operation.Syntax is WhileStatementSyntax whileSyntax) { return(whileSyntax.WhileKeyword.GetLocation()); } throw ExceptionFactory.Unreachable(); }
public virtual void VisitWhileUntilLoopStatement(IWhileUntilLoopStatement operation) { DefaultVisit(operation); }
public static IWhileUntilLoopStatement Update(this IWhileUntilLoopStatement self, ImmutableArray <ISymbol> @locals, IOperation @condition, IOperation @body, ILabelSymbol @breakLabel, ILabelSymbol @continueLabel) => self;
public override void VisitWhileUntilLoopStatement([NotNull] IWhileUntilLoopStatement operation) { IncrementStatementCount(operation); base.VisitWhileUntilLoopStatement(operation); }
/// <inheritdoc /> public override IOperation VisitWhileUntilLoopStatement(IWhileUntilLoopStatement operation, object argument) { return(base.VisitWhileUntilLoopStatement(operation, argument)); }
public override void VisitWhileUntilLoopStatement([NotNull] IWhileUntilLoopStatement operation) { LoopStatementLocation = operation.GetLocationForKeyword(); }
public override void VisitWhileUntilLoopStatement([NotNull] IWhileUntilLoopStatement operation) { Visit(operation.Condition); }