2 types derived from LabelSymbol
Microsoft.CodeAnalysis.VisualBasic (2)
Symbols\LabelSymbol.vb (1)
145
Inherits
LabelSymbol
Symbols\Source\SourceLabelSymbol.vb (1)
17
Inherits
LabelSymbol
2 instantiations of LabelSymbol
Microsoft.CodeAnalysis.VisualBasic (2)
Symbols\LabelSymbol.vb (1)
148
MyBase.
New
(name)
Symbols\Source\SourceLabelSymbol.vb (1)
26
MyBase.
New
(labelNameToken.ValueText)
161 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)
54
Private ReadOnly _labels As New Dictionary(Of
LabelSymbol
, LabelStateAndNesting)
57
Private _labelsSeen As New HashSet(Of
LabelSymbol
)
291
Private Function LabelState(label As
LabelSymbol
) As LocalState
387
Private Sub ResolveBreaks(breakState As LocalState, breakLabel As
LabelSymbol
)
413
Private Sub ResolveContinues(continueLabel As
LabelSymbol
)
450
Private Shared Function GetBranchTargetLabel(branch As BoundStatement, gotoOnly As Boolean) As
LabelSymbol
470
Protected Overridable Sub ResolveBranch(pending As PendingBranch, label As
LabelSymbol
, target As BoundLabelStatement, ByRef labelStateChanged As Boolean)
493
Dim label As
LabelSymbol
= GetBranchTargetLabel(pending.Branch, False)
510
Public ReadOnly LabelsSeen As HashSet(Of
LabelSymbol
)
512
Public Sub New(ByRef _pendingBranches As ArrayBuilder(Of PendingBranch), ByRef _labelsSeen As HashSet(Of
LabelSymbol
))
517
_labelsSeen = New HashSet(Of
LabelSymbol
)
563
Private Function ResolveBranches(labelsFilter As HashSet(Of
LabelSymbol
)) As Boolean
570
Dim labelSymbol As
LabelSymbol
= Nothing
590
Optional labelsFilter As HashSet(Of
LabelSymbol
) = Nothing,
592
<Out()> Optional ByRef labelSymbol As
LabelSymbol
= Nothing,
2499
Dim label As
LabelSymbol
= node.Label
Analysis\FlowAnalysis\AlwaysAssignedWalker.vb (2)
35
Private ReadOnly _labelsInside As New HashSet(Of
LabelSymbol
)()
91
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)
49
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.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\Binder_Expressions.vb (2)
3553
Dim symbol As
LabelSymbol
= Nothing
3556
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)
798
Dim symbol As
LabelSymbol
= Nothing
820
Private Function IsValidLabelForGoto(label As
LabelSymbol
, labelSyntax As LabelSyntax, diagnostics As BindingDiagnosticBag) As Boolean
4873
Dim targetLabel As
LabelSymbol
= GetExitLabel(node.Kind)
4899
Dim targetLabel As
LabelSymbol
= GetContinueLabel(node.Kind)
5228
Dim symbol As
LabelSymbol
= Nothing
5267
Dim symbol As
LabelSymbol
= Nothing
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
)
1086
Private Sub EmitStringSwitchJumpTable(caseLabels As KeyValuePair(Of ConstantValue, Object)(), fallThroughLabel As
LabelSymbol
, key As LocalDefinition, syntaxNode As SyntaxNode)
1185
Private Sub EmitCaseBlocks(caseBlocks As ImmutableArray(Of BoundCaseBlock), caseBlockLabels As ImmutableArray(Of GeneratedLabelSymbol), exitLabel As
LabelSymbol
)
CodeGen\Optimizer\StackScheduler.Analyzer.vb (2)
1181
Private Sub RecordBranch(label As
LabelSymbol
)
1194
Private Sub RecordLabel(label As
LabelSymbol
)
Compilation\SemanticModel.vb (1)
2528
Dim label As
LabelSymbol
= binder.LookupLabelByNameToken(declarationSyntax.LabelToken)
Generated\BoundNodes.xml.Generated.vb (74)
2763
Public Sub New(syntax As SyntaxNode, expressionOpt As BoundExpression, functionLocalOpt As LocalSymbol, exitLabelOpt As
LabelSymbol
, Optional hasErrors As Boolean = False)
2790
Private ReadOnly _ExitLabelOpt As
LabelSymbol
2791
Public ReadOnly Property ExitLabelOpt As
LabelSymbol
2802
Public Function Update(expressionOpt As BoundExpression, functionLocalOpt As LocalSymbol, exitLabelOpt As
LabelSymbol
) As BoundReturnStatement
4947
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)
4990
Private ReadOnly _ExitLabel As
LabelSymbol
4991
Public ReadOnly Property ExitLabel As
LabelSymbol
5002
Public Function Update(expressionStatement As BoundExpressionStatement, exprPlaceholderOpt As BoundRValuePlaceholder, caseBlocks As ImmutableArray(Of BoundCaseBlock), recommendSwitchTable As Boolean, exitLabel As
LabelSymbol
) As BoundSelectStatement
5262
Protected Sub New(kind As BoundKind, syntax as SyntaxNode, continueLabel As
LabelSymbol
, exitLabel As
LabelSymbol
, hasErrors As Boolean)
5272
Protected Sub New(kind As BoundKind, syntax as SyntaxNode, continueLabel As
LabelSymbol
, exitLabel As
LabelSymbol
)
5283
Private ReadOnly _ContinueLabel As
LabelSymbol
5284
Public ReadOnly Property ContinueLabel As
LabelSymbol
5290
Private ReadOnly _ExitLabel As
LabelSymbol
5291
Public ReadOnly Property ExitLabel As
LabelSymbol
5301
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)
5356
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
5369
Public Sub New(syntax As SyntaxNode, condition As BoundExpression, body As BoundStatement, continueLabel As
LabelSymbol
, exitLabel As
LabelSymbol
, Optional hasErrors As Boolean = False)
5401
Public Function Update(condition As BoundExpression, body As BoundStatement, continueLabel As
LabelSymbol
, exitLabel As
LabelSymbol
) As BoundWhileStatement
5414
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)
5545
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)
5604
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
5617
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)
5651
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
5664
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
, hasErrors As Boolean)
5672
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
)
5681
Private ReadOnly _Label As
LabelSymbol
5682
Public ReadOnly Property Label As
LabelSymbol
5693
Public Function Update(label As
LabelSymbol
) As BoundExitStatement
5706
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
, hasErrors As Boolean)
5714
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
)
5723
Private ReadOnly _Label As
LabelSymbol
5724
Public ReadOnly Property Label As
LabelSymbol
5735
Public Function Update(label As
LabelSymbol
) As BoundContinueStatement
5748
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)
5782
Private ReadOnly _ExitLabelOpt As
LabelSymbol
5783
Public ReadOnly Property ExitLabelOpt As
LabelSymbol
5794
Public Function Update(tryBlock As BoundBlock, catchBlocks As ImmutableArray(Of BoundCatchBlock), finallyBlockOpt As BoundBlock, exitLabelOpt As
LabelSymbol
) As BoundTryStatement
6497
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
, hasErrors As Boolean)
6505
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
)
6514
Private ReadOnly _Label As
LabelSymbol
6515
Public ReadOnly Property Label As
LabelSymbol
6526
Public Function Update(label As
LabelSymbol
) As BoundLabelStatement
6539
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
, type As TypeSymbol, hasErrors As Boolean)
6547
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
, type As TypeSymbol)
6556
Private ReadOnly _Label As
LabelSymbol
6557
Public ReadOnly Property Label As
LabelSymbol
6568
Public Function Update(label As
LabelSymbol
, type As TypeSymbol) As BoundLabel
6581
Public Sub New(syntax As SyntaxNode, label As
LabelSymbol
, labelExpressionOpt As BoundLabel, Optional hasErrors As Boolean = False)
6591
Private ReadOnly _Label As
LabelSymbol
6592
Public ReadOnly Property Label As
LabelSymbol
6610
Public Function Update(label As
LabelSymbol
, labelExpressionOpt As BoundLabel) As BoundGotoStatement
6657
Public Sub New(syntax As SyntaxNode, condition As BoundExpression, jumpIfTrue As Boolean, label As
LabelSymbol
, Optional hasErrors As Boolean = False)
6683
Private ReadOnly _Label As
LabelSymbol
6684
Public ReadOnly Property Label As
LabelSymbol
6695
Public Function Update(condition As BoundExpression, jumpIfTrue As Boolean, label As
LabelSymbol
) As BoundConditionalGoto
8306
Public Sub New(syntax As SyntaxNode, resumeKind As ResumeStatementKind, labelOpt As
LabelSymbol
, labelExpressionOpt As BoundExpression, Optional hasErrors As Boolean = False)
8326
Private ReadOnly _LabelOpt As
LabelSymbol
8327
Public ReadOnly Property LabelOpt As
LabelSymbol
8345
Public Function Update(resumeKind As ResumeStatementKind, labelOpt As
LabelSymbol
, labelExpressionOpt As BoundExpression) As BoundResumeStatement
8358
Public Sub New(syntax As SyntaxNode, onErrorKind As OnErrorStatementKind, labelOpt As
LabelSymbol
, labelExpressionOpt As BoundExpression, Optional hasErrors As Boolean = False)
8378
Private ReadOnly _LabelOpt As
LabelSymbol
8379
Public ReadOnly Property LabelOpt As
LabelSymbol
8397
Public Function Update(onErrorKind As OnErrorStatementKind, labelOpt As
LabelSymbol
, labelExpressionOpt As BoundExpression) As BoundOnErrorStatement
Lowering\AsyncRewriter\AsyncRewriter.AsyncMethodToClassRewriter.vb (2)
35
Private ReadOnly _exprReturnLabel As
LabelSymbol
42
Private ReadOnly _exitLabel As
LabelSymbol
Lowering\IteratorRewriter\IteratorRewriter.IteratorMethodToClassRewriter.vb (1)
23
Private _exitLabel As
LabelSymbol
Lowering\LambdaRewriter\LambdaRewriter.Analysis.vb (2)
64
Friend labelBlock As Dictionary(Of
LabelSymbol
, BoundNode) = New Dictionary(Of
LabelSymbol
, BoundNode)(ReferenceEqualityComparer.Instance)
Lowering\LocalRewriter\LocalRewriter.vb (1)
530
Private Shared Function GenerateLabel(baseName As String) As
LabelSymbol
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\StateMachineRewriter\StateMachineRewriter.StateMachineMethodToClassRewriter.vb (4)
42
Protected Dispatches As New Dictionary(Of
LabelSymbol
, List(Of Integer))
187
Dispatches = New Dictionary(Of
LabelSymbol
, List(Of Integer))()
335
Dim oldDispatches As Dictionary(Of
LabelSymbol
, List(Of Integer)) = Me.Dispatches
373
oldDispatches = New Dictionary(Of
LabelSymbol
, List(Of Integer))()
Lowering\SyntheticBoundNodeFactory.vb (3)
741
Public Function [Goto](label As
LabelSymbol
, Optional setWasCompilerGenerated As Boolean = True) As BoundGotoStatement
751
Public Function Label(labelSym As
LabelSymbol
) As BoundLabelStatement
1058
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
Microsoft.CodeAnalysis.VisualBasic.Semantic.UnitTests (2)
Compilation\SemanticModelGetDeclaredSymbolAPITests.vb (2)
1597
Dim LabelSymbol = DirectCast(model.GetDeclaredSymbol(Labels),
LabelSymbol
)
1936
Dim symLabel = DirectCast(label1,
LabelSymbol
)