src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.SymbolKeyReader.cs (47)
60protected char Eat(SymbolKeyType type)
139if ((SymbolKeyType)Data[Position] == SymbolKeyType.Null)
141Eat(SymbolKeyType.Null);
202Debug.Assert((SymbolKeyType)Data[Position] != SymbolKeyType.Null);
205Eat(SymbolKeyType.Array);
266var type = (SymbolKeyType)Data[Position];
269if (type == SymbolKeyType.Assembly)
474var type = (SymbolKeyType)Data[Position];
475if (type == SymbolKeyType.Null)
485type = (SymbolKeyType)Data[Position];
488if (type == SymbolKeyType.Reference)
506private SymbolKeyResolution ReadWorker(SymbolKeyType type, out string? failureReason)
509SymbolKeyType.Alias => AliasSymbolKey.Instance.Resolve(this, out failureReason),
510SymbolKeyType.AnonymousFunctionOrDelegate => AnonymousFunctionOrDelegateSymbolKey.Resolve(this, out failureReason),
511SymbolKeyType.AnonymousType => AnonymousTypeSymbolKey.Instance.Resolve(this, out failureReason),
512SymbolKeyType.ArrayType => ArrayTypeSymbolKey.Instance.Resolve(this, out failureReason),
513SymbolKeyType.Assembly => AssemblySymbolKey.Instance.Resolve(this, out failureReason),
514SymbolKeyType.BodyLevel => BodyLevelSymbolKey.Resolve(this, out failureReason),
515SymbolKeyType.BuiltinOperator => BuiltinOperatorSymbolKey.Instance.Resolve(this, out failureReason),
516SymbolKeyType.ConstructedMethod => ConstructedMethodSymbolKey.Instance.Resolve(this, out failureReason),
517SymbolKeyType.DynamicType => DynamicTypeSymbolKey.Instance.Resolve(this, out failureReason),
518SymbolKeyType.ErrorType => ErrorTypeSymbolKey.Instance.Resolve(this, out failureReason),
519SymbolKeyType.Event => EventSymbolKey.Instance.Resolve(this, out failureReason),
520SymbolKeyType.Field => FieldSymbolKey.Instance.Resolve(this, out failureReason),
521SymbolKeyType.FunctionPointer => FunctionPointerTypeSymbolKey.Instance.Resolve(this, out failureReason),
522SymbolKeyType.Method => MethodSymbolKey.Instance.Resolve(this, out failureReason),
523SymbolKeyType.Module => ModuleSymbolKey.Instance.Resolve(this, out failureReason),
524SymbolKeyType.NamedType => NamedTypeSymbolKey.Instance.Resolve(this, out failureReason),
525SymbolKeyType.Namespace => NamespaceSymbolKey.Instance.Resolve(this, out failureReason),
526SymbolKeyType.Parameter => ParameterSymbolKey.Instance.Resolve(this, out failureReason),
527SymbolKeyType.PointerType => PointerTypeSymbolKey.Instance.Resolve(this, out failureReason),
528SymbolKeyType.Preprocessing => PreprocessingSymbolKey.Instance.Resolve(this, out failureReason),
529SymbolKeyType.Property => PropertySymbolKey.Instance.Resolve(this, out failureReason),
530SymbolKeyType.ReducedExtensionMethod => ReducedExtensionMethodSymbolKey.Instance.Resolve(this, out failureReason),
531SymbolKeyType.TupleType => TupleTypeSymbolKey.Instance.Resolve(this, out failureReason),
532SymbolKeyType.TypeParameter => TypeParameterSymbolKey.Instance.Resolve(this, out failureReason),
533SymbolKeyType.TypeParameterOrdinal => TypeParameterOrdinalSymbolKey.Resolve(this, out failureReason),
547Debug.Assert((SymbolKeyType)Data[Position] != SymbolKeyType.Null);
550Eat(SymbolKeyType.Array);
646if ((SymbolKeyType)Data[Position] == SymbolKeyType.Null)
648Eat(SymbolKeyType.Null);