2 types derived from LabelSymbol
Microsoft.CodeAnalysis.VisualBasic (2)
Symbols\LabelSymbol.vb (1)
145
Inherits
LabelSymbol
Symbols\Source\SourceLabelSymbol.vb (1)
17
Inherits
LabelSymbol
1 instantiation of LabelSymbol
Microsoft.CodeAnalysis.VisualBasic (1)
Symbols\LabelSymbol.vb (1)
148
MyBase.
New
(name)
159 references to LabelSymbol
Microsoft.CodeAnalysis.VisualBasic (159)
Analysis\FlowAnalysis\AbstractFlowPass.NestedTypes.vb (1)
90
Public ReadOnly Property Label As
LabelSymbol
Analysis\FlowAnalysis\AbstractFlowPass.vb (16)
46
Private ReadOnly _labels As New Dictionary(Of
LabelSymbol
, LabelStateAndNesting)
49
Private _labelsSeen As New HashSet(Of
LabelSymbol
)
283
Private Function LabelState(label As
LabelSymbol
) As LocalState
396
Private Sub ResolveBreaks(breakState As LocalState, breakLabel As
LabelSymbol
)
422
Private Sub ResolveContinues(continueLabel As
LabelSymbol
)
459
Private Shared Function GetBranchTargetLabel(branch As BoundStatement, gotoOnly As Boolean) As
LabelSymbol
479
Protected Overridable Sub ResolveBranch(pending As PendingBranch, label As
LabelSymbol
, target As BoundLabelStatement, ByRef labelStateChanged As Boolean)
502
Dim label As
LabelSymbol
= GetBranchTargetLabel(pending.Branch, False)
519
Public ReadOnly LabelsSeen As HashSet(Of
LabelSymbol
)
521
Public Sub New(ByRef _pendingBranches As ArrayBuilder(Of PendingBranch), ByRef _labelsSeen As HashSet(Of
LabelSymbol
))
526
_labelsSeen = New HashSet(Of
LabelSymbol
)
572
Private Function ResolveBranches(labelsFilter As HashSet(Of
LabelSymbol
)) As Boolean
579
Dim labelSymbol As
LabelSymbol
= Nothing
599
Optional labelsFilter As HashSet(Of
LabelSymbol
) = Nothing,
601
<Out()> Optional ByRef labelSymbol As
LabelSymbol
= Nothing,
2515
Dim label As
LabelSymbol
= node.Label
Analysis\FlowAnalysis\AlwaysAssignedWalker.vb (2)
36
Private ReadOnly _labelsInside As New HashSet(Of
LabelSymbol
)()
92
Protected Overrides Sub ResolveBranch(pending As AbstractFlowPass(Of DataFlowPass.LocalState).PendingBranch, label As
LabelSymbol
, target As BoundLabelStatement, ByRef labelStateChanged As Boolean)
Analysis\FlowAnalysis\ExitPointsWalker.vb (2)
50
Private _labelsInside As ArrayBuilder(Of
LabelSymbol
) = ArrayBuilder(Of
LabelSymbol
).GetInstance()
Binding\BackstopBinder.vb (4)
207
Public Overrides Function GetContinueLabel(continueSyntaxKind As SyntaxKind) As
LabelSymbol
211
Public Overrides Function GetExitLabel(exitSyntaxKind As SyntaxKind) As
LabelSymbol
215
Public Overrides Function GetReturnLabel() As
LabelSymbol
257
Friend Overrides Function LookupLabelByNameToken(labelName As SyntaxToken) As
LabelSymbol
Binding\Binder_Expressions.vb (2)
3584
Dim symbol As
LabelSymbol
= Nothing
3587
symbol = DirectCast(result.Symbols.First(),
LabelSymbol
)
Binding\Binder_Lambda.vb (3)
1110
Public Overrides Function GetContinueLabel(continueSyntaxKind As SyntaxKind) As
LabelSymbol
1114
Public Overrides Function GetExitLabel(exitSyntaxKind As SyntaxKind) As
LabelSymbol
1118
Public Overrides Function GetReturnLabel() As
LabelSymbol
Binding\Binder_Statements.vb (6)
829
Dim symbol As
LabelSymbol
= Nothing
851
Private Function IsValidLabelForGoto(label As
LabelSymbol
, labelSyntax As LabelSyntax, diagnostics As BindingDiagnosticBag) As Boolean
4904
Dim targetLabel As
LabelSymbol
= GetExitLabel(node.Kind)
4930
Dim targetLabel As
LabelSymbol
= GetContinueLabel(node.Kind)
5259
Dim symbol As
LabelSymbol
= Nothing
5298
Dim symbol As
LabelSymbol
= Nothing
Binding\Binder.vb (4)
242
Friend Overridable Function LookupLabelByNameToken(labelName As SyntaxToken) As
LabelSymbol
835
Public Overridable Function GetExitLabel(exitSyntaxKind As SyntaxKind) As
LabelSymbol
844
Public Overridable Function GetContinueLabel(continueSyntaxKind As SyntaxKind) As
LabelSymbol
854
Public Overridable Function GetReturnLabel() As
LabelSymbol
Binding\BlockStatementBinders.vb (5)
17
Private ReadOnly _continueLabel As
LabelSymbol
' the label to jump to for a continue (or Nothing for none)
19
Private ReadOnly _exitLabel As
LabelSymbol
' the label to jump to for an exit (or Nothing for none)
44
Public Overrides Function GetContinueLabel(continueSyntaxKind As SyntaxKind) As
LabelSymbol
52
Public Overrides Function GetExitLabel(exitSyntaxKind As SyntaxKind) As
LabelSymbol
60
Public Overrides Function GetReturnLabel() As
LabelSymbol
Binding\ExecutableCodeBinder.vb (2)
102
Friend Overrides Function LookupLabelByNameToken(labelName As SyntaxToken) As
LabelSymbol
105
For Each labelSymbol As
LabelSymbol
In Me.LabelsMap(name)
Binding\FinallyBlockBinder.vb (1)
22
Public Overrides Function GetExitLabel(exitSyntaxKind As SyntaxKind) As
LabelSymbol
Binding\SyntheticBoundTrees\SynthesizedStringSwitchHashMethod.vb (2)
60
Dim again As
LabelSymbol
= F.GenerateLabel("again")
61
Dim start As
LabelSymbol
= F.GenerateLabel("start")
BoundTree\BoundOnErrorStatement.vb (1)
20
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
, labelExpressionOpt As BoundExpression, Optional hasErrors As Boolean = False)
BoundTree\BoundResumeStatement.vb (1)
23
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
, labelExpressionOpt As BoundExpression, Optional hasErrors As Boolean = False)
CodeGen\EmitStatement.vb (7)
868
Private ReadOnly _label As
LabelSymbol
871
Private Sub New(label As
LabelSymbol
)
891
Public Shared Function NodeContainsLabel(node As BoundNode, label As
LabelSymbol
) As Boolean
972
ByRef fallThroughLabel As
LabelSymbol
1041
Private Sub EmitSwitchTableHeader(selectExpression As BoundExpression, caseLabels As KeyValuePair(Of ConstantValue, Object)(), fallThroughLabel As
LabelSymbol
)
1087
Private Sub EmitStringSwitchJumpTable(caseLabels As KeyValuePair(Of ConstantValue, Object)(), fallThroughLabel As
LabelSymbol
, key As LocalDefinition, syntaxNode As SyntaxNode)
1186
Private Sub EmitCaseBlocks(caseBlocks As ImmutableArray(Of BoundCaseBlock), caseBlockLabels As ImmutableArray(Of GeneratedLabelSymbol), exitLabel As
LabelSymbol
)
CodeGen\Optimizer\StackScheduler.Analyzer.vb (2)
1179
Private Sub RecordBranch(label As
LabelSymbol
)
1192
Private Sub RecordLabel(label As
LabelSymbol
)
Compilation\SemanticModel.vb (1)
2527
Dim label As
LabelSymbol
= binder.LookupLabelByNameToken(declarationSyntax.LabelToken)
Generated\BoundNodes.xml.Generated.vb (74)
2773
Public Sub New(syntax As SyntaxNode, expressionOpt As BoundExpression, functionLocalOpt As LocalSymbol, exitLabelOpt As
LabelSymbol
, Optional hasErrors As Boolean = False)
2800
Private ReadOnly _ExitLabelOpt As
LabelSymbol
2801
Public ReadOnly Property ExitLabelOpt As
LabelSymbol
2812
Public Function Update(expressionOpt As BoundExpression, functionLocalOpt As LocalSymbol, exitLabelOpt As
LabelSymbol
) As BoundReturnStatement
4957
Public Sub New(syntax As SyntaxNode, expressionStatement As BoundExpressionStatement, exprPlaceholderOpt As BoundRValuePlaceholder, caseBlocks As ImmutableArray(Of BoundCaseBlock), recommendSwitchTable As Boolean, exitLabel As
LabelSymbol
, Optional hasErrors As Boolean = False)
5000
Private ReadOnly _ExitLabel As
LabelSymbol
5001
Public ReadOnly Property ExitLabel As
LabelSymbol
5012
Public Function Update(expressionStatement As BoundExpressionStatement, exprPlaceholderOpt As BoundRValuePlaceholder, caseBlocks As ImmutableArray(Of BoundCaseBlock), recommendSwitchTable As Boolean, exitLabel As
LabelSymbol
) As BoundSelectStatement
5272
Protected Sub New(kind As BoundKind, syntax as SyntaxNode, continueLabel As
LabelSymbol
, exitLabel As
LabelSymbol
, hasErrors As Boolean)
5282
Protected Sub New(kind As BoundKind, syntax as SyntaxNode, continueLabel As
LabelSymbol
, exitLabel As
LabelSymbol
)
5293
Private ReadOnly _ContinueLabel As
LabelSymbol
5294
Public ReadOnly Property ContinueLabel As
LabelSymbol
5300
Private ReadOnly _ExitLabel As
LabelSymbol
5301
Public ReadOnly Property ExitLabel As
LabelSymbol
5311
Public 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)
5366
Public 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
5379
Public Sub New(syntax As SyntaxNode, condition As BoundExpression, body As BoundStatement, continueLabel As
LabelSymbol
, exitLabel As
LabelSymbol
, Optional hasErrors As Boolean = False)
5411
Public Function Update(condition As BoundExpression, body As BoundStatement, continueLabel As
LabelSymbol
, exitLabel As
LabelSymbol
) As BoundWhileStatement
5424
Protected 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)
5555
Public 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)
5614
Public 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
5627
Public 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)
5661
Public 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
5674
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
, hasErrors As Boolean)
5682
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
)
5691
Private ReadOnly _Label As
LabelSymbol
5692
Public ReadOnly Property Label As
LabelSymbol
5703
Public Function Update(label As
LabelSymbol
) As BoundExitStatement
5716
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
, hasErrors As Boolean)
5724
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
)
5733
Private ReadOnly _Label As
LabelSymbol
5734
Public ReadOnly Property Label As
LabelSymbol
5745
Public Function Update(label As
LabelSymbol
) As BoundContinueStatement
5758
Public Sub New(syntax As SyntaxNode, tryBlock As BoundBlock, catchBlocks As ImmutableArray(Of BoundCatchBlock), finallyBlockOpt As BoundBlock, exitLabelOpt As
LabelSymbol
, Optional hasErrors As Boolean = False)
5792
Private ReadOnly _ExitLabelOpt As
LabelSymbol
5793
Public ReadOnly Property ExitLabelOpt As
LabelSymbol
5804
Public Function Update(tryBlock As BoundBlock, catchBlocks As ImmutableArray(Of BoundCatchBlock), finallyBlockOpt As BoundBlock, exitLabelOpt As
LabelSymbol
) As BoundTryStatement
6514
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
, hasErrors As Boolean)
6522
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
)
6531
Private ReadOnly _Label As
LabelSymbol
6532
Public ReadOnly Property Label As
LabelSymbol
6543
Public Function Update(label As
LabelSymbol
) As BoundLabelStatement
6556
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
, type As TypeSymbol, hasErrors As Boolean)
6564
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
, type As TypeSymbol)
6573
Private ReadOnly _Label As
LabelSymbol
6574
Public ReadOnly Property Label As
LabelSymbol
6585
Public Function Update(label As
LabelSymbol
, type As TypeSymbol) As BoundLabel
6598
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
, labelExpressionOpt As BoundLabel, Optional hasErrors As Boolean = False)
6608
Private ReadOnly _Label As
LabelSymbol
6609
Public ReadOnly Property Label As
LabelSymbol
6627
Public Function Update(label As
LabelSymbol
, labelExpressionOpt As BoundLabel) As BoundGotoStatement
6674
Public Sub New(syntax As SyntaxNode, condition As BoundExpression, jumpIfTrue As Boolean, label As
LabelSymbol
, Optional hasErrors As Boolean = False)
6700
Private ReadOnly _Label As
LabelSymbol
6701
Public ReadOnly Property Label As
LabelSymbol
6712
Public Function Update(condition As BoundExpression, jumpIfTrue As Boolean, label As
LabelSymbol
) As BoundConditionalGoto
8323
Public Sub New(syntax As SyntaxNode, resumeKind As ResumeStatementKind, labelOpt As
LabelSymbol
, labelExpressionOpt As BoundExpression, Optional hasErrors As Boolean = False)
8343
Private ReadOnly _LabelOpt As
LabelSymbol
8344
Public ReadOnly Property LabelOpt As
LabelSymbol
8362
Public Function Update(resumeKind As ResumeStatementKind, labelOpt As
LabelSymbol
, labelExpressionOpt As BoundExpression) As BoundResumeStatement
8375
Public Sub New(syntax As SyntaxNode, onErrorKind As OnErrorStatementKind, labelOpt As
LabelSymbol
, labelExpressionOpt As BoundExpression, Optional hasErrors As Boolean = False)
8395
Private ReadOnly _LabelOpt As
LabelSymbol
8396
Public ReadOnly Property LabelOpt As
LabelSymbol
8414
Public Function Update(onErrorKind As OnErrorStatementKind, labelOpt As
LabelSymbol
, labelExpressionOpt As BoundExpression) As BoundOnErrorStatement
Lowering\AsyncRewriter\AsyncRewriter.AsyncMethodToClassRewriter.vb (2)
36
Private ReadOnly _exprReturnLabel As
LabelSymbol
43
Private ReadOnly _exitLabel As
LabelSymbol
Lowering\IteratorRewriter\IteratorRewriter.IteratorMethodToClassRewriter.vb (1)
24
Private _exitLabel As
LabelSymbol
Lowering\LambdaRewriter\LambdaRewriter.Analysis.vb (2)
63
Friend labelBlock As Dictionary(Of
LabelSymbol
, BoundNode) = New Dictionary(Of
LabelSymbol
, BoundNode)(ReferenceEqualityComparer.Instance)
Lowering\LocalRewriter\LocalRewriter_SelectCase.vb (1)
69
exitLabel As
LabelSymbol
Lowering\LocalRewriter\LocalRewriter_Try.vb (1)
72
exitLabelOpt As
LabelSymbol
Lowering\LocalRewriter\LocalRewriter_UnstructuredExceptionHandling.vb (2)
30
Public ResumeNextLabel As
LabelSymbol
31
Public ResumeLabel As
LabelSymbol
Lowering\LocalRewriter\LocalRewriter_While.vb (2)
50
continueLabel As
LabelSymbol
,
51
exitLabel As
LabelSymbol
,
Lowering\LocalRewriter\LocalRewriter.vb (1)
530
Private Shared Function GenerateLabel(baseName As String) As
LabelSymbol
Lowering\StateMachineRewriter\StateMachineRewriter.StateMachineMethodToClassRewriter.vb (4)
43
Protected Dispatches As New Dictionary(Of
LabelSymbol
, List(Of Integer))
188
Dispatches = New Dictionary(Of
LabelSymbol
, List(Of Integer))()
336
Dim oldDispatches As Dictionary(Of
LabelSymbol
, List(Of Integer)) = Me.Dispatches
374
oldDispatches = New Dictionary(Of
LabelSymbol
, List(Of Integer))()
Lowering\SyntheticBoundNodeFactory.vb (3)
745
Public Function [Goto](label As
LabelSymbol
, Optional setWasCompilerGenerated As Boolean = True) As BoundGotoStatement
755
Public Function Label(labelSym As
LabelSymbol
) As BoundLabelStatement
1092
Optional exitLabel As
LabelSymbol
= Nothing) As BoundStatement
Symbols\Source\SynthesizedInteractiveInitializerMethod.vb (1)
16
Friend ReadOnly ExitLabel As
LabelSymbol
Symbols\SymbolVisitor.vb (1)
40
Public Overridable Sub VisitLabel(symbol As
LabelSymbol
)
Symbols\SymbolVisitor`1.vb (1)
39
Public Overridable Function VisitLabel(symbol As
LabelSymbol
) As TResult
Symbols\SymbolVisitor`2.vb (1)
90
Public Overridable Function VisitLabel(symbol As
LabelSymbol
, arg As TArgument) As TResult