41 types derived from BoundStatement
Microsoft.CodeAnalysis.VisualBasic (41)
BoundTree\BoundWithStatement.vb (1)
13Inherits BoundStatement
Generated\BoundNodes.xml.Generated.vb (40)
640Inherits BoundStatement 2496Inherits BoundStatement 2561Inherits BoundStatement 2600Inherits BoundStatement 2761Inherits BoundStatement 2813Inherits BoundStatement 2852Inherits BoundStatement 2883Inherits BoundStatement 2917Inherits BoundStatement 2981Inherits BoundStatement 4330Inherits BoundStatement 4381Inherits BoundStatement 4424Inherits BoundStatement 4552Inherits BoundStatement 4594Inherits BoundStatement 4860Inherits BoundStatement 4894Inherits BoundStatement 4945Inherits BoundStatement 5013Inherits BoundStatement 5056Inherits BoundStatement 5260Inherits BoundStatement 5662Inherits BoundStatement 5704Inherits BoundStatement 5746Inherits BoundStatement 6495Inherits BoundStatement 6579Inherits BoundStatement 6621Inherits BoundStatement 6655Inherits BoundStatement 6706Inherits BoundStatement 7528Inherits BoundStatement 7611Inherits BoundStatement 7654Inherits BoundStatement 7722Inherits BoundStatement 8304Inherits BoundStatement 8356Inherits BoundStatement 8408Inherits BoundStatement 8528Inherits BoundStatement 8576Inherits BoundStatement 8792Inherits BoundStatement 8810Inherits BoundStatement
52 instantiations of BoundStatement
Microsoft.CodeAnalysis.VisualBasic (52)
BoundTree\BoundYieldStatement.vb (1)
20MyBase.New(BoundKind.YieldStatement, syntax, hasErrors OrElse expression.NonNullAndHasErrors())
Generated\BoundNodes.xml.Generated.vb (51)
643MyBase.New(BoundKind.BadStatement, syntax, hasErrors OrElse childBoundNodes.NonNullAndHasErrors()) 2499MyBase.New(BoundKind.SequencePoint, syntax, hasErrors OrElse statementOpt.NonNullAndHasErrors()) 2564MyBase.New(BoundKind.SequencePointWithSpan, syntax, hasErrors OrElse statementOpt.NonNullAndHasErrors()) 2603MyBase.New(BoundKind.NoOpStatement, syntax, hasErrors) 2608MyBase.New(BoundKind.NoOpStatement, syntax) 2764MyBase.New(BoundKind.ReturnStatement, syntax, hasErrors OrElse expressionOpt.NonNullAndHasErrors()) 2816MyBase.New(BoundKind.YieldStatement, syntax, hasErrors OrElse expression.NonNullAndHasErrors()) 2855MyBase.New(BoundKind.ThrowStatement, syntax, hasErrors OrElse expressionOpt.NonNullAndHasErrors()) 2886MyBase.New(BoundKind.RedimStatement, syntax, hasErrors OrElse clauses.NonNullAndHasErrors()) 2920MyBase.New(BoundKind.RedimClause, syntax, hasErrors OrElse operand.NonNullAndHasErrors() OrElse indices.NonNullAndHasErrors()) 2984MyBase.New(BoundKind.EraseStatement, syntax, hasErrors OrElse clauses.NonNullAndHasErrors()) 4333MyBase.New(BoundKind.Block, syntax, hasErrors OrElse statements.NonNullAndHasErrors()) 4384MyBase.New(BoundKind.StateMachineScope, syntax, hasErrors OrElse statement.NonNullAndHasErrors()) 4427MyBase.New(kind, syntax, hasErrors) 4431MyBase.New(kind, syntax) 4555MyBase.New(BoundKind.DimStatement, syntax, hasErrors OrElse localDeclarations.NonNullAndHasErrors() OrElse initializerOpt.NonNullAndHasErrors()) 4597MyBase.New(kind, syntax, hasErrors) 4601MyBase.New(kind, syntax) 4605MyBase.New(BoundKind.Initializer, syntax, hasErrors) 4609MyBase.New(BoundKind.Initializer, syntax) 4863MyBase.New(BoundKind.ExpressionStatement, syntax, hasErrors OrElse expression.NonNullAndHasErrors()) 4897MyBase.New(BoundKind.IfStatement, syntax, hasErrors OrElse condition.NonNullAndHasErrors() OrElse consequence.NonNullAndHasErrors() OrElse alternativeOpt.NonNullAndHasErrors()) 4948MyBase.New(BoundKind.SelectStatement, syntax, hasErrors OrElse expressionStatement.NonNullAndHasErrors() OrElse exprPlaceholderOpt.NonNullAndHasErrors() OrElse caseBlocks.NonNullAndHasErrors()) 5016MyBase.New(BoundKind.CaseBlock, syntax, hasErrors OrElse caseStatement.NonNullAndHasErrors() OrElse body.NonNullAndHasErrors()) 5059MyBase.New(BoundKind.CaseStatement, syntax, hasErrors OrElse caseClauses.NonNullAndHasErrors() OrElse conditionOpt.NonNullAndHasErrors()) 5263MyBase.New(kind, syntax, hasErrors) 5273MyBase.New(kind, syntax) 5665MyBase.New(BoundKind.ExitStatement, syntax, hasErrors) 5673MyBase.New(BoundKind.ExitStatement, syntax) 5707MyBase.New(BoundKind.ContinueStatement, syntax, hasErrors) 5715MyBase.New(BoundKind.ContinueStatement, syntax) 5749MyBase.New(BoundKind.TryStatement, syntax, hasErrors OrElse tryBlock.NonNullAndHasErrors() OrElse catchBlocks.NonNullAndHasErrors() OrElse finallyBlockOpt.NonNullAndHasErrors()) 6498MyBase.New(BoundKind.LabelStatement, syntax, hasErrors) 6506MyBase.New(BoundKind.LabelStatement, syntax) 6582MyBase.New(BoundKind.GotoStatement, syntax, hasErrors OrElse labelExpressionOpt.NonNullAndHasErrors()) 6624MyBase.New(BoundKind.StatementList, syntax, hasErrors OrElse statements.NonNullAndHasErrors()) 6658MyBase.New(BoundKind.ConditionalGoto, syntax, hasErrors OrElse condition.NonNullAndHasErrors()) 6709MyBase.New(BoundKind.WithStatement, syntax, hasErrors OrElse originalExpression.NonNullAndHasErrors() OrElse body.NonNullAndHasErrors()) 7531MyBase.New(kind, syntax, hasErrors) 7614MyBase.New(BoundKind.RaiseEventStatement, syntax, hasErrors OrElse eventInvocation.NonNullAndHasErrors()) 7657MyBase.New(BoundKind.UsingStatement, syntax, hasErrors OrElse resourceList.NonNullAndHasErrors() OrElse resourceExpressionOpt.NonNullAndHasErrors() OrElse body.NonNullAndHasErrors()) 7725MyBase.New(BoundKind.SyncLockStatement, syntax, hasErrors OrElse lockExpression.NonNullAndHasErrors() OrElse body.NonNullAndHasErrors()) 8307MyBase.New(BoundKind.ResumeStatement, syntax, hasErrors OrElse labelExpressionOpt.NonNullAndHasErrors()) 8359MyBase.New(BoundKind.OnErrorStatement, syntax, hasErrors OrElse labelExpressionOpt.NonNullAndHasErrors()) 8411MyBase.New(BoundKind.UnstructuredExceptionHandlingStatement, syntax, hasErrors OrElse body.NonNullAndHasErrors()) 8531MyBase.New(BoundKind.UnstructuredExceptionOnErrorSwitch, syntax, hasErrors OrElse value.NonNullAndHasErrors() OrElse jumps.NonNullAndHasErrors()) 8579MyBase.New(BoundKind.UnstructuredExceptionResumeSwitch, syntax, hasErrors OrElse resumeTargetTemporary.NonNullAndHasErrors() OrElse resumeLabel.NonNullAndHasErrors() OrElse resumeNextLabel.NonNullAndHasErrors() OrElse jumps.NonNullAndHasErrors()) 8795MyBase.New(BoundKind.StopStatement, syntax, hasErrors) 8799MyBase.New(BoundKind.StopStatement, syntax) 8813MyBase.New(BoundKind.EndStatement, syntax, hasErrors) 8817MyBase.New(BoundKind.EndStatement, syntax)
843 references to BoundStatement
Microsoft.CodeAnalysis.VisualBasic (835)
Analysis\FlowAnalysis\AbstractFlowPass.NestedTypes.vb (2)
86Public ReadOnly Branch As BoundStatement 107Public Sub New(branch As BoundStatement, state As LocalState, nesting As BlockNesting)
Analysis\FlowAnalysis\AbstractFlowPass.vb (8)
447Protected Overridable Sub NoteBranch(pending As PendingBranch, stmt As BoundStatement, labelStmt As BoundLabelStatement) 450Private Shared Function GetBranchTargetLabel(branch As BoundStatement, gotoOnly As Boolean) As LabelSymbol 595Dim branchStatement As BoundStatement = branch.Branch 845Protected Overridable Sub VisitStatement(statement As BoundStatement) 1330Dim statement = TryCast(child, BoundStatement) 1332VisitStatement(TryCast(child, BoundStatement)) 2069Protected Overridable Sub VisitTryBlock(tryBlock As BoundStatement, node As BoundTryStatement, ByRef tryState As LocalState) 2089Protected Overridable Sub VisitFinallyBlock(finallyBlock As BoundStatement, ByRef unsetInFinally As LocalState)
Analysis\FlowAnalysis\ControlFlowPass.vb (3)
74Protected Overrides Sub VisitStatement(statement As BoundStatement) 120Protected Overrides Sub VisitTryBlock(tryBlock As BoundStatement, node As BoundTryStatement, ByRef tryState As LocalState) 151Protected Overrides Sub VisitFinallyBlock(finallyBlock As BoundStatement, ByRef endState As LocalState)
Analysis\FlowAnalysis\DataFlowPass.vb (2)
1437Protected Overrides Sub VisitTryBlock(tryBlock As BoundStatement, node As BoundTryStatement, ByRef _tryState As LocalState) 1498Protected Overrides Sub VisitFinallyBlock(finallyBlock As BoundStatement, ByRef unsetInFinally As LocalState)
Analysis\FlowAnalysis\DataFlowsInWalker.vb (1)
67Protected Overrides Sub NoteBranch(pending As PendingBranch, stmt As BoundStatement, labelStmt As BoundLabelStatement)
Analysis\FlowAnalysis\EntryPointsWalker.vb (1)
46Protected Overrides Sub NoteBranch(pending As PendingBranch, stmt As BoundStatement, labelStmt As BoundLabelStatement)
Analysis\InitializerRewriter.vb (8)
33constructorInitializerOpt As BoundStatement, 51Dim blockStatements As ImmutableArray(Of BoundStatement) = block.Statements 53Dim boundStatements = ArrayBuilder(Of BoundStatement).GetInstance() 182Dim boundStatements = ArrayBuilder(Of BoundStatement).GetInstance() 199boundInitializers As ImmutableArray(Of BoundInitializer)) As ImmutableArray(Of BoundStatement) 201Dim boundStatements = ArrayBuilder(Of BoundStatement).GetInstance(boundInitializers.Length) 236Private Function RewriteInitializerAsStatement(initializer As BoundInitializer) As BoundStatement 254Dim firstBoundStatement As BoundStatement = block.Statements.First()
Binding\BackstopBinder.vb (1)
96Protected Overrides Function CreateBoundWithBlock(node As WithBlockSyntax, boundBlockBinder As Binder, diagnostics As BindingDiagnosticBag) As BoundStatement
Binding\Binder_Delegates.vb (4)
1224Dim statementList As ImmutableArray(Of BoundStatement) = Nothing 1226Dim statements(1) As BoundStatement 1227Dim boundStatement As BoundStatement = New BoundExpressionStatement(syntaxNode, boundInvocationExpression) 1269Dim returnstmt As BoundStatement = New BoundReturnStatement(syntaxNode,
Binding\Binder_Initializers.vb (6)
29Private _loweredInitializers As ImmutableArray(Of BoundStatement) 30Friend Property InitializerStatements As ImmutableArray(Of BoundStatement) 34Set(value As ImmutableArray(Of BoundStatement)) 46Me._loweredInitializers = ImmutableArray(Of BoundStatement).Empty 65StaticCast(Of BoundStatement).From(Me.BoundInitializers)) 209Dim boundStatement As BoundStatement = Me.BindStatement(statementNode, diagnostics)
Binding\Binder_Lambda.vb (2)
469ImmutableArray.Create(Of BoundStatement)(boundReturn), 512Dim statements = ArrayBuilder(Of BoundStatement).GetInstance
Binding\Binder_SelectCase.vb (1)
20Private Function BindSelectBlock(node As SelectBlockSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement
Binding\Binder_Statements.vb (37)
22Public Overridable Function BindStatement(node As StatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 292Dim statements As ArrayBuilder(Of BoundStatement) = ArrayBuilder(Of BoundStatement).GetInstance 435Private _enclosingSyncLockOrUsing As BoundStatement 438Private ReadOnly _tryOnErrorResume As New ArrayBuilder(Of BoundStatement) 671Private Function BindRedimStatement(node As ReDimStatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 764Private Function BindEraseStatement(node As EraseStatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 797Private Function BindGoToStatement(node As GoToStatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 895Private Function BindLabelStatement(node As LabelStatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 982Private Function BindLocalDeclaration(node As LocalDeclarationStatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 2051Dim boundStatements(stmtList.Count - 1) As BoundStatement 2055Dim boundStatement As BoundStatement = stmtListBinder.BindStatement(stmtList(i), diagnostics) 2430Private Function BindRaiseEventStatement(node As RaiseEventStatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 2579Private Function BindExpressionStatement(statement As ExpressionStatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 2675Private Function BindPrintStatement(printStmt As PrintStatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 2680Private Function BindCallStatement(callStmt As CallStatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 2728Private Function BindSingleLineIfStatement(node As SingleLineIfStatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 2733Dim alternative As BoundStatement = Nothing 2744Private Function BindMultiLineIfBlock(node As MultiLineIfBlockSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 2750Dim blocks As ArrayBuilder(Of BoundStatement) = ArrayBuilder(Of BoundStatement).GetInstance() 2762Dim currentAlternative As BoundStatement = Nothing 2785Private Function BindDoLoop(node As DoLoopBlockSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 2820Private Function BindWhileBlock(node As WhileBlockSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 2838Public Function BindForToBlock(node As ForOrForEachBlockSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 2868Public Function BindForEachBlock(node As ForOrForEachBlockSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 4377Public Function BindWithBlock(node As WithBlockSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 4382Protected Overridable Function CreateBoundWithBlock(node As WithBlockSyntax, boundBlockBinder As Binder, diagnostics As BindingDiagnosticBag) As BoundStatement 4406Public Function BindUsingBlock(node As UsingBlockSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 4872Private Function BindExitStatement(node As ExitStatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 4898Private Function BindContinueStatement(node As ContinueStatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 4963Private Function BindReturn(originalSyntax As ReturnStatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 5104Private Function BindYield(originalSyntax As YieldStatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 5140Private Function BindThrow(node As ThrowStatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 5203Private Function BindError(node As ErrorStatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 5286Private Function BindStopStatement(stopStatementSyntax As StopOrEndStatementSyntax) As BoundStatement 5290Private Function BindEndStatement(endStatementSyntax As StopOrEndStatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement
Binding\Binder_WithBlock.vb (2)
294Protected Overrides Function CreateBoundWithBlock(node As WithBlockSyntax, boundBlockBinder As Binder, diagnostics As BindingDiagnosticBag) As BoundStatement 327Public Overrides Function BindStatement(node As StatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement
Binding\MemberSemanticModel.vb (3)
2059Public Overrides Function BindStatement(node As StatementSyntax, diagnostics As BindingDiagnosticBag) As BoundStatement 2066Debug.Assert((TypeOf boundStmt Is BoundStatement)) 2070Return DirectCast(boundNodes.First, BoundStatement)
Binding\SyntheticBoundTrees\AnonymousTypeSyntheticMethods.vb (5)
25Dim statements = ArrayBuilder(Of BoundStatement).GetInstance() 79ImmutableArray.Create(Of BoundStatement)( 178ImmutableArray.Create(Of BoundStatement)( 225ImmutableArray.Create(Of BoundStatement)( 385ImmutableArray.Create(Of BoundStatement)(
Binding\SyntheticBoundTrees\SynthesizedConstructorSymbol.vb (1)
19Return New BoundBlock(Me.Syntax, Nothing, ImmutableArray(Of LocalSymbol).Empty, ImmutableArray.Create(Of BoundStatement)(returnStmt))
Binding\SyntheticBoundTrees\SynthesizedPropertyAccessorBase.vb (5)
27Return (New BoundBlock(syntax, Nothing, ImmutableArray(Of LocalSymbol).Empty, ImmutableArray(Of BoundStatement).Empty, hasErrors:=True)).MakeCompilerGenerated() 68Dim statements As ArrayBuilder(Of BoundStatement) = ArrayBuilder(Of BoundStatement).GetInstance 229Dim eventRemovals = ArrayBuilder(Of BoundStatement).GetInstance 310Dim eventAdds = ArrayBuilder(Of BoundStatement).GetInstance
CodeGen\CodeGenerator.vb (2)
17Private ReadOnly _block As BoundStatement 47boundBody As BoundStatement,
CodeGen\EmitStatement.vb (2)
17Private Sub EmitStatement(statement As BoundStatement) 83Private Function EmitStatementAndCountInstructions(statement As BoundStatement) As Integer
CodeGen\Optimizer\Optimizer.vb (2)
22src As BoundStatement, 24<Out> ByRef stackLocals As HashSet(Of LocalSymbol)) As BoundStatement
CodeGen\Optimizer\StackScheduler.Rewriter.vb (3)
36Public Shared Function Rewrite(src As BoundStatement, info As Dictionary(Of LocalSymbol, LocalDefUseInfo)) As BoundStatement 38Return DirectCast(scheduler.Visit(src), BoundStatement)
CodeGen\Optimizer\StackScheduler.vb (3)
17src As BoundStatement, 19<Out> ByRef stackLocals As HashSet(Of LocalSymbol)) As BoundStatement 22src = DirectCast(Analyzer.Analyze(container, src, debugFriendly, locals), BoundStatement)
CodeGen\ResumableStateMachineStateAllocator.vb (1)
74Public Function GenerateThrowMissingStateDispatch(f As SyntheticBoundNodeFactory, cachedState As BoundExpression, message As String) As BoundStatement
Compilation\MethodCompiler.vb (4)
1507ImmutableArray(Of BoundStatement).Empty) 1524Dim boundStatements = ArrayBuilder(Of BoundStatement).GetInstance() 1563block As BoundStatement, 1789Dim theFirstStatement As BoundStatement = body.Statements(0)
Compilation\TypeCompilationState.vb (4)
29Public ReadOnly Body As BoundStatement 34body As BoundStatement, 102body As BoundStatement, 116Public Sub AddMethodWrapper(method As MethodSymbol, wrapper As MethodSymbol, body As BoundStatement)
Emit\SynthesizedPrivateImplementationDetailsSharedConstructor.vb (2)
66Dim body As ArrayBuilder(Of BoundStatement) = ArrayBuilder(Of BoundStatement).GetInstance()
Generated\BoundNodes.xml.Generated.vb (74)
2498Public Sub New(syntax As SyntaxNode, statementOpt As BoundStatement, Optional hasErrors As Boolean = False) 2504Private ReadOnly _StatementOpt As BoundStatement 2505Public ReadOnly Property StatementOpt As BoundStatement 2516Public Function Update(statementOpt As BoundStatement) As BoundSequencePoint 2563Public Sub New(syntax As SyntaxNode, statementOpt As BoundStatement, span As TextSpan, Optional hasErrors As Boolean = False) 2570Private ReadOnly _StatementOpt As BoundStatement 2571Public ReadOnly Property StatementOpt As BoundStatement 2589Public Function Update(statementOpt As BoundStatement, span As TextSpan) As BoundSequencePointWithSpan 4332Public Sub New(syntax As SyntaxNode, statementListSyntax As SyntaxList(Of StatementSyntax), locals As ImmutableArray(Of LocalSymbol), statements As ImmutableArray(Of BoundStatement), Optional hasErrors As Boolean = False) 4358Private ReadOnly _Statements As ImmutableArray(Of BoundStatement) 4359Public ReadOnly Property Statements As ImmutableArray(Of BoundStatement) 4370Public Function Update(statementListSyntax As SyntaxList(Of StatementSyntax), locals As ImmutableArray(Of LocalSymbol), statements As ImmutableArray(Of BoundStatement)) As BoundBlock 4383Public Sub New(syntax As SyntaxNode, fields As ImmutableArray(Of FieldSymbol), statement As BoundStatement, Optional hasErrors As Boolean = False) 4401Private ReadOnly _Statement As BoundStatement 4402Public ReadOnly Property Statement As BoundStatement 4413Public Function Update(fields As ImmutableArray(Of FieldSymbol), statement As BoundStatement) As BoundStateMachineScope 4771Public Sub New(syntax As SyntaxNode, statement As BoundStatement, Optional hasErrors As Boolean = False) 4780Private ReadOnly _Statement As BoundStatement 4781Public ReadOnly Property Statement As BoundStatement 4792Public Function Update(statement As BoundStatement) As BoundGlobalStatementInitializer 4896Public Sub New(syntax As SyntaxNode, condition As BoundExpression, consequence As BoundStatement, alternativeOpt As BoundStatement, Optional hasErrors As Boolean = False) 4915Private ReadOnly _Consequence As BoundStatement 4916Public ReadOnly Property Consequence As BoundStatement 4922Private ReadOnly _AlternativeOpt As BoundStatement 4923Public ReadOnly Property AlternativeOpt As BoundStatement 4934Public Function Update(condition As BoundExpression, consequence As BoundStatement, alternativeOpt As BoundStatement) As BoundIfStatement 5301Public Sub New(syntax As SyntaxNode, topConditionOpt As BoundExpression, bottomConditionOpt As BoundExpression, topConditionIsUntil As Boolean, bottomConditionIsUntil As Boolean, body As BoundStatement, continueLabel As LabelSymbol, exitLabel As LabelSymbol, Optional hasErrors As Boolean = False) 5344Private ReadOnly _Body As BoundStatement 5345Public ReadOnly Property Body As BoundStatement 5356Public Function Update(topConditionOpt As BoundExpression, bottomConditionOpt As BoundExpression, topConditionIsUntil As Boolean, bottomConditionIsUntil As Boolean, body As BoundStatement, continueLabel As LabelSymbol, exitLabel As LabelSymbol) As BoundDoLoopStatement 5369Public Sub New(syntax As SyntaxNode, condition As BoundExpression, body As BoundStatement, continueLabel As LabelSymbol, exitLabel As LabelSymbol, Optional hasErrors As Boolean = False) 5389Private ReadOnly _Body As BoundStatement 5390Public ReadOnly Property Body As BoundStatement 5401Public Function Update(condition As BoundExpression, body As BoundStatement, continueLabel As LabelSymbol, exitLabel As LabelSymbol) As BoundWhileStatement 5414Protected Sub New(kind As BoundKind, syntax as SyntaxNode, declaredOrInferredLocalOpt As LocalSymbol, controlVariable As BoundExpression, body As BoundStatement, nextVariablesOpt As ImmutableArray(Of BoundExpression), continueLabel As LabelSymbol, exitLabel As LabelSymbol, Optional hasErrors As Boolean = False) 5443Private ReadOnly _Body As BoundStatement 5444Public ReadOnly Property Body As BoundStatement 5545Public Sub New(syntax As SyntaxNode, initialValue As BoundExpression, limitValue As BoundExpression, stepValue As BoundExpression, checked As Boolean, operatorsOpt As BoundForToUserDefinedOperators, declaredOrInferredLocalOpt As LocalSymbol, controlVariable As BoundExpression, body As BoundStatement, nextVariablesOpt As ImmutableArray(Of BoundExpression), continueLabel As LabelSymbol, exitLabel As LabelSymbol, Optional hasErrors As Boolean = False) 5604Public Function Update(initialValue As BoundExpression, limitValue As BoundExpression, stepValue As BoundExpression, checked As Boolean, operatorsOpt As BoundForToUserDefinedOperators, declaredOrInferredLocalOpt As LocalSymbol, controlVariable As BoundExpression, body As BoundStatement, nextVariablesOpt As ImmutableArray(Of BoundExpression), continueLabel As LabelSymbol, exitLabel As LabelSymbol) As BoundForToStatement 5617Public Sub New(syntax As SyntaxNode, collection As BoundExpression, enumeratorInfo As ForEachEnumeratorInfo, declaredOrInferredLocalOpt As LocalSymbol, controlVariable As BoundExpression, body As BoundStatement, nextVariablesOpt As ImmutableArray(Of BoundExpression), continueLabel As LabelSymbol, exitLabel As LabelSymbol, Optional hasErrors As Boolean = False) 5651Public Function Update(collection As BoundExpression, enumeratorInfo As ForEachEnumeratorInfo, declaredOrInferredLocalOpt As LocalSymbol, controlVariable As BoundExpression, body As BoundStatement, nextVariablesOpt As ImmutableArray(Of BoundExpression), continueLabel As LabelSymbol, exitLabel As LabelSymbol) As BoundForEachStatement 6623Public Sub New(syntax As SyntaxNode, statements As ImmutableArray(Of BoundStatement), Optional hasErrors As Boolean = False) 6632Private ReadOnly _Statements As ImmutableArray(Of BoundStatement) 6633Public ReadOnly Property Statements As ImmutableArray(Of BoundStatement) 6644Public Function Update(statements As ImmutableArray(Of BoundStatement)) As BoundStatementList 8729Public Sub New(syntax As SyntaxNode, locals As ImmutableArray(Of LocalSymbol), spillFields As ImmutableArray(Of FieldSymbol), statements As ImmutableArray(Of BoundStatement), valueOpt As BoundExpression, type As TypeSymbol, Optional hasErrors As Boolean = False) 8762Private ReadOnly _Statements As ImmutableArray(Of BoundStatement) 8763Public ReadOnly Property Statements As ImmutableArray(Of BoundStatement) 8781Public Function Update(locals As ImmutableArray(Of LocalSymbol), spillFields As ImmutableArray(Of FieldSymbol), statements As ImmutableArray(Of BoundStatement), valueOpt As BoundExpression, type As TypeSymbol) As BoundSpillSequence 12291Dim statementOpt As BoundStatement = DirectCast(Me.Visit(node.StatementOpt), BoundStatement) 12302Dim statementOpt As BoundStatement = DirectCast(Me.Visit(node.StatementOpt), BoundStatement) 12507Dim statements As ImmutableArray(Of BoundStatement) = Me.VisitList(node.Statements) 12512Dim statement As BoundStatement = DirectCast(Me.Visit(node.Statement), BoundStatement) 12556Dim statement As BoundStatement = DirectCast(Me.Visit(node.Statement), BoundStatement) 12574Dim consequence As BoundStatement = DirectCast(Me.Visit(node.Consequence), BoundStatement) 12575Dim alternativeOpt As BoundStatement = DirectCast(Me.Visit(node.AlternativeOpt), BoundStatement) 12621Dim body As BoundStatement = DirectCast(Me.Visit(node.Body), BoundStatement) 12627Dim body As BoundStatement = DirectCast(Me.Visit(node.Body), BoundStatement) 12647Dim body As BoundStatement = DirectCast(Me.Visit(node.Body), BoundStatement) 12655Dim body As BoundStatement = DirectCast(Me.Visit(node.Body), BoundStatement) 12769Dim statements As ImmutableArray(Of BoundStatement) = Me.VisitList(node.Statements) 13029Dim statements As ImmutableArray(Of BoundStatement) = Me.VisitList(node.Statements)
Lowering\AsyncRewriter\AsyncRewriter.AsyncMethodToClassRewriter.Await.vb (6)
65Dim awaitForIncompleteTask As BoundStatement = Me.GenerateAwaitForIncompleteTask(awaiterTemp) 124Dim blockBuilder = ArrayBuilder(Of BoundStatement).GetInstance() 170Dim asCriticalNotifyCompletionAssignment As BoundStatement = 176Dim awaitUnsafeOnCompletedCall As BoundStatement = 187Dim asNotifyCompletionAssignment As BoundStatement = 193Dim awaitOnCompletedCall As BoundStatement =
Lowering\AsyncRewriter\AsyncRewriter.AsyncMethodToClassRewriter.Expressions.vb (4)
31Dim statements As ImmutableArray(Of BoundStatement) = Me.VisitList(node.Statements) 82Private Function MakeExpressionStatement(expression As BoundExpression, ByRef builder As SpillBuilder) As BoundStatement 457Private Function MakeAssignmentStatement(expression As BoundExpression, temp As LocalSymbol, <[In], Out> ByRef builder As SpillBuilder) As BoundStatement 468Private Function MakeAssignmentStatement(expression As BoundExpression, temp As LocalSymbol) As BoundStatement
Lowering\AsyncRewriter\AsyncRewriter.AsyncMethodToClassRewriter.Spilling.vb (4)
388Dim initialization As BoundStatement = Me.F.Assignment(Me.F.Field(Me.F.Me(), spillField, True), expr) 404Return RewriteSpillSequenceIntoBlock(spill, addValueAsExpression, Array.Empty(Of BoundStatement)) 409ParamArray additional() As BoundStatement) As BoundBlock 411Dim newStatements = ArrayBuilder(Of BoundStatement).GetInstance()
Lowering\AsyncRewriter\AsyncRewriter.AsyncMethodToClassRewriter.vb (6)
127Friend Sub GenerateMoveNext(body As BoundStatement, moveNextMethod As MethodSymbol) 130Dim rewrittenBody As BoundStatement = DirectCast(Visit(body), BoundStatement) 135Dim bodyBuilder = ArrayBuilder(Of BoundStatement).GetInstance() 219Dim newStatements As ImmutableArray(Of BoundStatement) = bodyBuilder.ToImmutableAndFree() 239Protected Overrides Function GenerateReturn(finished As Boolean) As BoundStatement
Lowering\AsyncRewriter\AsyncRewriter.SpillBuilder.vb (4)
18Private _statements As ArrayBuilder(Of BoundStatement) 42If(Me._statements Is Nothing, ImmutableArray(Of BoundStatement).Empty, Me._statements.ToImmutableAndFree()), 71Friend Sub AddFieldWithInitialization(field As FieldSymbol, init As BoundStatement) 87Friend Sub AddStatement(statement As BoundStatement)
Lowering\AsyncRewriter\AsyncRewriter.vb (6)
28Public Sub New(body As BoundStatement, 140Protected Overrides Sub InitializeStateMachine(bodyBuilder As ArrayBuilder(Of BoundStatement), frameType As NamedTypeSymbol, stateMachineLocal As LocalSymbol) 207Protected Overrides Function GenerateStateMachineCreation(stateMachineVariable As LocalSymbol, frameType As NamedTypeSymbol) As BoundStatement 208Dim bodyBuilder = ArrayBuilder(Of BoundStatement).GetInstance() 270Friend Overrides Function RewriteBodyIfNeeded(body As BoundStatement, topMethod As MethodSymbol, currentMethod As MethodSymbol) As BoundStatement
Lowering\Instrumentation\CodeCoverageInstrumenter.vb (69)
23Private ReadOnly _methodBody As BoundStatement 28Private ReadOnly _methodEntryInstrumentation As BoundStatement 37methodBody As BoundStatement, 105methodBody As BoundStatement, 234Public Overrides Function CreateBlockPrologue(trueOriginal As BoundBlock, original As BoundBlock, ByRef synthesizedLocal As LocalSymbol) As BoundStatement 235Dim previousPrologue As BoundStatement = MyBase.CreateBlockPrologue(trueOriginal, original, synthesizedLocal) 252Dim payloadInitialization As BoundStatement = 269Dim createPayloadCall As BoundStatement = 289Dim payloadIf As BoundStatement = _methodBodyFactory.If(payloadNullTest, createPayloadCall) 294Dim prologueStatements As ArrayBuilder(Of BoundStatement) = ArrayBuilder(Of BoundStatement).GetInstance(If(previousPrologue Is Nothing, 3, 4)) 310Public Overrides Function InstrumentExpressionStatement(original As BoundExpressionStatement, rewritten As BoundStatement) As BoundStatement 314Public Overrides Function InstrumentStopStatement(original As BoundStopStatement, rewritten As BoundStatement) As BoundStatement 318Public Overrides Function InstrumentEndStatement(original As BoundEndStatement, rewritten As BoundStatement) As BoundStatement 322Public Overrides Function InstrumentContinueStatement(original As BoundContinueStatement, rewritten As BoundStatement) As BoundStatement 326Public Overrides Function InstrumentExitStatement(original As BoundExitStatement, rewritten As BoundStatement) As BoundStatement 330Public Overrides Function InstrumentGotoStatement(original As BoundGotoStatement, rewritten As BoundStatement) As BoundStatement 334Public Overrides Function InstrumentRaiseEventStatement(original As BoundRaiseEventStatement, rewritten As BoundStatement) As BoundStatement 338Public Overrides Function InstrumentReturnStatement(original As BoundReturnStatement, rewritten As BoundStatement) As BoundStatement 339Dim previous As BoundStatement = MyBase.InstrumentReturnStatement(original, rewritten) 352Public Overrides Function InstrumentThrowStatement(original As BoundThrowStatement, rewritten As BoundStatement) As BoundStatement 356Public Overrides Function InstrumentOnErrorStatement(original As BoundOnErrorStatement, rewritten As BoundStatement) As BoundStatement 360Public Overrides Function InstrumentResumeStatement(original As BoundResumeStatement, rewritten As BoundStatement) As BoundStatement 364Public Overrides Function InstrumentAddHandlerStatement(original As BoundAddHandlerStatement, rewritten As BoundStatement) As BoundStatement 368Public Overrides Function InstrumentRemoveHandlerStatement(original As BoundRemoveHandlerStatement, rewritten As BoundStatement) As BoundStatement 372Public Overrides Function InstrumentSyncLockObjectCapture(original As BoundSyncLockStatement, rewritten As BoundStatement) As BoundStatement 376Public Overrides Function InstrumentWhileStatementConditionalGotoStart(original As BoundWhileStatement, ifConditionGotoStart As BoundStatement) As BoundStatement 380Public Overrides Function InstrumentDoLoopStatementEntryOrConditionalGotoStart(original As BoundDoLoopStatement, ifConditionGotoStartOpt As BoundStatement) As BoundStatement 381Dim previous As BoundStatement = MyBase.InstrumentDoLoopStatementEntryOrConditionalGotoStart(original, ifConditionGotoStartOpt) 388Public Overrides Function InstrumentIfStatementConditionalGoto(original As BoundIfStatement, condGoto As BoundStatement) As BoundStatement 392Public Overrides Function CreateSelectStatementPrologue(original As BoundSelectStatement) As BoundStatement 396Public Overrides Function InstrumentFieldOrPropertyInitializer(original As BoundFieldOrPropertyInitializer, rewritten As BoundStatement, symbolIndex As Integer, createTemporary As Boolean) As BoundStatement 400Public Overrides Function InstrumentForEachLoopInitialization(original As BoundForEachStatement, initialization As BoundStatement) As BoundStatement 404Public Overrides Function InstrumentForLoopInitialization(original As BoundForToStatement, initialization As BoundStatement) As BoundStatement 408Public Overrides Function InstrumentLocalInitialization(original As BoundLocalDeclaration, rewritten As BoundStatement) As BoundStatement 412Public Overrides Function CreateUsingStatementPrologue(original As BoundUsingStatement) As BoundStatement 416Public Overrides Function CreateWithStatementPrologue(original As BoundWithStatement) As BoundStatement 420Private Function AddDynamicAnalysis(original As BoundStatement, rewritten As BoundStatement) As BoundStatement 428Private Function CollectDynamicAnalysis(original As BoundStatement, rewritten As BoundStatement) As BoundStatement 431Dim analysisPoint As BoundStatement = AddAnalysisPoint(SyntaxForSpan(original), statementFactory) 449Private Function AddAnalysisPoint(syntaxForSpan As SyntaxNode, alternateSpan As Text.TextSpan, statementFactory As SyntheticBoundNodeFactory) As BoundStatement 453Private Function AddAnalysisPoint(syntaxForSpan As SyntaxNode, statementFactory As SyntheticBoundNodeFactory) As BoundStatement 457Private Function AddAnalysisPoint(syntaxForSpan As SyntaxNode, span As FileLinePositionSpan, statementFactory As SyntheticBoundNodeFactory) As BoundStatement 477Private Shared Function SyntaxForSpan(statement As BoundStatement) As SyntaxNode
Lowering\Instrumentation\CompoundInstrumenter.vb (84)
31Public Overrides Function InstrumentExpressionStatement(original As BoundExpressionStatement, rewritten As BoundStatement) As BoundStatement 35Public Overrides Function InstrumentStopStatement(original As BoundStopStatement, rewritten As BoundStatement) As BoundStatement 39Public Overrides Function InstrumentEndStatement(original As BoundEndStatement, rewritten As BoundStatement) As BoundStatement 43Public Overrides Function InstrumentContinueStatement(original As BoundContinueStatement, rewritten As BoundStatement) As BoundStatement 47Public Overrides Function InstrumentExitStatement(original As BoundExitStatement, rewritten As BoundStatement) As BoundStatement 51Public Overrides Function InstrumentGotoStatement(original As BoundGotoStatement, rewritten As BoundStatement) As BoundStatement 55Public Overrides Function InstrumentLabelStatement(original As BoundLabelStatement, rewritten As BoundStatement) As BoundStatement 59Public Overrides Function InstrumentRaiseEventStatement(original As BoundRaiseEventStatement, rewritten As BoundStatement) As BoundStatement 63Public Overrides Function InstrumentReturnStatement(original As BoundReturnStatement, rewritten As BoundStatement) As BoundStatement 67Public Overrides Function InstrumentThrowStatement(original As BoundThrowStatement, rewritten As BoundStatement) As BoundStatement 71Public Overrides Function InstrumentOnErrorStatement(original As BoundOnErrorStatement, rewritten As BoundStatement) As BoundStatement 75Public Overrides Function InstrumentResumeStatement(original As BoundResumeStatement, rewritten As BoundStatement) As BoundStatement 79Public Overrides Function InstrumentAddHandlerStatement(original As BoundAddHandlerStatement, rewritten As BoundStatement) As BoundStatement 83Public Overrides Function InstrumentRemoveHandlerStatement(original As BoundRemoveHandlerStatement, rewritten As BoundStatement) As BoundStatement 87Public Overrides Function CreateBlockPrologue(trueOriginal As BoundBlock, original As BoundBlock, ByRef synthesizedLocal As LocalSymbol) As BoundStatement 95Public Overrides Function InstrumentQueryLambdaBody(original As BoundQueryLambda, rewritten As BoundStatement) As BoundStatement 99Public Overrides Function InstrumentDoLoopEpilogue(original As BoundDoLoopStatement, epilogueOpt As BoundStatement) As BoundStatement 103Public Overrides Function CreateSyncLockStatementPrologue(original As BoundSyncLockStatement) As BoundStatement 107Public Overrides Function InstrumentSyncLockObjectCapture(original As BoundSyncLockStatement, rewritten As BoundStatement) As BoundStatement 111Public Overrides Function CreateSyncLockExitDueToExceptionEpilogue(original As BoundSyncLockStatement) As BoundStatement 115Public Overrides Function CreateSyncLockExitNormallyEpilogue(original As BoundSyncLockStatement) As BoundStatement 119Public Overrides Function InstrumentWhileEpilogue(original As BoundWhileStatement, epilogueOpt As BoundStatement) As BoundStatement 123Public Overrides Function InstrumentWhileStatementConditionalGotoStart(original As BoundWhileStatement, ifConditionGotoStart As BoundStatement) As BoundStatement 127Public Overrides Function InstrumentDoLoopStatementEntryOrConditionalGotoStart(original As BoundDoLoopStatement, ifConditionGotoStartOpt As BoundStatement) As BoundStatement 131Public Overrides Function InstrumentForEachStatementConditionalGotoStart(original As BoundForEachStatement, ifConditionGotoStart As BoundStatement) As BoundStatement 135Public Overrides Function InstrumentIfStatementConditionalGoto(original As BoundIfStatement, condGoto As BoundStatement) As BoundStatement 139Public Overrides Function InstrumentIfStatementAfterIfStatement(original As BoundIfStatement, afterIfStatement As BoundStatement) As BoundStatement 143Public Overrides Function InstrumentIfStatementConsequenceEpilogue(original As BoundIfStatement, epilogueOpt As BoundStatement) As BoundStatement 147Public Overrides Function InstrumentIfStatementAlternativeEpilogue(original As BoundIfStatement, epilogueOpt As BoundStatement) As BoundStatement 151Public Overrides Function CreateIfStatementAlternativePrologue(original As BoundIfStatement) As BoundStatement 183Public Overrides Function CreateCatchBlockPrologue(original As BoundCatchBlock) As BoundStatement 187Public Overrides Function CreateFinallyBlockPrologue(original As BoundTryStatement) As BoundStatement 191Public Overrides Function CreateTryBlockPrologue(original As BoundTryStatement) As BoundStatement 195Public Overrides Function InstrumentTryStatement(original As BoundTryStatement, rewritten As BoundStatement) As BoundStatement 199Public Overrides Function CreateSelectStatementPrologue(original As BoundSelectStatement) As BoundStatement 207Public Overrides Function InstrumentCaseBlockConditionalGoto(original As BoundCaseBlock, condGoto As BoundStatement) As BoundStatement 211Public Overrides Function InstrumentCaseElseBlock(original As BoundCaseBlock, rewritten As BoundBlock) As BoundStatement 215Public Overrides Function InstrumentSelectStatementEpilogue(original As BoundSelectStatement, epilogueOpt As BoundStatement) As BoundStatement 219Public Overrides Function InstrumentFieldOrPropertyInitializer(original As BoundFieldOrPropertyInitializer, rewritten As BoundStatement, symbolIndex As Integer, createTemporary As Boolean) As BoundStatement 223Public Overrides Function InstrumentForEachLoopInitialization(original As BoundForEachStatement, initialization As BoundStatement) As BoundStatement 227Public Overrides Function InstrumentForEachLoopEpilogue(original As BoundForEachStatement, epilogueOpt As BoundStatement) As BoundStatement 231Public Overrides Function InstrumentForLoopInitialization(original As BoundForToStatement, initialization As BoundStatement) As BoundStatement 235Public Overrides Function InstrumentForLoopIncrement(original As BoundForToStatement, increment As BoundStatement) As BoundStatement 239Public Overrides Function InstrumentLocalInitialization(original As BoundLocalDeclaration, rewritten As BoundStatement) As BoundStatement 243Public Overrides Function CreateUsingStatementPrologue(original As BoundUsingStatement) As BoundStatement 247Public Overrides Function InstrumentUsingStatementResourceCapture(original As BoundUsingStatement, resourceIndex As Integer, rewritten As BoundStatement) As BoundStatement 251Public Overrides Function CreateUsingStatementDisposePrologue(original As BoundUsingStatement) As BoundStatement 255Public Overrides Function CreateWithStatementPrologue(original As BoundWithStatement) As BoundStatement 259Public Overrides Function CreateWithStatementEpilogue(original As BoundWithStatement) As BoundStatement
Lowering\Instrumentation\DebugInfoInjector.vb (88)
32Private Shared Function MarkStatementWithSequencePoint(original As BoundStatement, rewritten As BoundStatement) As BoundStatement 36Public Overrides Function InstrumentExpressionStatement(original As BoundExpressionStatement, rewritten As BoundStatement) As BoundStatement 40Public Overrides Function InstrumentStopStatement(original As BoundStopStatement, rewritten As BoundStatement) As BoundStatement 44Public Overrides Function InstrumentEndStatement(original As BoundEndStatement, rewritten As BoundStatement) As BoundStatement 48Public Overrides Function InstrumentContinueStatement(original As BoundContinueStatement, rewritten As BoundStatement) As BoundStatement 52Public Overrides Function InstrumentExitStatement(original As BoundExitStatement, rewritten As BoundStatement) As BoundStatement 56Public Overrides Function InstrumentGotoStatement(original As BoundGotoStatement, rewritten As BoundStatement) As BoundStatement 60Public Overrides Function InstrumentLabelStatement(original As BoundLabelStatement, rewritten As BoundStatement) As BoundStatement 64Public Overrides Function InstrumentRaiseEventStatement(original As BoundRaiseEventStatement, rewritten As BoundStatement) As BoundStatement 68Public Overrides Function InstrumentReturnStatement(original As BoundReturnStatement, rewritten As BoundStatement) As BoundStatement 72Public Overrides Function InstrumentThrowStatement(original As BoundThrowStatement, rewritten As BoundStatement) As BoundStatement 76Public Overrides Function InstrumentOnErrorStatement(original As BoundOnErrorStatement, rewritten As BoundStatement) As BoundStatement 80Public Overrides Function InstrumentResumeStatement(original As BoundResumeStatement, rewritten As BoundStatement) As BoundStatement 84Public Overrides Function InstrumentAddHandlerStatement(original As BoundAddHandlerStatement, rewritten As BoundStatement) As BoundStatement 88Public Overrides Function InstrumentRemoveHandlerStatement(original As BoundRemoveHandlerStatement, rewritten As BoundStatement) As BoundStatement 92Public Overrides Function CreateBlockPrologue(trueOriginal As BoundBlock, original As BoundBlock, ByRef synthesizedLocal As LocalSymbol) As BoundStatement 101Public Overrides Function InstrumentQueryLambdaBody(original As BoundQueryLambda, rewritten As BoundStatement) As BoundStatement 148Public Overrides Function InstrumentDoLoopEpilogue(original As BoundDoLoopStatement, epilogueOpt As BoundStatement) As BoundStatement 157Public Overrides Function CreateSyncLockStatementPrologue(original As BoundSyncLockStatement) As BoundStatement 163Public Overrides Function InstrumentSyncLockObjectCapture(original As BoundSyncLockStatement, rewritten As BoundStatement) As BoundStatement 167Public Overrides Function CreateSyncLockExitDueToExceptionEpilogue(original As BoundSyncLockStatement) As BoundStatement 172Public Overrides Function CreateSyncLockExitNormallyEpilogue(original As BoundSyncLockStatement) As BoundStatement 178Public Overrides Function InstrumentWhileEpilogue(original As BoundWhileStatement, epilogueOpt As BoundStatement) As BoundStatement 182Public Overrides Function InstrumentWhileStatementConditionalGotoStart(original As BoundWhileStatement, ifConditionGotoStart As BoundStatement) As BoundStatement 187Public Overrides Function InstrumentDoLoopStatementEntryOrConditionalGotoStart(original As BoundDoLoopStatement, ifConditionGotoStartOpt As BoundStatement) As BoundStatement 192Public Overrides Function InstrumentForEachStatementConditionalGotoStart(original As BoundForEachStatement, ifConditionGotoStart As BoundStatement) As BoundStatement 197Public Overrides Function InstrumentIfStatementConditionalGoto(original As BoundIfStatement, condGoto As BoundStatement) As BoundStatement 215Public Overrides Function InstrumentIfStatementAfterIfStatement(original As BoundIfStatement, afterIfStatement As BoundStatement) As BoundStatement 221Public Overrides Function InstrumentIfStatementConsequenceEpilogue(original As BoundIfStatement, epilogueOpt As BoundStatement) As BoundStatement 238Public Overrides Function InstrumentIfStatementAlternativeEpilogue(original As BoundIfStatement, epilogueOpt As BoundStatement) As BoundStatement 243Public Overrides Function CreateIfStatementAlternativePrologue(original As BoundIfStatement) As BoundStatement 295Public Overrides Function CreateSelectStatementPrologue(original As BoundSelectStatement) As BoundStatement 305Public Overrides Function InstrumentCaseBlockConditionalGoto(original As BoundCaseBlock, condGoto As BoundStatement) As BoundStatement 309Public Overrides Function InstrumentCaseElseBlock(original As BoundCaseBlock, rewritten As BoundBlock) As BoundStatement 313Public Overrides Function InstrumentSelectStatementEpilogue(original As BoundSelectStatement, epilogueOpt As BoundStatement) As BoundStatement 318Public Overrides Function CreateCatchBlockPrologue(original As BoundCatchBlock) As BoundStatement 322Public Overrides Function CreateFinallyBlockPrologue(original As BoundTryStatement) As BoundStatement 326Public Overrides Function CreateTryBlockPrologue(original As BoundTryStatement) As BoundStatement 330Public Overrides Function InstrumentTryStatement(original As BoundTryStatement, rewritten As BoundStatement) As BoundStatement 334ImmutableArray.Create(Of BoundStatement)( 341Public Overrides Function InstrumentFieldOrPropertyInitializer(original As BoundFieldOrPropertyInitializer, rewritten As BoundStatement, symbolIndex As Integer, createTemporary As Boolean) As BoundStatement 351Public Overrides Function InstrumentForEachLoopInitialization(original As BoundForEachStatement, initialization As BoundStatement) As BoundStatement 357Public Overrides Function InstrumentForEachLoopEpilogue(original As BoundForEachStatement, epilogueOpt As BoundStatement) As BoundStatement 368Public Overrides Function InstrumentForLoopInitialization(original As BoundForToStatement, initialization As BoundStatement) As BoundStatement 373Public Overrides Function InstrumentForLoopIncrement(original As BoundForToStatement, increment As BoundStatement) As BoundStatement 384Public Overrides Function InstrumentLocalInitialization(original As BoundLocalDeclaration, rewritten As BoundStatement) As BoundStatement 388Public Overrides Function CreateUsingStatementPrologue(original As BoundUsingStatement) As BoundStatement 394Public Overrides Function InstrumentUsingStatementResourceCapture(original As BoundUsingStatement, resourceIndex As Integer, rewritten As BoundStatement) As BoundStatement 415Public Overrides Function CreateUsingStatementDisposePrologue(original As BoundUsingStatement) As BoundStatement 422Public Overrides Function CreateWithStatementPrologue(original As BoundWithStatement) As BoundStatement 426Public Overrides Function CreateWithStatementEpilogue(original As BoundWithStatement) As BoundStatement
Lowering\Instrumentation\DebugInfoInjector_SequencePoints.vb (8)
18Friend Shared Function AddConditionSequencePoint(condition As BoundExpression, containingStatement As BoundStatement, currentMethodOrLambda As MethodSymbol) As BoundExpression 25containingStatement As BoundStatement, 85Public Overloads Shared Function CreateBlockPrologue(node As BoundBlock, previousPrologue As BoundStatement) As BoundStatement 118Private Shared Function MarkInitializerSequencePoint(rewrittenStatement As BoundStatement, syntax As SyntaxNode, nameIndex As Integer) As BoundStatement 152Private Shared Function MarkInitializerSequencePoint(rewrittenStatement As BoundStatement, syntax As SyntaxNode) As BoundStatement
Lowering\Instrumentation\Instrumenter.vb (87)
33Private Shared Function InstrumentStatement(original As BoundStatement, rewritten As BoundStatement) As BoundStatement 39Public Overridable Function InstrumentExpressionStatement(original As BoundExpressionStatement, rewritten As BoundStatement) As BoundStatement 43Public Overridable Function InstrumentStopStatement(original As BoundStopStatement, rewritten As BoundStatement) As BoundStatement 47Public Overridable Function InstrumentEndStatement(original As BoundEndStatement, rewritten As BoundStatement) As BoundStatement 51Public Overridable Function InstrumentContinueStatement(original As BoundContinueStatement, rewritten As BoundStatement) As BoundStatement 55Public Overridable Function InstrumentExitStatement(original As BoundExitStatement, rewritten As BoundStatement) As BoundStatement 59Public Overridable Function InstrumentGotoStatement(original As BoundGotoStatement, rewritten As BoundStatement) As BoundStatement 63Public Overridable Function InstrumentLabelStatement(original As BoundLabelStatement, rewritten As BoundStatement) As BoundStatement 67Public Overridable Function InstrumentRaiseEventStatement(original As BoundRaiseEventStatement, rewritten As BoundStatement) As BoundStatement 71Public Overridable Function InstrumentReturnStatement(original As BoundReturnStatement, rewritten As BoundStatement) As BoundStatement 80Public Overridable Function InstrumentThrowStatement(original As BoundThrowStatement, rewritten As BoundStatement) As BoundStatement 84Public Overridable Function InstrumentOnErrorStatement(original As BoundOnErrorStatement, rewritten As BoundStatement) As BoundStatement 88Public Overridable Function InstrumentResumeStatement(original As BoundResumeStatement, rewritten As BoundStatement) As BoundStatement 92Public Overridable Function InstrumentAddHandlerStatement(original As BoundAddHandlerStatement, rewritten As BoundStatement) As BoundStatement 96Public Overridable Function InstrumentRemoveHandlerStatement(original As BoundRemoveHandlerStatement, rewritten As BoundStatement) As BoundStatement 103Public Overridable Function CreateBlockPrologue(trueOriginal As BoundBlock, original As BoundBlock, ByRef synthesizedLocal As LocalSymbol) As BoundStatement 113Public Overridable Function InstrumentQueryLambdaBody(original As BoundQueryLambda, rewritten As BoundStatement) As BoundStatement 122Public Overridable Function InstrumentDoLoopEpilogue(original As BoundDoLoopStatement, epilogueOpt As BoundStatement) As BoundStatement 131Public Overridable Function CreateSyncLockStatementPrologue(original As BoundSyncLockStatement) As BoundStatement 137Public Overridable Function InstrumentSyncLockObjectCapture(original As BoundSyncLockStatement, rewritten As BoundStatement) As BoundStatement 146Public Overridable Function CreateSyncLockExitDueToExceptionEpilogue(original As BoundSyncLockStatement) As BoundStatement 155Public Overridable Function CreateSyncLockExitNormallyEpilogue(original As BoundSyncLockStatement) As BoundStatement 164Public Overridable Function InstrumentWhileEpilogue(original As BoundWhileStatement, epilogueOpt As BoundStatement) As BoundStatement 170Public Overridable Function InstrumentWhileStatementConditionalGotoStart(original As BoundWhileStatement, ifConditionGotoStart As BoundStatement) As BoundStatement 179Public Overridable Function InstrumentDoLoopStatementEntryOrConditionalGotoStart(original As BoundDoLoopStatement, ifConditionGotoStartOpt As BoundStatement) As BoundStatement 185Public Overridable Function InstrumentForEachStatementConditionalGotoStart(original As BoundForEachStatement, ifConditionGotoStart As BoundStatement) As BoundStatement 191Public Overridable Function InstrumentIfStatementConditionalGoto(original As BoundIfStatement, condGoto As BoundStatement) As BoundStatement 197Public Overridable Function InstrumentIfStatementAfterIfStatement(original As BoundIfStatement, afterIfStatement As BoundStatement) As BoundStatement 206Public Overridable Function InstrumentIfStatementConsequenceEpilogue(original As BoundIfStatement, epilogueOpt As BoundStatement) As BoundStatement 215Public Overridable Function InstrumentIfStatementAlternativeEpilogue(original As BoundIfStatement, epilogueOpt As BoundStatement) As BoundStatement 225Public Overridable Function CreateIfStatementAlternativePrologue(original As BoundIfStatement) As BoundStatement 274Public Overridable Function CreateCatchBlockPrologue(original As BoundCatchBlock) As BoundStatement 284Public Overridable Function CreateFinallyBlockPrologue(original As BoundTryStatement) As BoundStatement 295Public Overridable Function CreateTryBlockPrologue(original As BoundTryStatement) As BoundStatement 301Public Overridable Function InstrumentTryStatement(original As BoundTryStatement, rewritten As BoundStatement) As BoundStatement 310Public Overridable Function CreateSelectStatementPrologue(original As BoundSelectStatement) As BoundStatement 320Public Overridable Function InstrumentCaseBlockConditionalGoto(original As BoundCaseBlock, condGoto As BoundStatement) As BoundStatement 325Public Overridable Function InstrumentCaseElseBlock(original As BoundCaseBlock, rewritten As BoundBlock) As BoundStatement 334Public Overridable Function InstrumentSelectStatementEpilogue(original As BoundSelectStatement, epilogueOpt As BoundStatement) As BoundStatement 340Public Overridable Function InstrumentFieldOrPropertyInitializer(original As BoundFieldOrPropertyInitializer, rewritten As BoundStatement, symbolIndex As Integer, createTemporary As Boolean) As BoundStatement 348Public Overridable Function InstrumentForEachLoopInitialization(original As BoundForEachStatement, initialization As BoundStatement) As BoundStatement 358Public Overridable Function InstrumentForEachLoopEpilogue(original As BoundForEachStatement, epilogueOpt As BoundStatement) As BoundStatement 364Public Overridable Function InstrumentForLoopInitialization(original As BoundForToStatement, initialization As BoundStatement) As BoundStatement 370Public Overridable Function InstrumentForLoopIncrement(original As BoundForToStatement, increment As BoundStatement) As BoundStatement 376Public Overridable Function InstrumentLocalInitialization(original As BoundLocalDeclaration, rewritten As BoundStatement) As BoundStatement 386Public Overridable Function CreateUsingStatementPrologue(original As BoundUsingStatement) As BoundStatement 392Public Overridable Function InstrumentUsingStatementResourceCapture(original As BoundUsingStatement, resourceIndex As Integer, rewritten As BoundStatement) As BoundStatement 401Public Overridable Function CreateUsingStatementDisposePrologue(original As BoundUsingStatement) As BoundStatement 410Public Overridable Function CreateWithStatementPrologue(original As BoundWithStatement) As BoundStatement 419Public Overridable Function CreateWithStatementEpilogue(original As BoundWithStatement) As BoundStatement
Lowering\IteratorRewriter\IteratorRewriter.IteratorMethodToClassRewriter.vb (4)
53Public Sub GenerateMoveNextAndDispose(Body As BoundStatement, 65Dim newBody = DirectCast(Visit(Body), BoundStatement) 120Private Function HandleReturn() As BoundStatement 137Protected Overrides Function GenerateReturn(finished As Boolean) As BoundStatement
Lowering\IteratorRewriter\IteratorRewriter.vb (6)
22Public Sub New(body As BoundStatement, 187Dim bodyBuilder = ArrayBuilder(Of BoundStatement).GetInstance() 226DirectCast(F.StatementList(), BoundStatement)) 303Dim bodyBuilder = ArrayBuilder(Of BoundStatement).GetInstance() 319Protected Overrides Function GenerateStateMachineCreation(stateMachineVariable As LocalSymbol, frameType As NamedTypeSymbol) As BoundStatement 323Protected Overrides Sub InitializeStateMachine(bodyBuilder As ArrayBuilder(Of BoundStatement), frameType As NamedTypeSymbol, stateMachineLocal As LocalSymbol)
Lowering\LambdaRewriter\LambdaRewriter.vb (5)
409Dim builder = ArrayBuilder(Of BoundStatement).GetInstance 701newLocals As ArrayBuilder(Of LocalSymbol)) As BoundStatement 703Dim newStatements = ArrayBuilder(Of BoundStatement).GetInstance 713Dim replacement = DirectCast(Me.Visit(s), BoundStatement) 1108Dim body = DirectCast(RewriteLambdaAsMethod(synthesizedMethod, node, stateMachineStateDebugInfosBuilder, stateMachineType), BoundStatement)
Lowering\LocalRewriter\LocalRewriter.vb (19)
47Private ReadOnly _unstructuredExceptionHandlingResumableStatements As New Dictionary(Of SyntaxNode, BoundStatement)(ReferenceEqualityComparer.Instance) 194Dim sideEffects(count) As BoundStatement 203sideEffects(count) = DirectCast(node, BoundStatement) 391Private Shared Function Concat(statement As BoundStatement, additionOpt As BoundStatement) As BoundStatement 398Dim consequenceWithEnd(block.Statements.Length) As BoundStatement 406Dim consequenceWithEnd(1) As BoundStatement 414Private Shared Function AppendToBlock(block As BoundBlock, additionOpt As BoundStatement) As BoundBlock 419Dim consequenceWithEnd(block.Statements.Length) As BoundStatement 432Private Shared Function PrependWithPrologue(statement As BoundStatement, prologueOpt As BoundStatement) As BoundStatement 440Private Shared Function PrependWithPrologue(block As BoundBlock, prologueOpt As BoundStatement) As BoundBlock 449ImmutableArray.Create(Of BoundStatement)(prologueOpt, block)) 460Return node.Update(DirectCast(Me.Visit(node.StatementOpt), BoundStatement), node.Span) 471Return node.Update(DirectCast(Me.Visit(node.StatementOpt), BoundStatement)) 836Dim rewritten As BoundStatement = node 869Dim rewritten As BoundStatement = node
Lowering\LocalRewriter\LocalRewriter_AddRemoveHandler.vb (5)
34Private Function RewriteAddRemoveHandler(node As BoundAddRemoveHandlerStatement) As BoundStatement 40Dim result As BoundStatement 81isAddition As Boolean) As BoundStatement 174statements:=ImmutableArray.Create(Of BoundStatement)( 204accessorSymbol As MethodSymbol) As BoundStatement
Lowering\LocalRewriter\LocalRewriter_AsNewLocalDeclarations.vb (1)
16Dim builder = ArrayBuilder(Of BoundStatement).GetInstance()
Lowering\LocalRewriter\LocalRewriter_Block.vb (3)
50Dim builder = ArrayBuilder(Of BoundStatement).GetInstance() 53Dim rewrittenStatement = TryCast(Visit(s), BoundStatement) 60Dim prologue As BoundStatement = _instrumenterOpt.CreateBlockPrologue(original, node, synthesizedLocal)
Lowering\LocalRewriter\LocalRewriter_Continue.vb (1)
15Dim boundGoto As BoundStatement = New BoundGotoStatement(node.Syntax, node.Label, Nothing)
Lowering\LocalRewriter\LocalRewriter_DimStatement.vb (3)
16Dim inits As ArrayBuilder(Of BoundStatement) = Nothing 22inits = ArrayBuilder(Of BoundStatement).GetInstance 24inits.Add(DirectCast(init, BoundStatement))
Lowering\LocalRewriter\LocalRewriter_DoLoop.vb (9)
35Dim conditionResumeTarget As ImmutableArray(Of BoundStatement) = Nothing 42Dim rewrittenBody = DirectCast(Visit(node.Body), BoundStatement) 77Dim start As BoundStatement = New BoundLabelStatement(syntax.DoStatement, startLabel) 83Dim rewrittenBody = DirectCast(Visit(node.Body), BoundStatement) 90Dim conditionResumeTarget As ImmutableArray(Of BoundStatement) = Nothing 116Dim ifConditionGotoStart As BoundStatement = New BoundConditionalGoto( 161Dim start As BoundStatement = New BoundLabelStatement(syntax.DoStatement, startLabel) 167Dim rewrittenBody = DirectCast(Visit(node.Body), BoundStatement) 169Dim loopResumeLabel As BoundStatement = Nothing
Lowering\LocalRewriter\LocalRewriter_Erase.vb (2)
16Dim statements = ArrayBuilder(Of BoundStatement).GetInstance() 20statements.Add(DirectCast(Visit(New BoundExpressionStatement(clause.Syntax, clause)), BoundStatement))
Lowering\LocalRewriter\LocalRewriter_Exit.vb (1)
15Dim boundGoto As BoundStatement = New BoundGotoStatement(node.Syntax, node.Label, Nothing)
Lowering\LocalRewriter\LocalRewriter_ExpressionStatement.vb (1)
21Dim rewritten = DirectCast(MyBase.VisitExpressionStatement(node), BoundStatement)
Lowering\LocalRewriter\LocalRewriter_FieldOrPropertyInitializer.vb (2)
45Dim rewrittenStatements = ArrayBuilder(Of BoundStatement).GetInstance(initializedSymbols.Length) 123Dim rewrittenStatement As BoundStatement
Lowering\LocalRewriter\LocalRewriter_ForEach.vb (24)
23Dim statements = ArrayBuilder(Of BoundStatement).GetInstance() 182statements As ArrayBuilder(Of BoundStatement), 192Dim loopResumeTarget As ImmutableArray(Of BoundStatement) = Nothing 314Dim boundCurrentAssignment As BoundStatement = New BoundAssignmentOperator(syntaxNode, 320boundCurrentAssignment = DirectCast(Visit(boundCurrentAssignment), BoundStatement) 356) As BoundStatement 385) As BoundStatement 398Dim boundIncrementAssignment As BoundStatement = New BoundAssignmentOperator(syntaxNode, 404boundIncrementAssignment = DirectCast(Visit(boundIncrementAssignment), BoundStatement) 427currentAssignment As BoundStatement, 428incrementAssignment As BoundStatement, 432Dim body = DirectCast(Visit(forEachStatement.Body), BoundStatement) 434Dim epilogue As BoundStatement = Nothing 451Dim rewrittenBodyStatements = ImmutableArray.Create(Of BoundStatement)(currentAssignment, 538statements As ArrayBuilder(Of BoundStatement), 556Dim loopResumeTarget As ImmutableArray(Of BoundStatement) = Nothing 606Dim rewrittenBodyStatements = ImmutableArray.Create(Of BoundStatement)(DirectCast(Visit(boundCurrentAssignment), BoundStatement), 607DirectCast(Visit(node.Body), BoundStatement)) 613Dim bodyEpilogue As BoundStatement = New BoundLabelStatement(syntaxNode, node.ContinueLabel) 659ImmutableArray.Create(Of BoundStatement)(boundEnumeratorAssignment, 664ImmutableArray.Create(Of BoundStatement)(disposalStatement)), 714) As BoundStatement 734Dim boundCall As BoundStatement
Lowering\LocalRewriter\LocalRewriter_ForTo.vb (13)
56Dim loopResumeTarget As ImmutableArray(Of BoundStatement) = Nothing 176Dim rewrittenInitializer As BoundStatement = New BoundExpressionStatement( 198Dim rewrittenBody = DirectCast(Visit(forStatement.Body), BoundStatement) 200Dim rewrittenIncrement As BoundStatement = RewriteForLoopIncrement( 218Dim ifConditionGotoStart As BoundStatement = New BoundConditionalGoto( 250Dim gotoPostIncrement As BoundStatement = Nothing 267Dim statements = ArrayBuilder(Of BoundStatement).GetInstance() 282Dim label As BoundStatement = New BoundLabelStatement(blockSyntax, postIncrementLabel) 461Dim ifNotInitObjExit As BoundStatement = New BoundConditionalGoto( 478Dim rewrittenBody = DirectCast(Visit(forStatement.Body), BoundStatement) 516Dim ifConditionGotoStart As BoundStatement = New BoundConditionalGoto( 530Dim label As BoundStatement = New BoundLabelStatement(blockSyntax, forStatement.ContinueLabel) 561operatorsOpt As BoundForToUserDefinedOperators) As BoundStatement
Lowering\LocalRewriter\LocalRewriter_Goto.vb (1)
23Dim rewritten = DirectCast(MyBase.VisitGotoStatement(node), BoundStatement)
Lowering\LocalRewriter\LocalRewriter_If.vb (17)
15Dim unstructuredExceptionHandlingResumeTarget As ImmutableArray(Of BoundStatement) = Nothing 25Dim newConsequence As BoundStatement = DirectCast(Visit(node.Consequence), BoundStatement) 40Dim resumeTarget As BoundStatement = Nothing 66Dim newAlternative As BoundStatement = DirectCast(Visit(node.AlternativeOpt), BoundStatement) 73Dim resumeTarget As BoundStatement = Nothing 100Dim result As BoundStatement = RewriteIfStatement( 114rewrittenConsequence As BoundStatement, 115rewrittenAlternative As BoundStatement, 116instrumentationTargetOpt As BoundStatement, 117Optional unstructuredExceptionHandlingResumeTarget As ImmutableArray(Of BoundStatement) = Nothing 118) As BoundStatement 126Dim afterIfStatement As BoundStatement = New BoundLabelStatement(syntaxNode, afterif) 138Dim condGoto As BoundStatement = New BoundConditionalGoto(syntaxNode, rewrittenCondition, False, afterif) 183Dim condGoto As BoundStatement = New BoundConditionalGoto(syntaxNode, rewrittenCondition, False, alt) 202Return New BoundStatementList(syntaxNode, ImmutableArray.Create(Of BoundStatement)(
Lowering\LocalRewriter\LocalRewriter_Label.vb (2)
17Dim statement = DirectCast(MyBase.VisitLabelStatement(node), BoundStatement) 29Dim trackLineNumber As BoundStatement = New BoundAssignmentOperator(node.Syntax,
Lowering\LocalRewriter\LocalRewriter_LateAddressOf.vb (4)
101Dim statementList As ImmutableArray(Of BoundStatement) = Nothing 108Dim statements(1) As BoundStatement 109Dim boundStatement As BoundStatement = New BoundExpressionStatement(syntaxNode, boundInvocationExpression) 123Dim returnstmt As BoundStatement = New BoundReturnStatement(syntaxNode,
Lowering\LocalRewriter\LocalRewriter_LocalDeclaration.vb (11)
22Dim result As BoundStatement = Nothing 76) As BoundStatement 81Dim result As BoundStatement 170rewrittenInitialization As BoundStatement 171) As BoundStatement 191Dim statements = ArrayBuilder(Of BoundStatement).GetInstance() 261Dim tempLockTakenAssignment As BoundStatement = Nothing 263Dim boundMonitorEnterCall As BoundStatement = GenerateMonitorEnter(syntax, flagAsObject, boundLockTakenLocal, tempLockTakenAssignment) 302Dim statementsInTry As ImmutableArray(Of BoundStatement) 311statementsInTry = ImmutableArray.Create(Of BoundStatement)(conditionalValueInit) 323Dim monitorExit As BoundStatement = GenerateMonitorExit(syntax, flagAsObject, boundLockTakenLocal)
Lowering\LocalRewriter\LocalRewriter_Query.vb (2)
183Optional hasErrors As Boolean = False) As BoundStatement 198Friend Shared Function RewriteQueryLambda(rewrittenBody As BoundStatement, originalNode As BoundQueryLambda) As BoundLambda
Lowering\LocalRewriter\LocalRewriter_RaiseEvent.vb (2)
21Dim result As BoundStatement 91ImmutableArray.Create(Of BoundStatement)(
Lowering\LocalRewriter\LocalRewriter_Redim.vb (2)
28Dim statements = New BoundStatement(node.Clauses.Length - 1) {} 30statements(i) = DirectCast(Me.Visit(node.Clauses(i)), BoundStatement)
Lowering\LocalRewriter\LocalRewriter_Return.vb (3)
37Private Function RewriteReturnStatement(node As BoundReturnStatement) As BoundStatement 71Dim assignment As BoundStatement = New BoundExpressionStatement( 81Dim jump As BoundStatement = New BoundGotoStatement(syntaxNode, node.ExitLabelOpt, Nothing)
Lowering\LocalRewriter\LocalRewriter_SelectCase.vb (8)
71Dim statementBuilder = ArrayBuilder(Of BoundStatement).GetInstance() 76Dim prologue As BoundStatement = _instrumenterOpt.CreateSelectStatementPrologue(node) 141Dim epilogue As BoundStatement = endSelectResumeLabel 199statementBuilder As ArrayBuilder(Of BoundStatement), 259) As BoundStatement 266Dim rewrittenStatement As BoundStatement 272Dim unstructuredExceptionHandlingResumeTarget As ImmutableArray(Of BoundStatement) = Nothing 321<Out()> ByRef unstructuredExceptionHandlingResumeTarget As ImmutableArray(Of BoundStatement)
Lowering\LocalRewriter\LocalRewriter_SyncLock.vb (13)
18Dim statements = ArrayBuilder(Of BoundStatement).GetInstance 67Dim tempLockObjectAssignment As BoundStatement = New BoundAssignmentOperator(syntaxNode, 110Dim tempLockTakenAssignment As BoundStatement = Nothing 111Dim tryStatements As ImmutableArray(Of BoundStatement) 113Dim boundMonitorEnterCallStatement As BoundStatement = GenerateMonitorEnter(node.LockExpression.Syntax, boundLockObjectLocal, boundLockTakenLocal, tempLockTakenAssignment) 119tryStatements = ImmutableArray.Create(Of BoundStatement)(boundMonitorEnterCallStatement, 124tryStatements = ImmutableArray.Create(Of BoundStatement)(DirectCast(Visit(node.Body), BoundBlock)) 133Dim statementInFinally As BoundStatement = GenerateMonitorExit(syntaxNode, boundLockObjectLocal, boundLockTakenLocal) 138ImmutableArray.Create(Of BoundStatement)(statementInFinally)) 169<Out> ByRef boundLockTakenInitialization As BoundStatement 170) As BoundStatement 232) As BoundStatement 233Dim statementInFinally As BoundStatement
Lowering\LocalRewriter\LocalRewriter_Throw.vb (1)
36Dim rewritten As BoundStatement = node.Update(expressionOpt)
Lowering\LocalRewriter\LocalRewriter_Try.vb (5)
22Dim rewritten As BoundStatement = RewriteTryStatement(node.Syntax, rewrittenTryBlock, rewrittenCatchBlocks, rewrittenFinally, node.ExitLabelOpt) 40Private Shared Function HasSideEffects(statement As BoundStatement) As Boolean 73) As BoundStatement 92ImmutableArray.Create(Of BoundStatement)(tryBlock, 98Dim newTry As BoundStatement = New BoundTryStatement(syntaxNode, tryBlock, catchBlocks, finallyBlockOpt, exitLabelOpt)
Lowering\LocalRewriter\LocalRewriter_UnstructuredExceptionHandling.vb (14)
160Dim statements = ArrayBuilder(Of BoundStatement).GetInstance() 270nodeFactory.Block(ImmutableArray.Create(Of BoundStatement)(nodeFactory.Goto(onErrorLabel))), 328Dim statements = ArrayBuilder(Of BoundStatement).GetInstance() 374Dim rewritten As BoundStatement = New BoundStatementList(node.Syntax, statements.ToImmutableAndFree()) 386Dim statements = ArrayBuilder(Of BoundStatement).GetInstance() 440Dim rewritten As BoundStatement = New BoundStatementList(node.Syntax, statements.ToImmutableAndFree()) 457Private Sub AddResumeTargetLabelAndUpdateCurrentStatementTemporary(syntax As SyntaxNode, canThrow As Boolean, statements As ArrayBuilder(Of BoundStatement)) 468Private Function ShouldGenerateUnstructuredExceptionHandlingResumeCode(statement As BoundStatement) As Boolean 598Private Sub RegisterUnstructuredExceptionHandlingResumeTarget(syntax As SyntaxNode, canThrow As Boolean, statements As ArrayBuilder(Of BoundStatement)) 602Private Function RegisterUnstructuredExceptionHandlingResumeTarget(syntax As SyntaxNode, node As BoundStatement, canThrow As Boolean) As BoundStatement 603Dim statements = ArrayBuilder(Of BoundStatement).GetInstance() 613Private Function RegisterUnstructuredExceptionHandlingResumeTarget(syntax As SyntaxNode, canThrow As Boolean) As ImmutableArray(Of BoundStatement) 614Dim statements = ArrayBuilder(Of BoundStatement).GetInstance()
Lowering\LocalRewriter\LocalRewriter_Using.vb (7)
147Dim statements As ImmutableArray(Of BoundStatement) = currentBody.Statements 158Dim prologue As BoundStatement = Nothing 167Return New BoundStatementList(node.UsingInfo.UsingStatementSyntax, ImmutableArray.Create(Of BoundStatement)(prologue, currentBody)) 169Return New BoundStatementList(node.UsingInfo.UsingStatementSyntax, ImmutableArray.Create(Of BoundStatement)(currentBody)) 216Dim boundResourceInitializationAssignment As BoundStatement = New BoundAssignmentOperator(resourceSyntax, 233Dim disposePrologue As BoundStatement = Nothing 242Dim finallyStatements As ImmutableArray(Of BoundStatement)
Lowering\LocalRewriter\LocalRewriter_While.vb (9)
20Dim conditionResumeTarget As ImmutableArray(Of BoundStatement) = Nothing 27Dim rewrittenBody = DirectCast(Visit(node.Body), BoundStatement) 47statement As BoundStatement, 49rewrittenBody As BoundStatement, 54Optional conditionResumeTargetOpt As ImmutableArray(Of BoundStatement) = Nothing, 55Optional afterBodyResumeTargetOpt As BoundStatement = Nothing 91Dim ifConditionGotoStart As BoundStatement = New BoundConditionalGoto( 131Dim gotoContinue As BoundStatement = New BoundGotoStatement(statementSyntax, continueLabel, Nothing) 141Return New BoundStatementList(statementSyntax, ImmutableArray.Create(Of BoundStatement)(
Lowering\LocalRewriter\LocalRewriter_With.vb (2)
66Dim initStatements = ArrayBuilder(Of BoundStatement).GetInstance 89initStatements.Add(DirectCast(Visit(block), BoundStatement))
Lowering\MethodToClassRewriter\MethodToClassRewriter.MyBaseMyClassWrapper.vb (3)
118Dim boundMethodBody As BoundStatement = If(Not wrappedMethod.ReturnType.IsVoidType(), 119DirectCast(New BoundReturnStatement(syntax, boundCall, Nothing, Nothing), BoundStatement), 121ImmutableArray.Create(Of BoundStatement)(
Lowering\MethodToClassRewriter\MethodToClassRewriter.vb (3)
375Dim newStatements = ArrayBuilder(Of BoundStatement).GetInstance 396Dim replacement = DirectCast(Me.Visit(nodeStatements(0)), BoundStatement) 416Dim replacement = DirectCast(Me.Visit(nodeStatements(i)), BoundStatement)
Lowering\StateMachineRewriter\StateMachineRewriter.StateMachineMethodToClassRewriter.vb (8)
120Protected MustOverride Function GenerateReturn(finished As Boolean) As BoundStatement 201Protected Function Dispatch(isOutermost As Boolean) As BoundStatement 224Private Function GenerateMissingStateDispatch() As BoundStatement 279translatedStatement = MakeStateMachineScope(hoistedLocalsWithDebugScopes.ToImmutable(), DirectCast(translatedStatement, BoundStatement)) 290Friend Function MakeStateMachineScope(hoistedLocals As ImmutableArray(Of FieldSymbol), statement As BoundStatement) As BoundBlock 297Friend Function TryUnwrapBoundStateMachineScope(ByRef statement As BoundStatement, <Out> ByRef hoistedLocals As ImmutableArray(Of FieldSymbol)) As Boolean 343Dim tryBlock As BoundBlock = Me.F.Block(DirectCast(Me.Visit(node.TryBlock), BoundStatement)) 395Dim result As BoundStatement = node.Update(tryBlock, catchBlocks, finallyBlockOpt, node.ExitLabelOpt)
Lowering\StateMachineRewriter\StateMachineRewriter.vb (8)
24Protected ReadOnly Body As BoundStatement 39Protected Sub New(body As BoundStatement, 84Protected MustOverride Sub InitializeStateMachine(bodyBuilder As ArrayBuilder(Of BoundStatement), frameType As NamedTypeSymbol, stateMachineLocal As LocalSymbol) 89Protected MustOverride Function GenerateStateMachineCreation(stateMachineVariable As LocalSymbol, frameType As NamedTypeSymbol) As BoundStatement 124Dim bodyBuilder = ArrayBuilder(Of BoundStatement).GetInstance() 482Friend Sub CloseMethod(body As BoundStatement) 486Friend Overridable Function RewriteBodyIfNeeded(body As BoundStatement, topMethod As MethodSymbol, currentMethod As MethodSymbol) As BoundStatement
Lowering\SyntheticBoundNodeFactory.vb (31)
311Public Function Block(statements As ImmutableArray(Of BoundStatement)) As BoundBlock 315Public Function Block(locals As ImmutableArray(Of LocalSymbol), statements As ImmutableArray(Of BoundStatement)) As BoundBlock 322Return Block(ImmutableArray(Of BoundStatement).Empty) 325Public Function Block(ParamArray statements As BoundStatement()) As BoundBlock 326Return Block(ImmutableArray.Create(Of BoundStatement)(statements)) 329Public Function Block(locals As ImmutableArray(Of LocalSymbol), ParamArray statements As BoundStatement()) As BoundBlock 330Return Block(locals, ImmutableArray.Create(Of BoundStatement)(statements)) 334Return StatementList(ImmutableArray(Of BoundStatement).Empty) 337Public Function StatementList(statements As ImmutableArray(Of BoundStatement)) As BoundStatementList 343Public Function StatementList(first As BoundStatement, second As BoundStatement) As BoundStatementList 604Public Function [If](condition As BoundExpression, thenClause As BoundStatement, elseClause As BoundStatement) As BoundStatement 645Public Function [If](condition As BoundExpression, thenClause As BoundStatement) As BoundStatement 687Public Function [Select](ex As BoundExpression, sections As IEnumerable(Of BoundCaseBlock)) As BoundStatement 726Public Function SwitchSection(values As List(Of Integer), ParamArray statements As BoundStatement()) As BoundCaseBlock 736Dim boundCaseBlock = New BoundCaseBlock(_syntax, boundCaseStatement, Block(ImmutableArray.Create(Of BoundStatement)(statements))) 801Public Function BaseInitialization(ParamArray args As BoundExpression()) As BoundStatement 809Public Shared Function HiddenSequencePoint(Optional statementOpt As BoundStatement = Nothing) As BoundStatement 1058Optional exitLabel As LabelSymbol = Nothing) As BoundStatement 1075Public Function SequencePoint(syntax As SyntaxNode, statement As BoundStatement) As BoundStatement 1079Public Function SequencePoint(syntax As SyntaxNode) As BoundStatement 1083Public Function SequencePointWithSpan(syntax As SyntaxNode, textSpan As TextSpan, boundStatement As BoundStatement) As BoundStatement 1087Public Function NoOp(Optional flavor As NoOpStatementFlavor = NoOpStatementFlavor.Default) As BoundStatement 1091Public Sub CloseMethod(body As BoundStatement) 1100Public Function SpillSequence(locals As ImmutableArray(Of LocalSymbol), fields As ImmutableArray(Of FieldSymbol), statements As ImmutableArray(Of BoundStatement), valueOpt As BoundExpression) As BoundSpillSequence
Operations\VisualBasicOperationFactory.vb (1)
1295Dim operations As ImmutableArray(Of IOperation) = CreateFromArray(Of BoundStatement, IOperation)(boundBlock.Statements)
Operations\VisualBasicOperationFactory_QueryLambdaRewriter.vb (1)
41Dim rewrittenStatement As BoundStatement = LocalRewriter.CreateReturnStatementForQueryLambdaBody(rewrittenBody, node, hasErrors:=node.LambdaSymbol.ReturnType Is LambdaSymbol.ReturnTypePendingDelegate)
Symbols\Source\SynthesizedEntryPointSymbol.vb (2)
308ImmutableArray.Create(Of BoundStatement)(scriptAssignment, scriptInitialize, returnStatement)).MakeCompilerGenerated() 388ImmutableArray.Create(Of BoundStatement)(submissionAssignment, returnStatement)).MakeCompilerGenerated()
Symbols\Source\SynthesizedEventAccessorSymbol.vb (14)
128ImmutableArray(Of BoundStatement).Empty, 233statements:=ImmutableArray.Create(Of BoundStatement)(returnStatement)).MakeCompilerGenerated() 245statements:=ImmutableArray.Create(Of BoundStatement)(callStatement, returnStatement)).MakeCompilerGenerated() 290Dim [return] As BoundStatement = New BoundReturnStatement(syntax, 299ImmutableArray.Create(Of BoundStatement)([return]) 353Dim eventUpdate As BoundStatement = New BoundExpressionStatement(syntax, 364ImmutableArray.Create(Of BoundStatement)( 387Dim tmp0Init As BoundStatement = New BoundExpressionStatement(syntax, 396Dim loopStart As BoundStatement = New BoundLabelStatement(syntax, loopLabel).MakeCompilerGenerated 399Dim tmp1Update As BoundStatement = New BoundExpressionStatement(syntax, 430Dim tmp2Update As BoundStatement = New BoundExpressionStatement(syntax, 448Dim tmp0Update As BoundStatement = New BoundExpressionStatement(syntax, 465Dim loopEnd As BoundStatement = New BoundConditionalGoto(syntax, 473ImmutableArray.Create(Of BoundStatement)(
Symbols\Source\SynthesizedInteractiveInitializerMethod.vb (1)
141ImmutableArray.Create(Of BoundStatement)(New BoundLabelStatement(syntax, ExitLabel)))
Symbols\Source\SynthesizedMainTypeEntryPoint.vb (1)
71Dim statement As BoundStatement
Symbols\Source\SynthesizedMyGroupCollectionPropertyAccessorSymbol.vb (2)
96Dim boundStatement As BoundStatement 127Return New BoundBlock(accessorBlock, Nothing, ImmutableArray(Of LocalSymbol).Empty, ImmutableArray.Create(Of BoundStatement)(boundStatement))
Symbols\Source\SynthesizedSubmissionConstructorSymbol.vb (3)
52ImmutableArray.Create(Of BoundStatement)(New BoundReturnStatement(node, Nothing, Nothing, Nothing))) 59compilation As VisualBasicCompilation) As ImmutableArray(Of BoundStatement) 62Dim result = New List(Of BoundStatement)()
Microsoft.CodeAnalysis.VisualBasic.ExpressionEvaluator.ExpressionCompiler (8)
CompilationContext.vb (2)
490Private Shared Function BindExpression(binder As Binder, syntax As ExpressionSyntax, diagnostics As DiagnosticBag, <Out> ByRef resultProperties As ResultProperties) As BoundStatement 556Private Shared Function BindStatement(binder As Binder, syntax As StatementSyntax, diagnostics As DiagnosticBag, <Out> ByRef resultProperties As ResultProperties) As BoundStatement
Rewriters\LocalDeclarationRewriter.vb (2)
22Dim builder = ArrayBuilder(Of BoundStatement).GetInstance() 58local As LocalSymbol) As BoundStatement
Symbols\EEConstructorSymbol.vb (1)
22ImmutableArray.Create(Of BoundStatement)(
Symbols\EEMethodSymbol.vb (3)
19<Out> ByRef properties As ResultProperties) As BoundStatement 470Dim statementsBuilder = ArrayBuilder(Of BoundStatement).GetInstance() 597Private Function CalculateReturnType(body As BoundStatement) As TypeSymbol