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)) 489if (location is null || !_knownSymbols.Compilation.ContainsLocation(location)) 497Type = _knownSymbols.Compilation.EraseCompileTimeMetadata(typeSymbol), 564Debug.Assert(_knownSymbols.JsonStringEnumConverterOfTType != null); 565INamedTypeSymbol converterSymbol = _knownSymbols.JsonStringEnumConverterOfTType.Construct(type); 600constructorSetsRequiredMembers = defaultCtor?.ContainsAttribute(_knownSymbols.SetsRequiredMembersAttributeType) == true; 619bool useDefaultCtorInAnnotatedStructs = type.GetCompatibleGenericBaseType(_knownSymbols.KeyValuePair) is null; 633implementsIJsonOnSerializing = _knownSymbols.IJsonOnSerializingType.IsAssignableFrom(type); 634implementsIJsonOnSerialized = _knownSymbols.IJsonOnSerializedType.IsAssignableFrom(type); 709if (SymbolEqualityComparer.Default.Equals(attributeType, _knownSymbols.JsonNumberHandlingAttributeType)) 714else if (SymbolEqualityComparer.Default.Equals(attributeType, _knownSymbols.JsonUnmappedMemberHandlingAttributeType)) 719else if (SymbolEqualityComparer.Default.Equals(attributeType, _knownSymbols.JsonObjectCreationHandlingAttributeType)) 724else if (!foundJsonConverterAttribute && _knownSymbols.JsonConverterAttributeType.IsAssignableFrom(attributeType)) 730if (SymbolEqualityComparer.Default.Equals(attributeType, _knownSymbols.JsonDerivedTypeAttributeType)) 761if (SymbolEqualityComparer.Default.Equals(type.OriginalDefinition, _knownSymbols.MemoryType)) 763Debug.Assert(!SymbolEqualityComparer.Default.Equals(type, _knownSymbols.MemoryByteType)); 769if (SymbolEqualityComparer.Default.Equals(type.OriginalDefinition, _knownSymbols.ReadOnlyMemoryType)) 771Debug.Assert(!SymbolEqualityComparer.Default.Equals(type, _knownSymbols.ReadOnlyMemoryByteType)); 778if (type.GetCompatibleGenericBaseType(_knownSymbols.IAsyncEnumerableOfTType) is INamedTypeSymbol iAsyncEnumerableType) 785if (!_knownSymbols.IEnumerableType.IsAssignableFrom(type)) 797else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.KeyedCollectionType)) != null) 802else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.ListOfTType)) != null) 807else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.DictionaryOfTKeyTValueType)) != null) 813else if (_knownSymbols.IsImmutableDictionaryType(type, out immutableCollectionFactoryTypeFullName)) 820else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.IDictionaryOfTKeyTValueType)) != null) 827else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.IReadonlyDictionaryOfTKeyTValueType)) != null) 834else if (_knownSymbols.IsImmutableEnumerableType(type, out immutableCollectionFactoryTypeFullName)) 839else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.IListOfTType)) != null) 844else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.ISetOfTType)) != null) 849else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.ICollectionOfTType)) != null) 854else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.StackOfTType)) != null) 859else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.QueueOfTType)) != null) 864else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.ConcurrentStackType)) != null) 869else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.ConcurrentQueueType)) != null) 874else if ((actualTypeToConvert = type.GetCompatibleGenericBaseType(_knownSymbols.IEnumerableOfTType)) != null) 879else if (_knownSymbols.IDictionaryType.IsAssignableFrom(type)) 882keyType = _knownSymbols.StringType; 883valueType = _knownSymbols.ObjectType; 886else if (_knownSymbols.IListType.IsAssignableFrom(type)) 889valueType = _knownSymbols.ObjectType; 891else if (_knownSymbols.StackType.IsAssignableFrom(type)) 894valueType = _knownSymbols.ObjectType; 896else if (_knownSymbols.QueueType.IsAssignableFrom(type)) 899valueType = _knownSymbols.ObjectType; 904valueType = _knownSymbols.ObjectType; 912INamedTypeSymbol? dictionary = _knownSymbols.DictionaryOfTKeyTValueType?.Construct(keyType, valueType); 1102if (SymbolEqualityComparer.Default.Equals(type, _knownSymbols.JsonObjectType)) 1107INamedTypeSymbol? actualDictionaryType = type.GetCompatibleGenericBaseType(_knownSymbols.IDictionaryOfTKeyTValueType); 1113return SymbolEqualityComparer.Default.Equals(actualDictionaryType.TypeArguments[0], _knownSymbols.StringType) && 1114(SymbolEqualityComparer.Default.Equals(actualDictionaryType.TypeArguments[1], _knownSymbols.ObjectType) || 1115SymbolEqualityComparer.Default.Equals(actualDictionaryType.TypeArguments[1], _knownSymbols.JsonElementType)); 1269if (converterType is null && _knownSymbols.JsonConverterAttributeType.IsAssignableFrom(attributeType)) 1458constructorSetsRequiredMembers = constructor?.ContainsAttribute(_knownSymbols.SetsRequiredMembersAttributeType) == true; 1575Debug.Assert(_knownSymbols.JsonConverterAttributeType.IsAssignableFrom(attributeData.AttributeClass)); 1577if (!SymbolEqualityComparer.Default.Equals(attributeData.AttributeClass, _knownSymbols.JsonConverterAttributeType)) 1591!_knownSymbols.JsonConverterType.IsAssignableFrom(namedConverterType) || 1598if (_knownSymbols.JsonStringEnumConverterType.IsAssignableFrom(converterType)) 1682cmp.Equals(type, _knownSymbols.DateTimeOffsetType) || cmp.Equals(type, _knownSymbols.GuidType)) 1687if (cmp.Equals(type, _knownSymbols.ByteArrayType)) 1750if (constructor.ContainsAttribute(_knownSymbols.JsonConstructorAttributeType)) 1769if (constructor.ContainsAttribute(_knownSymbols.JsonConstructorAttributeType)) 1793=> _knownSymbols.Compilation.IsSymbolAccessibleWithin(symbol, within); 1798SymbolEqualityComparer.Default.Equals(_knownSymbols.SerializationInfoType, type) || 1799SymbolEqualityComparer.Default.Equals(_knownSymbols.IntPtrType, type) || 1800SymbolEqualityComparer.Default.Equals(_knownSymbols.UIntPtrType, type) || 1801_knownSymbols.MemberInfoType.IsAssignableFrom(type) || 1802_knownSymbols.DelegateType.IsAssignableFrom(type) ||