RuntimeSource\Configuration.Binder\ConfigurationBindingGenerator.Parser.cs (53)
43if (_typeSymbols is not { IConfiguration: { }, ConfigurationBinder: { } })
68!_typeSymbols.Compilation.IsSymbolAccessibleWithin(type, _typeSymbols.Compilation.Assembly) ||
88if (SymbolEqualityComparer.Default.Equals(candidateBinderType, _typeSymbols.ConfigurationBinder))
92else if (SymbolEqualityComparer.Default.Equals(candidateBinderType, _typeSymbols.OptionsBuilderConfigurationExtensions))
96else if (SymbolEqualityComparer.Default.Equals(candidateBinderType, _typeSymbols.OptionsConfigurationServiceCollectionExtensions))
201else if (SymbolEqualityComparer.Default.Equals(type, _typeSymbols.IConfigurationSection))
295if (SymbolEqualityComparer.Default.Equals(type, _typeSymbols.CultureInfo))
299else if (SymbolEqualityComparer.Default.Equals(type, _typeSymbols.DateTimeOffset) ||
300SymbolEqualityComparer.Default.Equals(type, _typeSymbols.DateOnly) ||
301SymbolEqualityComparer.Default.Equals(type, _typeSymbols.TimeOnly) ||
302SymbolEqualityComparer.Default.Equals(type, _typeSymbols.TimeSpan))
306else if (SymbolEqualityComparer.Default.Equals(type, _typeSymbols.Int128) ||
307SymbolEqualityComparer.Default.Equals(type, _typeSymbols.Half) ||
308SymbolEqualityComparer.Default.Equals(type, _typeSymbols.UInt128))
312else if (SymbolEqualityComparer.Default.Equals(type, _typeSymbols.Uri))
316else if (SymbolEqualityComparer.Default.Equals(type, _typeSymbols.Version) ||
317SymbolEqualityComparer.Default.Equals(type, _typeSymbols.Guid))
403else if (_typeSymbols.GenericIDictionary is not null && GetInterface(type, _typeSymbols.GenericIDictionary_Unbound) is not null)
412else if (_typeSymbols.Dictionary is not null &&
413(IsInterfaceMatch(type, _typeSymbols.GenericIDictionary_Unbound) || IsInterfaceMatch(type, _typeSymbols.IDictionary)))
419else if (_typeSymbols.Dictionary is not null && IsInterfaceMatch(type, _typeSymbols.IReadOnlyDictionary_Unbound))
470else if (_typeSymbols.GenericICollection is not null && GetInterface(type, _typeSymbols.GenericICollection_Unbound) is not null)
479else if ((IsInterfaceMatch(type, _typeSymbols.GenericICollection_Unbound) || IsInterfaceMatch(type, _typeSymbols.GenericIList_Unbound)))
485else if (IsInterfaceMatch(type, _typeSymbols.GenericIEnumerable_Unbound))
491else if (IsInterfaceMatch(type, _typeSymbols.ISet_Unbound))
497else if (IsInterfaceMatch(type, _typeSymbols.IReadOnlySet_Unbound))
503else if (IsInterfaceMatch(type, _typeSymbols.IReadOnlyList_Unbound) || IsInterfaceMatch(type, _typeSymbols.IReadOnlyCollection_Unbound))
527Conversion conversion = _typeSymbols.Compilation.ClassifyConversion(source, dest);
547if (SymbolEqualityComparer.Default.Equals(_typeSymbols.IntPtr, type) ||
548SymbolEqualityComparer.Default.Equals(_typeSymbols.UIntPtr, type) ||
549SymbolEqualityComparer.Default.Equals(_typeSymbols.SerializationInfo, type) ||
550SymbolEqualityComparer.Default.Equals(_typeSymbols.ParameterInfo, type) ||
551IsAssignableTo(type, _typeSymbols.MemberInfo) ||
552IsAssignableTo(type, _typeSymbols.Delegate))
674AttributeData? attributeData = property.GetAttributes().FirstOrDefault(a => SymbolEqualityComparer.Default.Equals(a.AttributeClass, _typeSymbols.ConfigurationKeyNameAttribute));
755INamedTypeSymbol? candidate = GetInterface(type, _typeSymbols.GenericIEnumerable_Unbound);
769INamedTypeSymbol? candidate = GetInterface(type, _typeSymbols.GenericIDictionary_Unbound) ?? GetInterface(type, _typeSymbols.IReadOnlyDictionary_Unbound);
778if (IsInterfaceMatch(type, _typeSymbols.IDictionary))
780keyType = _typeSymbols.String;
781elementType = _typeSymbols.String;
791type is INamedTypeSymbol namedType && GetInterface(namedType, _typeSymbols.IEnumerable) is not null;
942_emitGenericParseEnum = _typeSymbols.Enum.GetMembers("Parse").Any(m => m is IMethodSymbol methodSymbol && methodSymbol.IsGenericMethod);
950if (_typeSymbols.ArgumentNullException is not null)
952var throwIfNullMethods = _typeSymbols.ArgumentNullException.GetMembers("ThrowIfNull");
963&& secondParam.Name == "paramName" && secondParam.Type.Equals(_typeSymbols.String, SymbolEqualityComparer.Default))