Binder\Binder_Statements.cs (21)
201BindForOrUsingOrFixedDeclarations(declarationSyntax, LocalDeclarationKind.FixedVariable, diagnostics, out declarations);
729var kind = isConst ? LocalDeclarationKind.Constant : LocalDeclarationKind.RegularVariable;
950LocalDeclarationKind kind,
976LocalDeclarationKind kind,
1059if (kind != LocalDeclarationKind.FixedVariable)
1073if (kind == LocalDeclarationKind.FixedVariable)
1110if (kind == LocalDeclarationKind.FixedVariable || kind == LocalDeclarationKind.UsingVariable)
1123else if (kind == LocalDeclarationKind.Constant && initializerOpt != null && !localDiagnostics.HasAnyResolvedErrors())
1196private SourceLocalSymbol LocateDeclaredVariableSymbol(VariableDeclaratorSyntax declarator, TypeSyntax typeSyntax, LocalDeclarationKind outerKind, BindingDiagnosticBag diagnostics)
1198LocalDeclarationKind kind = outerKind == LocalDeclarationKind.UsingVariable ? LocalDeclarationKind.UsingVariable : LocalDeclarationKind.RegularVariable;
2831internal BoundStatement BindForOrUsingOrFixedDeclarations(VariableDeclarationSyntax nodeOpt, LocalDeclarationKind localKind, BindingDiagnosticBag diagnostics, out ImmutableArray<BoundLocalDeclaration> declarations)
2840Debug.Assert(typeSyntax is not ScopedTypeSyntax || localKind is LocalDeclarationKind.RegularVariable or LocalDeclarationKind.UsingVariable);
2851if (localKind == LocalDeclarationKind.RegularVariable)
3371if (local?.DeclarationKind == LocalDeclarationKind.CatchVariable)
Symbols\Source\SourceLocalSymbol.cs (30)
34private readonly LocalDeclarationKind _declarationKind;
79LocalDeclarationKind declarationKind)
82Debug.Assert(declarationKind != LocalDeclarationKind.None);
146return new ForEachLocalSymbol(containingMethod, binder, typeSyntax, identifierToken, collection, LocalDeclarationKind.ForEachIterationVariable);
172LocalDeclarationKind kind,
194LocalDeclarationKind kind,
210return typeSyntax?.SkipScoped(out _).SkipRef().IsVar != false && kind != LocalDeclarationKind.DeclarationExpressionVariable
241LocalDeclarationKind declarationKind,
245Debug.Assert(declarationKind != LocalDeclarationKind.ForEachIterationVariable);
256internal override LocalDeclarationKind DeclarationKind
530case LocalDeclarationKind.RegularVariable:
534case LocalDeclarationKind.Constant:
535case LocalDeclarationKind.FixedVariable:
536case LocalDeclarationKind.UsingVariable:
540case LocalDeclarationKind.ForEachIterationVariable:
544case LocalDeclarationKind.CatchVariable:
548case LocalDeclarationKind.OutVariable:
549case LocalDeclarationKind.DeclarationExpressionVariable:
550case LocalDeclarationKind.DeconstructionVariable:
551case LocalDeclarationKind.PatternVariable:
629LocalDeclarationKind declarationKind,
633Debug.Assert(declarationKind != LocalDeclarationKind.ForEachIterationVariable);
727LocalDeclarationKind declarationKind) :
730Debug.Assert(declarationKind == LocalDeclarationKind.ForEachIterationVariable);
761LocalDeclarationKind declarationKind,
808LocalDeclarationKind declarationKind,
812Debug.Assert(declarationKind is LocalDeclarationKind.OutVariable or LocalDeclarationKind.PatternVariable);
882Debug.Assert(this.DeclarationKind is LocalDeclarationKind.DeclarationExpressionVariable or LocalDeclarationKind.OutVariable);