1 write to _knownSymbols
System.Text.Json.SourceGeneration (1)
JsonSourceGenerator.Parser.cs (1)
68_knownSymbols = knownSymbols;
76 references to _knownSymbols
System.Text.Json.SourceGeneration (76)
JsonSourceGenerator.Parser.cs (76)
57if (location is null || !_knownSymbols.Compilation.ContainsLocation(location)) 85Debug.Assert(_knownSymbols.JsonSerializerContextType != null); 98if (!_knownSymbols.JsonSerializerContextType.IsAssignableFrom(contextTypeSymbol)) 118LanguageVersion? langVersion = _knownSymbols.Compilation.GetLanguageVersion(); 210type = _knownSymbols.Compilation.EraseCompileTimeMetadata(type); 234Debug.Assert(_knownSymbols.JsonSerializableAttributeType != null); 235Debug.Assert(_knownSymbols.JsonSourceGenerationOptionsAttributeType != null); 244if (SymbolEqualityComparer.Default.Equals(attributeClass, _knownSymbols.JsonSerializableAttributeType)) 254else if (SymbolEqualityComparer.Default.Equals(attributeClass, _knownSymbols.JsonSourceGenerationOptionsAttributeType)) 483if (location is null || !_knownSymbols.Compilation.ContainsLocation(location)) 491Type = _knownSymbols.Compilation.EraseCompileTimeMetadata(typeSymbol), 558Debug.Assert(_knownSymbols.JsonStringEnumConverterOfTType != null); 559INamedTypeSymbol converterSymbol = _knownSymbols.JsonStringEnumConverterOfTType.Construct(type); 594constructorSetsRequiredMembers = defaultCtor?.ContainsAttribute(_knownSymbols.SetsRequiredMembersAttributeType) == true; 613bool useDefaultCtorInAnnotatedStructs = type.GetCompatibleGenericBaseType(_knownSymbols.KeyValuePair) is null; 627implementsIJsonOnSerializing = _knownSymbols.IJsonOnSerializingType.IsAssignableFrom(type); 628implementsIJsonOnSerialized = _knownSymbols.IJsonOnSerializedType.IsAssignableFrom(type); 703if (SymbolEqualityComparer.Default.Equals(attributeType, _knownSymbols.JsonNumberHandlingAttributeType)) 708else if (SymbolEqualityComparer.Default.Equals(attributeType, _knownSymbols.JsonUnmappedMemberHandlingAttributeType)) 713else if (SymbolEqualityComparer.Default.Equals(attributeType, _knownSymbols.JsonObjectCreationHandlingAttributeType)) 718else if (!foundJsonConverterAttribute && _knownSymbols.JsonConverterAttributeType.IsAssignableFrom(attributeType)) 724if (SymbolEqualityComparer.Default.Equals(attributeType, _knownSymbols.JsonDerivedTypeAttributeType)) 755if (SymbolEqualityComparer.Default.Equals(type.OriginalDefinition, _knownSymbols.MemoryType)) 757Debug.Assert(!SymbolEqualityComparer.Default.Equals(type, _knownSymbols.MemoryByteType)); 763if (SymbolEqualityComparer.Default.Equals(type.OriginalDefinition, _knownSymbols.ReadOnlyMemoryType)) 765Debug.Assert(!SymbolEqualityComparer.Default.Equals(type, _knownSymbols.ReadOnlyMemoryByteType)); 772if (type.GetCompatibleGenericBaseType(_knownSymbols.IAsyncEnumerableOfTType) is INamedTypeSymbol iAsyncEnumerableType) 779if (!_knownSymbols.IEnumerableType.IsAssignableFrom(type)) 791else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.KeyedCollectionType)) != null) 796else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.ListOfTType)) != null) 801else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.DictionaryOfTKeyTValueType)) != null) 807else if (_knownSymbols.IsImmutableDictionaryType(type, out immutableCollectionFactoryTypeFullName)) 814else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.IDictionaryOfTKeyTValueType)) != null) 821else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.IReadonlyDictionaryOfTKeyTValueType)) != null) 828else if (_knownSymbols.IsImmutableEnumerableType(type, out immutableCollectionFactoryTypeFullName)) 833else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.IListOfTType)) != null) 838else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.ISetOfTType)) != null) 843else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.ICollectionOfTType)) != null) 848else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.StackOfTType)) != null) 853else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.QueueOfTType)) != null) 858else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.ConcurrentStackType)) != null) 863else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.ConcurrentQueueType)) != null) 868else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.IEnumerableOfTType)) != null) 873else if (_knownSymbols.IDictionaryType.IsAssignableFrom(type)) 876keyType = _knownSymbols.StringType; 877valueType = _knownSymbols.ObjectType; 880else if (_knownSymbols.IListType.IsAssignableFrom(type)) 883valueType = _knownSymbols.ObjectType; 885else if (_knownSymbols.StackType.IsAssignableFrom(type)) 888valueType = _knownSymbols.ObjectType; 890else if (_knownSymbols.QueueType.IsAssignableFrom(type)) 893valueType = _knownSymbols.ObjectType; 898valueType = _knownSymbols.ObjectType; 906INamedTypeSymbol? dictionary = _knownSymbols.DictionaryOfTKeyTValueType?.Construct(keyType, valueType); 1096if (SymbolEqualityComparer.Default.Equals(type, _knownSymbols.JsonObjectType)) 1101INamedTypeSymbol? actualDictionaryType = type.GetCompatibleGenericBaseType(_knownSymbols.IDictionaryOfTKeyTValueType); 1107return SymbolEqualityComparer.Default.Equals(actualDictionaryType.TypeArguments[0], _knownSymbols.StringType) && 1108(SymbolEqualityComparer.Default.Equals(actualDictionaryType.TypeArguments[1], _knownSymbols.ObjectType) || 1109SymbolEqualityComparer.Default.Equals(actualDictionaryType.TypeArguments[1], _knownSymbols.JsonElementType)); 1263if (converterType is null && _knownSymbols.JsonConverterAttributeType.IsAssignableFrom(attributeType)) 1452constructorSetsRequiredMembers = constructor?.ContainsAttribute(_knownSymbols.SetsRequiredMembersAttributeType) == true; 1564Debug.Assert(_knownSymbols.JsonConverterAttributeType.IsAssignableFrom(attributeData.AttributeClass)); 1566if (!SymbolEqualityComparer.Default.Equals(attributeData.AttributeClass, _knownSymbols.JsonConverterAttributeType)) 1580!_knownSymbols.JsonConverterType.IsAssignableFrom(namedConverterType) || 1587if (_knownSymbols.JsonStringEnumConverterType.IsAssignableFrom(converterType)) 1671cmp.Equals(type, _knownSymbols.DateTimeOffsetType) || cmp.Equals(type, _knownSymbols.GuidType)) 1676if (cmp.Equals(type, _knownSymbols.ByteArrayType)) 1739if (constructor.ContainsAttribute(_knownSymbols.JsonConstructorAttributeType)) 1758if (constructor.ContainsAttribute(_knownSymbols.JsonConstructorAttributeType)) 1782=> _knownSymbols.Compilation.IsSymbolAccessibleWithin(symbol, within); 1787SymbolEqualityComparer.Default.Equals(_knownSymbols.SerializationInfoType, type) || 1788SymbolEqualityComparer.Default.Equals(_knownSymbols.IntPtrType, type) || 1789SymbolEqualityComparer.Default.Equals(_knownSymbols.UIntPtrType, type) || 1790_knownSymbols.MemberInfoType.IsAssignableFrom(type) || 1791_knownSymbols.DelegateType.IsAssignableFrom(type) ||