40 references to StringParsableTypeKind
Microsoft.Extensions.Configuration.Binder.SourceGeneration (40)
ConfigurationBindingGenerator.Parser.cs (17)
191else if (IsParsableFromString(type, out StringParsableTypeKind specialTypeKind)) 237private bool IsParsableFromString(ITypeSymbol type, out StringParsableTypeKind typeKind) 241typeKind = StringParsableTypeKind.ByteArray; 247typeKind = StringParsableTypeKind.None; 253typeKind = StringParsableTypeKind.Enum; 264typeKind = StringParsableTypeKind.AssignFromSectionValue; 270typeKind = StringParsableTypeKind.Parse; 277typeKind = StringParsableTypeKind.Float; 289typeKind = StringParsableTypeKind.Integer; 294typeKind = StringParsableTypeKind.ParseInvariant; 301typeKind = StringParsableTypeKind.CultureInfo; 308typeKind = StringParsableTypeKind.ParseInvariant; 314typeKind = StringParsableTypeKind.ParseInvariant; 318typeKind = StringParsableTypeKind.Uri; 323typeKind = StringParsableTypeKind.Parse; 327typeKind = StringParsableTypeKind.None; 335typeKind = StringParsableTypeKind.None;
Emitter\CoreBindingHelpers.cs (19)
126checkForNullSectionValue: stringParsableType.StringParsableTypeKind is not StringParsableTypeKind.AssignFromSectionValue); 391case ParsableFromStringSpec { StringParsableTypeKind: StringParsableTypeKind.AssignFromSectionValue }: 487if (type.StringParsableTypeKind is not StringParsableTypeKind.Enum) 618StringParsableTypeKind typeKind = type.StringParsableTypeKind; 626case StringParsableTypeKind.ByteArray: 631case StringParsableTypeKind.Integer: 636case StringParsableTypeKind.Float: 641case StringParsableTypeKind.Parse: 646case StringParsableTypeKind.ParseInvariant: 651case StringParsableTypeKind.CultureInfo: 656case StringParsableTypeKind.Uri: 805if (keyType.StringParsableTypeKind is not StringParsableTypeKind.AssignFromSectionValue) 1018(stringParsableType.StringParsableTypeKind != StringParsableTypeKind.AssignFromSectionValue || hasDeclaredDefault); 1355StringParsableTypeKind typeKind = type.StringParsableTypeKind; 1356Debug.Assert(typeKind is not StringParsableTypeKind.None); 1360StringParsableTypeKind.AssignFromSectionValue => sectionValueExpr, 1361StringParsableTypeKind.Enum => $"ParseEnum<{type.TypeRef.FullyQualifiedName}>({sectionValueExpr}, {sectionPathExpr})", 1366if (!checkForNullSectionValue || typeKind == StringParsableTypeKind.AssignFromSectionValue) 1376if (typeKind == StringParsableTypeKind.ByteArray)
Specs\BindingHelperInfo.cs (1)
253if (type.StringParsableTypeKind is not StringParsableTypeKind.AssignFromSectionValue)
Specs\TypeIndex.cs (2)
120Debug.Assert(type.StringParsableTypeKind is not StringParsableTypeKind.AssignFromSectionValue); 122if (type.StringParsableTypeKind is StringParsableTypeKind.ByteArray)
Specs\Types\SimpleTypeSpec.cs (1)
22public required StringParsableTypeKind StringParsableTypeKind { get; init; }