2 types derived from LabelSymbol
Microsoft.CodeAnalysis.VisualBasic (2)
Symbols\LabelSymbol.vb (1)
145Inherits LabelSymbol
Symbols\Source\SourceLabelSymbol.vb (1)
17Inherits LabelSymbol
2 instantiations of LabelSymbol
Microsoft.CodeAnalysis.VisualBasic (2)
Symbols\LabelSymbol.vb (1)
148MyBase.New(name)
Symbols\Source\SourceLabelSymbol.vb (1)
26MyBase.New(labelNameToken.ValueText)
161 references to LabelSymbol
Microsoft.CodeAnalysis.VisualBasic (159)
Analysis\FlowAnalysis\AbstractFlowPass.NestedTypes.vb (1)
90Public ReadOnly Property Label As LabelSymbol
Analysis\FlowAnalysis\AbstractFlowPass.vb (16)
54Private ReadOnly _labels As New Dictionary(Of LabelSymbol, LabelStateAndNesting) 57Private _labelsSeen As New HashSet(Of LabelSymbol) 291Private Function LabelState(label As LabelSymbol) As LocalState 387Private Sub ResolveBreaks(breakState As LocalState, breakLabel As LabelSymbol) 413Private Sub ResolveContinues(continueLabel As LabelSymbol) 450Private Shared Function GetBranchTargetLabel(branch As BoundStatement, gotoOnly As Boolean) As LabelSymbol 470Protected Overridable Sub ResolveBranch(pending As PendingBranch, label As LabelSymbol, target As BoundLabelStatement, ByRef labelStateChanged As Boolean) 493Dim label As LabelSymbol = GetBranchTargetLabel(pending.Branch, False) 510Public ReadOnly LabelsSeen As HashSet(Of LabelSymbol) 512Public Sub New(ByRef _pendingBranches As ArrayBuilder(Of PendingBranch), ByRef _labelsSeen As HashSet(Of LabelSymbol)) 517_labelsSeen = New HashSet(Of LabelSymbol) 563Private Function ResolveBranches(labelsFilter As HashSet(Of LabelSymbol)) As Boolean 570Dim labelSymbol As LabelSymbol = Nothing 590Optional labelsFilter As HashSet(Of LabelSymbol) = Nothing, 592<Out()> Optional ByRef labelSymbol As LabelSymbol = Nothing, 2499Dim label As LabelSymbol = node.Label
Analysis\FlowAnalysis\AlwaysAssignedWalker.vb (2)
35Private ReadOnly _labelsInside As New HashSet(Of LabelSymbol)() 91Protected 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)
49Private _labelsInside As ArrayBuilder(Of LabelSymbol) = ArrayBuilder(Of LabelSymbol).GetInstance()
Binding\BackstopBinder.vb (4)
207Public Overrides Function GetContinueLabel(continueSyntaxKind As SyntaxKind) As LabelSymbol 211Public Overrides Function GetExitLabel(exitSyntaxKind As SyntaxKind) As LabelSymbol 215Public Overrides Function GetReturnLabel() As LabelSymbol 257Friend Overrides Function LookupLabelByNameToken(labelName As SyntaxToken) As LabelSymbol
Binding\Binder.vb (4)
242Friend Overridable Function LookupLabelByNameToken(labelName As SyntaxToken) As LabelSymbol 835Public Overridable Function GetExitLabel(exitSyntaxKind As SyntaxKind) As LabelSymbol 844Public Overridable Function GetContinueLabel(continueSyntaxKind As SyntaxKind) As LabelSymbol 854Public Overridable Function GetReturnLabel() As LabelSymbol
Binding\Binder_Expressions.vb (2)
3553Dim symbol As LabelSymbol = Nothing 3556symbol = DirectCast(result.Symbols.First(), LabelSymbol)
Binding\Binder_Lambda.vb (3)
1110Public Overrides Function GetContinueLabel(continueSyntaxKind As SyntaxKind) As LabelSymbol 1114Public Overrides Function GetExitLabel(exitSyntaxKind As SyntaxKind) As LabelSymbol 1118Public Overrides Function GetReturnLabel() As LabelSymbol
Binding\Binder_Statements.vb (6)
798Dim symbol As LabelSymbol = Nothing 820Private Function IsValidLabelForGoto(label As LabelSymbol, labelSyntax As LabelSyntax, diagnostics As BindingDiagnosticBag) As Boolean 4873Dim targetLabel As LabelSymbol = GetExitLabel(node.Kind) 4899Dim targetLabel As LabelSymbol = GetContinueLabel(node.Kind) 5228Dim symbol As LabelSymbol = Nothing 5267Dim symbol As LabelSymbol = Nothing
Binding\BlockStatementBinders.vb (5)
17Private ReadOnly _continueLabel As LabelSymbol ' the label to jump to for a continue (or Nothing for none) 19Private ReadOnly _exitLabel As LabelSymbol ' the label to jump to for an exit (or Nothing for none) 44Public Overrides Function GetContinueLabel(continueSyntaxKind As SyntaxKind) As LabelSymbol 52Public Overrides Function GetExitLabel(exitSyntaxKind As SyntaxKind) As LabelSymbol 60Public Overrides Function GetReturnLabel() As LabelSymbol
Binding\ExecutableCodeBinder.vb (2)
102Friend Overrides Function LookupLabelByNameToken(labelName As SyntaxToken) As LabelSymbol 105For Each labelSymbol As LabelSymbol In Me.LabelsMap(name)
Binding\FinallyBlockBinder.vb (1)
22Public Overrides Function GetExitLabel(exitSyntaxKind As SyntaxKind) As LabelSymbol
Binding\SyntheticBoundTrees\SynthesizedStringSwitchHashMethod.vb (2)
60Dim again As LabelSymbol = F.GenerateLabel("again") 61Dim start As LabelSymbol = F.GenerateLabel("start")
BoundTree\BoundOnErrorStatement.vb (1)
20Public Sub New(syntax As SyntaxNode, label As LabelSymbol, labelExpressionOpt As BoundExpression, Optional hasErrors As Boolean = False)
BoundTree\BoundResumeStatement.vb (1)
23Public Sub New(syntax As SyntaxNode, label As LabelSymbol, labelExpressionOpt As BoundExpression, Optional hasErrors As Boolean = False)
CodeGen\EmitStatement.vb (7)
868Private ReadOnly _label As LabelSymbol 871Private Sub New(label As LabelSymbol) 891Public Shared Function NodeContainsLabel(node As BoundNode, label As LabelSymbol) As Boolean 972ByRef fallThroughLabel As LabelSymbol 1041Private Sub EmitSwitchTableHeader(selectExpression As BoundExpression, caseLabels As KeyValuePair(Of ConstantValue, Object)(), fallThroughLabel As LabelSymbol) 1086Private Sub EmitStringSwitchJumpTable(caseLabels As KeyValuePair(Of ConstantValue, Object)(), fallThroughLabel As LabelSymbol, key As LocalDefinition, syntaxNode As SyntaxNode) 1185Private Sub EmitCaseBlocks(caseBlocks As ImmutableArray(Of BoundCaseBlock), caseBlockLabels As ImmutableArray(Of GeneratedLabelSymbol), exitLabel As LabelSymbol)
CodeGen\Optimizer\StackScheduler.Analyzer.vb (2)
1181Private Sub RecordBranch(label As LabelSymbol) 1194Private Sub RecordLabel(label As LabelSymbol)
Compilation\SemanticModel.vb (1)
2528Dim label As LabelSymbol = binder.LookupLabelByNameToken(declarationSyntax.LabelToken)
Generated\BoundNodes.xml.Generated.vb (74)
2763Public Sub New(syntax As SyntaxNode, expressionOpt As BoundExpression, functionLocalOpt As LocalSymbol, exitLabelOpt As LabelSymbol, Optional hasErrors As Boolean = False) 2790Private ReadOnly _ExitLabelOpt As LabelSymbol 2791Public ReadOnly Property ExitLabelOpt As LabelSymbol 2802Public Function Update(expressionOpt As BoundExpression, functionLocalOpt As LocalSymbol, exitLabelOpt As LabelSymbol) As BoundReturnStatement 4947Public 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) 4990Private ReadOnly _ExitLabel As LabelSymbol 4991Public ReadOnly Property ExitLabel As LabelSymbol 5002Public Function Update(expressionStatement As BoundExpressionStatement, exprPlaceholderOpt As BoundRValuePlaceholder, caseBlocks As ImmutableArray(Of BoundCaseBlock), recommendSwitchTable As Boolean, exitLabel As LabelSymbol) As BoundSelectStatement 5262Protected Sub New(kind As BoundKind, syntax as SyntaxNode, continueLabel As LabelSymbol, exitLabel As LabelSymbol, hasErrors As Boolean) 5272Protected Sub New(kind As BoundKind, syntax as SyntaxNode, continueLabel As LabelSymbol, exitLabel As LabelSymbol) 5283Private ReadOnly _ContinueLabel As LabelSymbol 5284Public ReadOnly Property ContinueLabel As LabelSymbol 5290Private ReadOnly _ExitLabel As LabelSymbol 5291Public ReadOnly Property ExitLabel As LabelSymbol 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) 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) 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) 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 5664Public Sub New(syntax As SyntaxNode, label As LabelSymbol, hasErrors As Boolean) 5672Public Sub New(syntax As SyntaxNode, label As LabelSymbol) 5681Private ReadOnly _Label As LabelSymbol 5682Public ReadOnly Property Label As LabelSymbol 5693Public Function Update(label As LabelSymbol) As BoundExitStatement 5706Public Sub New(syntax As SyntaxNode, label As LabelSymbol, hasErrors As Boolean) 5714Public Sub New(syntax As SyntaxNode, label As LabelSymbol) 5723Private ReadOnly _Label As LabelSymbol 5724Public ReadOnly Property Label As LabelSymbol 5735Public Function Update(label As LabelSymbol) As BoundContinueStatement 5748Public Sub New(syntax As SyntaxNode, tryBlock As BoundBlock, catchBlocks As ImmutableArray(Of BoundCatchBlock), finallyBlockOpt As BoundBlock, exitLabelOpt As LabelSymbol, Optional hasErrors As Boolean = False) 5782Private ReadOnly _ExitLabelOpt As LabelSymbol 5783Public ReadOnly Property ExitLabelOpt As LabelSymbol 5794Public Function Update(tryBlock As BoundBlock, catchBlocks As ImmutableArray(Of BoundCatchBlock), finallyBlockOpt As BoundBlock, exitLabelOpt As LabelSymbol) As BoundTryStatement 6497Public Sub New(syntax As SyntaxNode, label As LabelSymbol, hasErrors As Boolean) 6505Public Sub New(syntax As SyntaxNode, label As LabelSymbol) 6514Private ReadOnly _Label As LabelSymbol 6515Public ReadOnly Property Label As LabelSymbol 6526Public Function Update(label As LabelSymbol) As BoundLabelStatement 6539Public Sub New(syntax As SyntaxNode, label As LabelSymbol, type As TypeSymbol, hasErrors As Boolean) 6547Public Sub New(syntax As SyntaxNode, label As LabelSymbol, type As TypeSymbol) 6556Private ReadOnly _Label As LabelSymbol 6557Public ReadOnly Property Label As LabelSymbol 6568Public Function Update(label As LabelSymbol, type As TypeSymbol) As BoundLabel 6581Public Sub New(syntax As SyntaxNode, label As LabelSymbol, labelExpressionOpt As BoundLabel, Optional hasErrors As Boolean = False) 6591Private ReadOnly _Label As LabelSymbol 6592Public ReadOnly Property Label As LabelSymbol 6610Public Function Update(label As LabelSymbol, labelExpressionOpt As BoundLabel) As BoundGotoStatement 6657Public Sub New(syntax As SyntaxNode, condition As BoundExpression, jumpIfTrue As Boolean, label As LabelSymbol, Optional hasErrors As Boolean = False) 6683Private ReadOnly _Label As LabelSymbol 6684Public ReadOnly Property Label As LabelSymbol 6695Public Function Update(condition As BoundExpression, jumpIfTrue As Boolean, label As LabelSymbol) As BoundConditionalGoto 8306Public Sub New(syntax As SyntaxNode, resumeKind As ResumeStatementKind, labelOpt As LabelSymbol, labelExpressionOpt As BoundExpression, Optional hasErrors As Boolean = False) 8326Private ReadOnly _LabelOpt As LabelSymbol 8327Public ReadOnly Property LabelOpt As LabelSymbol 8345Public Function Update(resumeKind As ResumeStatementKind, labelOpt As LabelSymbol, labelExpressionOpt As BoundExpression) As BoundResumeStatement 8358Public Sub New(syntax As SyntaxNode, onErrorKind As OnErrorStatementKind, labelOpt As LabelSymbol, labelExpressionOpt As BoundExpression, Optional hasErrors As Boolean = False) 8378Private ReadOnly _LabelOpt As LabelSymbol 8379Public ReadOnly Property LabelOpt As LabelSymbol 8397Public Function Update(onErrorKind As OnErrorStatementKind, labelOpt As LabelSymbol, labelExpressionOpt As BoundExpression) As BoundOnErrorStatement
Lowering\AsyncRewriter\AsyncRewriter.AsyncMethodToClassRewriter.vb (2)
35Private ReadOnly _exprReturnLabel As LabelSymbol 42Private ReadOnly _exitLabel As LabelSymbol
Lowering\IteratorRewriter\IteratorRewriter.IteratorMethodToClassRewriter.vb (1)
23Private _exitLabel As LabelSymbol
Lowering\LambdaRewriter\LambdaRewriter.Analysis.vb (2)
64Friend labelBlock As Dictionary(Of LabelSymbol, BoundNode) = New Dictionary(Of LabelSymbol, BoundNode)(ReferenceEqualityComparer.Instance)
Lowering\LocalRewriter\LocalRewriter.vb (1)
530Private Shared Function GenerateLabel(baseName As String) As LabelSymbol
Lowering\LocalRewriter\LocalRewriter_SelectCase.vb (1)
69exitLabel As LabelSymbol
Lowering\LocalRewriter\LocalRewriter_Try.vb (1)
72exitLabelOpt As LabelSymbol
Lowering\LocalRewriter\LocalRewriter_UnstructuredExceptionHandling.vb (2)
30Public ResumeNextLabel As LabelSymbol 31Public ResumeLabel As LabelSymbol
Lowering\LocalRewriter\LocalRewriter_While.vb (2)
50continueLabel As LabelSymbol, 51exitLabel As LabelSymbol,
Lowering\StateMachineRewriter\StateMachineRewriter.StateMachineMethodToClassRewriter.vb (4)
42Protected Dispatches As New Dictionary(Of LabelSymbol, List(Of Integer)) 187Dispatches = New Dictionary(Of LabelSymbol, List(Of Integer))() 335Dim oldDispatches As Dictionary(Of LabelSymbol, List(Of Integer)) = Me.Dispatches 373oldDispatches = New Dictionary(Of LabelSymbol, List(Of Integer))()
Lowering\SyntheticBoundNodeFactory.vb (3)
741Public Function [Goto](label As LabelSymbol, Optional setWasCompilerGenerated As Boolean = True) As BoundGotoStatement 751Public Function Label(labelSym As LabelSymbol) As BoundLabelStatement 1058Optional exitLabel As LabelSymbol = Nothing) As BoundStatement
Symbols\Source\SynthesizedInteractiveInitializerMethod.vb (1)
16Friend ReadOnly ExitLabel As LabelSymbol
Symbols\SymbolVisitor.vb (1)
40Public Overridable Sub VisitLabel(symbol As LabelSymbol)
Symbols\SymbolVisitor`1.vb (1)
39Public Overridable Function VisitLabel(symbol As LabelSymbol) As TResult
Symbols\SymbolVisitor`2.vb (1)
90Public Overridable Function VisitLabel(symbol As LabelSymbol, arg As TArgument) As TResult
Microsoft.CodeAnalysis.VisualBasic.Semantic.UnitTests (2)
Compilation\SemanticModelGetDeclaredSymbolAPITests.vb (2)
1597Dim LabelSymbol = DirectCast(model.GetDeclaredSymbol(Labels), LabelSymbol) 1936Dim symLabel = DirectCast(label1, LabelSymbol)