649 references to TypedConstantKind
Aspire.Hosting.Analyzers (1)
ILLink.RoslynAnalyzer (1)
Microsoft.AspNetCore.App.Analyzers (1)
Microsoft.AspNetCore.Mvc.Analyzers (2)
Microsoft.AspNetCore.Mvc.Api.Analyzers (9)
Microsoft.CodeAnalysis (31)
MetadataReader\MetadataDecoder.cs (11)
1528TypedConstantKind kind = PEModule.CrackStringInAttributeValue(out s, ref argReader) ?
1529TypedConstantKind.Primitive :
1530TypedConstantKind.Error;
1540return CreateTypedConstant(type, TypedConstantKind.Type, serializedType);
1547private static TypedConstantKind GetPrimitiveOrEnumTypedConstantKind(TypeSymbol type)
1549return (type.TypeKind == TypeKind.Enum) ? TypedConstantKind.Enum : TypedConstantKind.Primitive;
2146return new TypedConstant(type, TypedConstantKind.Error, null);
2153private static TypedConstant CreateTypedConstant(TypeSymbol type, TypedConstantKind kind, object value)
2157return new TypedConstant(type, TypedConstantKind.Error, null);
2163private static TypedConstant CreateTypedConstant(TypeSymbol type, TypedConstantKind kind, bool value)
Microsoft.CodeAnalysis.Analyzers (4)
Microsoft.CodeAnalysis.BannedApiAnalyzers (3)
Microsoft.CodeAnalysis.CodeStyle (4)
Microsoft.CodeAnalysis.CSharp (118)
Binder\Binder_Attributes.cs (22)
731if (reorderedArgument.Kind == TypedConstantKind.Error)
735else if (reorderedArgument.Kind == TypedConstantKind.Array &&
749Debug.Assert(hasErrors || reorderedArguments.All(arg => arg.Kind != TypedConstantKind.Error));
848var typedConstantKind = node.Type.GetAttributeParameterTypedConstantKind(_binder.Compilation);
850return VisitExpression(node, typedConstantKind, diagnostics, ref attrHasErrors, curArgumentHasErrors || typedConstantKind == TypedConstantKind.Error);
853private TypedConstant VisitExpression(BoundExpression node, TypedConstantKind typedConstantKind, BindingDiagnosticBag diagnostics, ref bool attrHasErrors, bool curArgumentHasErrors)
862typedConstantKind = TypedConstantKind.Error;
879return CreateTypedConstant(node, TypedConstantKind.Error, diagnostics, ref attrHasErrors, curArgumentHasErrors);
885var typedConstantKind = type.GetAttributeParameterTypedConstantKind(_binder.Compilation);
901return new TypedConstant(spread.Expression.Type, TypedConstantKind.Error, value: null);
935var typedConstantKind = operandType.GetAttributeParameterTypedConstantKind(_binder.Compilation);
940return CreateTypedConstant(node, TypedConstantKind.Error, diagnostics, ref attrHasErrors, curArgumentHasErrors);
976return CreateTypedConstant(node, TypedConstantKind.Type, diagnostics, ref attrHasErrors, curArgumentHasErrors, simpleValue: node.SourceType.Type);
986return CreateTypedConstant(node, TypedConstantKind.Error, diagnostics, ref attrHasErrors, curArgumentHasErrors);
990var typedConstantKind = type.GetAttributeParameterTypedConstantKind(_binder.Compilation);
1008initializer = ImmutableArray.Create(CreateTypedConstant(node, TypedConstantKind.Error, diagnostics, ref attrHasErrors, curArgumentHasErrors));
1020private static TypedConstant CreateTypedConstant(BoundExpression node, TypedConstantKind typedConstantKind, BindingDiagnosticBag diagnostics, ref bool attrHasErrors, bool curArgumentHasErrors,
1026if (typedConstantKind != TypedConstantKind.Error && type.ContainsTypeParameter())
1047typedConstantKind = TypedConstantKind.Error;
1050if (typedConstantKind == TypedConstantKind.Error)
1058return new TypedConstant(type, TypedConstantKind.Error, null);
1060else if (typedConstantKind == TypedConstantKind.Array)
Emitter\Model\PEModuleBuilder.cs (5)
1743var value = flagsBuilder.SelectAsArray((flag, byteType) => new TypedConstant(byteType, TypedConstantKind.Primitive, flag), byteType);
1765ImmutableArray.Create(new TypedConstant(byteType, TypedConstantKind.Primitive, nullableValue)));
1785ImmutableArray.Create(new TypedConstant(Compilation.GetSpecialType(SpecialType.System_Byte), TypedConstantKind.Primitive, value)));
1827var transformFlags = builder.SelectAsArray((flag, constantType) => new TypedConstant(constantType, TypedConstantKind.Primitive, flag), booleanType);
1916[new TypedConstant(Compilation.GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, markerName)]);
Symbols\Compilation_WellKnownMembers.cs (13)
477new TypedConstant(systemByte, TypedConstantKind.Primitive, scale),
478new TypedConstant(systemByte, TypedConstantKind.Primitive, (byte)(isNegative ? 128 : 0)),
479new TypedConstant(systemUnit32, TypedConstantKind.Primitive, high),
480new TypedConstant(systemUnit32, TypedConstantKind.Primitive, mid),
481new TypedConstant(systemUnit32, TypedConstantKind.Primitive, low)
487var ticks = new TypedConstant(GetSpecialType(SpecialType.System_Int64), TypedConstantKind.Primitive, value.Ticks);
504TypedConstantKind.Enum,
793var typedConstantDebugMode = new TypedConstant(debuggingModesType, TypedConstantKind.Enum, constantVal);
846new TypedConstant(attributeTargetsType, TypedConstantKind.Enum, targets));
848new KeyValuePair<WellKnownMember, TypedConstant>(WellKnownMember.System_AttributeUsageAttribute__AllowMultiple, new TypedConstant(boolType, TypedConstantKind.Primitive, allowMultiple)),
849new KeyValuePair<WellKnownMember, TypedConstant>(WellKnownMember.System_AttributeUsageAttribute__Inherited, new TypedConstant(boolType, TypedConstantKind.Primitive, inherited)));
879new TypedConstant(constantType, TypedConstantKind.Primitive, name), stringType);
926var result = flagsBuilder.SelectAsArray((flag, constantType) => new TypedConstant(constantType, TypedConstantKind.Primitive, flag), booleanType);
Symbols\Source\SourceAssemblySymbol.cs (6)
1829var typedConstantRequestMinimum = new TypedConstant(securityActionType, TypedConstantKind.Enum, constantValue);
1835var typedConstantTrue = new TypedConstant(boolType, TypedConstantKind.Primitive, value: true);
1975var typedConstantNoStringInterning = new TypedConstant(int32Type, TypedConstantKind.Primitive, Cci.Constants.CompilationRelaxations_NoStringInterning);
1994var typedConstantTrue = new TypedConstant(boolType, TypedConstantKind.Primitive, value: true);
2028var typedConstant = new TypedConstant(stringType, TypedConstantKind.Primitive, _compilation.Options.CryptoKeyContainer);
2038var typedConstant = new TypedConstant(stringType, TypedConstantKind.Primitive, _compilation.Options.CryptoKeyFile);
Symbols\Source\SourceNamedTypeSymbol.cs (7)
1036Debug.Assert(attributeData.CommonConstructorArguments[0].Kind == TypedConstantKind.Type);
1351Debug.Assert(argument.Kind == TypedConstantKind.Type);
1740new TypedConstant(compilation.GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, PEModule.ByRefLikeMarker), // message
1741new TypedConstant(compilation.GetSpecialType(SpecialType.System_Boolean), TypedConstantKind.Primitive, true)), // error=true
1746ImmutableArray.Create(new TypedConstant(compilation.GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, nameof(CompilerFeatureRequiredFeatures.RefStructs))),
1759var defaultMemberNameConstant = new TypedConstant(compilation.GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, defaultMemberName);
1795ImmutableArray.Create(new TypedConstant(compilation.GetWellKnownType(WellKnownType.System_Type), TypedConstantKind.Type, originalType)),
Microsoft.CodeAnalysis.CSharp.CodeStyle (2)
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (5)
Microsoft.CodeAnalysis.CSharp.Emit3.UnitTests (229)
Attributes\AttributeTests.cs (178)
491attrs[0].VerifyValue(0, TypedConstantKind.Primitive, "Roslyn.Compilers.UnitTests");
493attrs[1].VerifyValue(0, TypedConstantKind.Primitive, "Roslyn.Compilers.CSharp");
495attrs[2].VerifyValue(0, TypedConstantKind.Primitive, "Roslyn.Compilers.CSharp.UnitTests");
497attrs[3].VerifyValue(0, TypedConstantKind.Primitive, "Roslyn.Compilers.CSharp.Test.Utilities");
499attrs[4].VerifyValue(0, TypedConstantKind.Primitive, "Roslyn.Compilers.VisualBasic");
654Assert.Equal(TypedConstantKind.Array, attributeData.ConstructorArguments.Single().Kind);
684Assert.Equal(TypedConstantKind.Error, attrs[0].ConstructorArguments.Single().Kind);
1029Assert.Equal(TypedConstantKind.Array, arguments0[2].Kind);
1036Assert.Equal(TypedConstantKind.Array, arguments1[2].Kind);
1435a.VerifyValue(0, TypedConstantKind.Enum, (int)System.Configuration.Assemblies.AssemblyHashAlgorithm.MD5);
1439a.VerifyValue(0, TypedConstantKind.Primitive, "");
1443a.VerifyValue(0, TypedConstantKind.Primitive, true);
1447a.VerifyValue(0, TypedConstantKind.Enum, (int)AssemblyNameFlags.Retargetable);
1451a.VerifyValue(0, TypedConstantKind.Primitive, "MyKey.snk");
1455a.VerifyValue(0, TypedConstantKind.Primitive, "Key Name");
1459a.VerifyValue(0, TypedConstantKind.Primitive, "1.2.*");
1463a.VerifyValue(0, TypedConstantKind.Primitive, "4.3.2.100");
1520attrs.First().VerifyValue<object>(0, TypedConstantKind.Primitive, null);
1606attrs.First().VerifyValue(0, TypedConstantKind.Primitive, true);
1710attrs.First().VerifyValue<object>(0, TypedConstantKind.Type, typeof(object));
1711attrs.First().VerifyNamedArgumentValue<object>(0, "O", TypedConstantKind.Primitive, null);
1716attrs.First().VerifyValue(0, TypedConstantKind.Array, new object[] { typeof(string) });
1721attrs.First().VerifyValue(0, TypedConstantKind.Array, new object[] { 1, "two", typeof(string), 3.1415926 });
1724attrs.First().VerifyValue(0, TypedConstantKind.Array, new object[] { new object[] { typeof(string) } });
3106attrs[1].VerifyNamedArgumentValue<ushort>(0, "UShortField", TypedConstantKind.Primitive, 1234);
3115attrs[0].VerifyValue(0, TypedConstantKind.Enum, (int)FileMode.Open);
3116attrs[0].VerifyValue(1, TypedConstantKind.Enum, (int)(BindingFlags.DeclaredOnly | BindingFlags.Public));
3117attrs[0].VerifyNamedArgumentValue<uint>(0, "UIntField", TypedConstantKind.Primitive, 1230);
3122attrs[0].VerifyValue(0, TypedConstantKind.Array, new char[] { 'q', 'c' });
3131attrs[0].VerifyValue<object>(0, TypedConstantKind.Primitive, null);
3132attrs[0].VerifyValue<long>(1, TypedConstantKind.Primitive, 256);
3133attrs[0].VerifyValue<float>(2, TypedConstantKind.Primitive, 0);
3134attrs[0].VerifyValue<short>(3, TypedConstantKind.Primitive, -1);
3135attrs[0].VerifyNamedArgumentValue<ulong[]>(0, "AryField", TypedConstantKind.Array, new ulong[] { 0, 1, 12345657 });
3137attrs[1].VerifyValue<object>(0, TypedConstantKind.Type, typeof(Dictionary<string, int>));
3138attrs[1].VerifyValue<long>(1, TypedConstantKind.Primitive, 265);
3139attrs[1].VerifyValue<float>(2, TypedConstantKind.Primitive, -0.0001f);
3140attrs[1].VerifyValue<short>(3, TypedConstantKind.Primitive, 2);
3177attrs.First().VerifyValue<object>(0, TypedConstantKind.Array, new object[] { 0, "", null });
3178attrs.First().VerifyValue<byte>(1, TypedConstantKind.Primitive, 255);
3179attrs.First().VerifyValue<sbyte>(2, TypedConstantKind.Primitive, -128);
3180attrs.First().VerifyNamedArgumentValue<object[]>(0, "AryProp", TypedConstantKind.Array, new object[] { new object[] { "", typeof(IList<string>) } });
3186attrs[0].VerifyValue<object>(0, TypedConstantKind.Type, typeof(string[,,]));
3219attrs.First().VerifyValue<object>(0, TypedConstantKind.Array, new object[] { 1, null, "Hi" });
3220attrs.First().VerifyNamedArgumentValue<object>(0, "ObjectField", TypedConstantKind.Primitive, 2);
3451attrs.First().VerifyValue<char[]>(0, TypedConstantKind.Array, new char[] { ' ' });
3452attrs.First().VerifyValue<string[]>(1, TypedConstantKind.Array, new string[] { "" });
3464attrs.First().VerifyValue<char[]>(0, TypedConstantKind.Array, new char[] { ' ' });
3465attrs.First().VerifyValue<string[]>(1, TypedConstantKind.Array, new string[] { "" });
3533attr.VerifyValue<string>(0, TypedConstantKind.Primitive, "MultipleArgumentsToParamsParameter");
3534attr.VerifyValue<int[]>(1, TypedConstantKind.Array, new int[] { 4, 5, 6 });
3540attr.VerifyValue<string>(0, TypedConstantKind.Primitive, "NoArgumentsToParamsParameter");
3541attr.VerifyValue<int[]>(1, TypedConstantKind.Array, new int[] { });
3547attr.VerifyValue<string>(0, TypedConstantKind.Primitive, "NullArgumentToParamsParameter");
3548attr.VerifyValue<int[]>(1, TypedConstantKind.Array, null);
3590attrs.First().VerifyValue<char[]>(0, TypedConstantKind.Array, new char[] { ' ' });
3591attrs.First().VerifyValue<string[]>(1, TypedConstantKind.Array, new string[] { "whatever" });
3603attrs.First().VerifyValue<char[]>(0, TypedConstantKind.Array, new char[] { ' ' });
3604attrs.First().VerifyValue<string[]>(1, TypedConstantKind.Array, new string[] { "whatever" });
3639attrs.First().VerifyValue(0, TypedConstantKind.Type, typeof(Object));
3684attrs.First().VerifyValue(0, TypedConstantKind.Array, (object[])null);
4086attr.VerifyValue(0, TypedConstantKind.Enum, (int)(AttributeTargets.Field | AttributeTargets.Event));
4089attr.VerifyNamedArgumentValue(0, "Inherited", TypedConstantKind.Primitive, false);
4090attr.VerifyNamedArgumentValue(1, "AllowMultiple", TypedConstantKind.Primitive, true);
4140attrs.First().VerifyValue(0, TypedConstantKind.Primitive, 4);
4141attrs.First().VerifyValue(1, TypedConstantKind.Primitive, 5);
4143attrs.First().VerifyNamedArgumentValue(0, "X", TypedConstantKind.Primitive, 6);
4183attrs.First().VerifyValue(0, TypedConstantKind.Primitive, 3);
4184attrs.First().VerifyValue(1, TypedConstantKind.Primitive, 4);
4185attrs.First().VerifyValue(2, TypedConstantKind.Primitive, 5);
4187attrs.First().VerifyNamedArgumentValue(0, "X", TypedConstantKind.Primitive, 6);
4229attrs.First().VerifyValue(0, TypedConstantKind.Primitive, 2);
4230attrs.First().VerifyValue(1, TypedConstantKind.Primitive, 1);
4272attrs.First().VerifyValue(0, TypedConstantKind.Primitive, 3);
4273attrs.First().VerifyValue(1, TypedConstantKind.Primitive, 4);
4274attrs.First().VerifyValue(2, TypedConstantKind.Primitive, 5);
4276attrs.First().VerifyNamedArgumentValue(0, "X", TypedConstantKind.Primitive, 6);
4318attr.VerifyValue<int>(0, TypedConstantKind.Primitive, 2);
4521attrs.First().VerifyValue(0, TypedConstantKind.Primitive, 2);
4527attrs.First().VerifyValue(0, TypedConstantKind.Primitive, 2);
4576attrs.First().VerifyValue(0, TypedConstantKind.Type, cClass.AsUnboundGenericType());
4616attrs.First().VerifyValue(0, TypedConstantKind.Type, bClass.AsUnboundGenericType());
4968enumerator.Current.VerifyNamedArgumentValue(0, "X", TypedConstantKind.Enum, (int)new DayOfWeek());
4970enumerator.Current.VerifyNamedArgumentValue(0, "X", TypedConstantKind.Primitive, new bool());
4972enumerator.Current.VerifyNamedArgumentValue(0, "X", TypedConstantKind.Primitive, new sbyte());
4974enumerator.Current.VerifyNamedArgumentValue(0, "X", TypedConstantKind.Primitive, new byte());
4976enumerator.Current.VerifyNamedArgumentValue(0, "X", TypedConstantKind.Primitive, new short());
4978enumerator.Current.VerifyNamedArgumentValue(0, "X", TypedConstantKind.Primitive, new ushort());
4980enumerator.Current.VerifyNamedArgumentValue(0, "X", TypedConstantKind.Primitive, new int());
4982enumerator.Current.VerifyNamedArgumentValue(0, "X", TypedConstantKind.Primitive, new uint());
4984enumerator.Current.VerifyNamedArgumentValue(0, "X", TypedConstantKind.Primitive, new char());
4986enumerator.Current.VerifyNamedArgumentValue(0, "X", TypedConstantKind.Primitive, new float());
4988enumerator.Current.VerifyNamedArgumentValue(0, "X", TypedConstantKind.Primitive, new Single());
4990enumerator.Current.VerifyNamedArgumentValue(0, "X", TypedConstantKind.Primitive, new double());
5255attr.VerifyValue<object>(0, TypedConstantKind.Primitive, null);
5261attr.VerifyValue<int>(0, TypedConstantKind.Primitive, 1);
5316attr.VerifyValue<object>(0, TypedConstantKind.Primitive, null);
5320attr.VerifyValue<object>(0, TypedConstantKind.Primitive, null);
5328attr.VerifyValue<object>(0, TypedConstantKind.Primitive, null);
5332attr.VerifyValue<object>(0, TypedConstantKind.Primitive, null);
5495attrs.First().VerifyValue<object>(0, TypedConstantKind.Type, typeArg);
5500attrs.First().VerifyValue<object>(0, TypedConstantKind.Type, typeArg);
5506attrs.First().VerifyValue<object>(0, TypedConstantKind.Type, typeArg);
5513attrs.First().VerifyValue<object>(0, TypedConstantKind.Type, typeArg);
5522attrs.First().VerifyValue<object>(0, TypedConstantKind.Type, typeArg);
5529attrs.First().VerifyValue<object>(0, TypedConstantKind.Type, typeArg);
5618attributes[0].VerifyValue(0, TypedConstantKind.Primitive, value);
9415attrs1[0].VerifyValue(0, TypedConstantKind.Array, value1);
9416attrs1[1].VerifyValue(0, TypedConstantKind.Array, value1);
9417attrs1[2].VerifyValue(0, TypedConstantKind.Array, value1);
9420attrs2[0].VerifyValue(0, TypedConstantKind.Array, (object[])null);
9421attrs2[1].VerifyValue(0, TypedConstantKind.Primitive, (object)null);
9422attrs2[2].VerifyValue(0, TypedConstantKind.Array, (object[])null);
9426attrs3[0].VerifyValue(0, TypedConstantKind.Array, value3);
9427attrs3[1].VerifyValue(0, TypedConstantKind.Array, value3);
9428attrs3[2].VerifyValue(0, TypedConstantKind.Array, value3);
9496attrs1[0].VerifyValue(0, TypedConstantKind.Array, value1);
9497attrs1[1].VerifyValue(0, TypedConstantKind.Array, value1);
9498attrs1[2].VerifyValue(0, TypedConstantKind.Array, value1);
9502attrs2[0].VerifyValue(0, TypedConstantKind.Array, (object[])null);
9503attrs2[1].VerifyValue(0, TypedConstantKind.Primitive, (object)null);
9504attrs2[2].VerifyValue(0, TypedConstantKind.Array, (object[])null);
9509attrs3[0].VerifyValue(0, TypedConstantKind.Array, value3);
9510attrs3[1].VerifyValue(0, TypedConstantKind.Array, value3);
9511attrs3[2].VerifyValue(0, TypedConstantKind.Array, value3);
9514attrs4[0].VerifyValue(0, TypedConstantKind.Array, new object[] { "A" });
9515attrs4[1].VerifyValue(0, TypedConstantKind.Primitive, "A");
9516attrs4[2].VerifyValue(0, TypedConstantKind.Primitive, "A");
9580attrs1[0].VerifyValue(0, TypedConstantKind.Array, value1);
9581attrs1[1].VerifyValue(0, TypedConstantKind.Array, value1);
9582attrs1[2].VerifyValue(0, TypedConstantKind.Array, value1);
9585attrs2[0].VerifyValue(0, TypedConstantKind.Array, (object[])null);
9586attrs2[1].VerifyValue(0, TypedConstantKind.Array, (object[])null);
9587attrs2[2].VerifyValue(0, TypedConstantKind.Array, (string[])null);
9591attrs3[0].VerifyValue(0, TypedConstantKind.Array, value3);
9592attrs3[1].VerifyValue(0, TypedConstantKind.Array, value3);
9596attrs4[0].VerifyValue(0, TypedConstantKind.Array, value4);
9597attrs4[1].VerifyValue(0, TypedConstantKind.Array, value4);
9598attrs4[2].VerifyValue(0, TypedConstantKind.Array, value4);
9653attrs1[0].VerifyValue(0, TypedConstantKind.Array, value1);
9654attrs1[1].VerifyValue(0, TypedConstantKind.Array, value1);
9657attrs2[0].VerifyValue(0, TypedConstantKind.Array, (object[])null);
9658attrs2[1].VerifyValue(0, TypedConstantKind.Primitive, (object)null);
9659attrs2[2].VerifyValue(0, TypedConstantKind.Array, (object[])null);
9663attrs3[0].VerifyValue(0, TypedConstantKind.Array, value3);
9664attrs3[1].VerifyValue(0, TypedConstantKind.Array, value3);
9665attrs3[2].VerifyValue(0, TypedConstantKind.Array, value3);
9727attrs1[0].VerifyValue(0, TypedConstantKind.Array, value1);
9728attrs1[1].VerifyValue(0, TypedConstantKind.Array, value1);
9732attrs2[0].VerifyValue(0, TypedConstantKind.Array, (object[])null);
9733attrs2[1].VerifyValue(0, TypedConstantKind.Primitive, (object)null);
9734attrs2[2].VerifyValue(0, TypedConstantKind.Array, (object[])null);
9739attrs3[0].VerifyValue(0, TypedConstantKind.Array, value3);
9740attrs3[1].VerifyValue(0, TypedConstantKind.Array, value3);
9741attrs3[2].VerifyValue(0, TypedConstantKind.Array, value3);
9744attrs4[0].VerifyValue(0, TypedConstantKind.Array, new object[] { 1 });
9745attrs4[1].VerifyValue(0, TypedConstantKind.Primitive, 1);
9746attrs4[2].VerifyValue(0, TypedConstantKind.Primitive, 1);
9807attrs1[0].VerifyValue(0, TypedConstantKind.Array, value1);
9808attrs1[1].VerifyValue(0, TypedConstantKind.Array, new object[] { value1 });
9809attrs1[2].VerifyValue(0, TypedConstantKind.Array, value1);
9813attrs2[0].VerifyValue(0, TypedConstantKind.Array, value2);
9814attrs2[1].VerifyValue(0, TypedConstantKind.Array, value2);
9818attrs3[0].VerifyValue(0, TypedConstantKind.Array, value3);
9819attrs3[1].VerifyValue(0, TypedConstantKind.Array, value3);
9823attrs4[0].VerifyValue(0, TypedConstantKind.Array, value4);
9824attrs4[1].VerifyValue(0, TypedConstantKind.Array, value4);
9825attrs4[2].VerifyValue(0, TypedConstantKind.Array, value4);
9877attrs[0].VerifyValue(0, TypedConstantKind.Array, nullArray);
9879attrs[1].VerifyValue(0, TypedConstantKind.Array, emptyArray);
9881attrs[2].VerifyValue(0, TypedConstantKind.Array, nullArray);
9882attrs[2].VerifyNamedArgumentValue(0, fieldName, TypedConstantKind.Array, nullArray);
9884attrs[3].VerifyValue(0, TypedConstantKind.Array, emptyArray);
9885attrs[3].VerifyNamedArgumentValue(0, fieldName, TypedConstantKind.Array, nullArray);
9887attrs[4].VerifyValue(0, TypedConstantKind.Array, nullArray);
9888attrs[4].VerifyNamedArgumentValue(0, fieldName, TypedConstantKind.Array, emptyArray);
9890attrs[5].VerifyValue(0, TypedConstantKind.Array, emptyArray);
9891attrs[5].VerifyNamedArgumentValue(0, fieldName, TypedConstantKind.Array, emptyArray);
Attributes\AttributeTests_WellKnownAttributes.cs (43)
141attrSym.VerifyValue(0, TypedConstantKind.Primitive, 1);
165attrSym.VerifyValue(0, TypedConstantKind.Primitive, "ABCDEF5D-2448-447A-B786-64682CBEF123");
168attrSym.VerifyValue(0, TypedConstantKind.Enum, (int)ComInterfaceType.InterfaceIsIUnknown);
171attrSym.VerifyValue(0, TypedConstantKind.Type, typeof(object));
174attrSym.VerifyValue(0, TypedConstantKind.Enum, (int)TypeLibTypeFlags.FAggregatable);
177attrSym.VerifyValue(0, TypedConstantKind.Primitive, false);
178attrSym.VerifyNamedArgumentValue(0, "ThrowOnUnmappableChar", TypedConstantKind.Primitive, true);
267attrSym.VerifyValue(0, TypedConstantKind.Primitive, false);
270attrSym.VerifyValue(0, TypedConstantKind.Enum, (int)CallingConvention.StdCall);
273attrSym.VerifyNamedArgumentValue(0, "BestFitMapping", TypedConstantKind.Primitive, true);
274attrSym.VerifyNamedArgumentValue(1, "CharSet", TypedConstantKind.Enum, (int)CharSet.Ansi);
275attrSym.VerifyNamedArgumentValue(2, "SetLastError", TypedConstantKind.Primitive, true);
276attrSym.VerifyNamedArgumentValue(3, "ThrowOnUnmappableChar", TypedConstantKind.Primitive, true);
283attrSym.VerifyValue(0, TypedConstantKind.Type, typeof(object));
286attrSym.VerifyValue(0, TypedConstantKind.Primitive, "ProgId");
290attrSym.VerifyValue(0, TypedConstantKind.Primitive, 123);
293attrSym.VerifyValue(0, TypedConstantKind.Primitive, 1);
307attrSym.VerifyValue(0, TypedConstantKind.Primitive, true);
310attrSym.VerifyValue(1, TypedConstantKind.Primitive, "EGoo, InteropAttribute, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null");
318attrSym.VerifyValue(0, TypedConstantKind.Enum, (int)TypeLibVarFlags.FDisplayBind);
322attrSym.VerifyValue(0, TypedConstantKind.Primitive, "message");
323attrSym.VerifyValue(1, TypedConstantKind.Primitive, false);
417attrSym.VerifyValue(0, TypedConstantKind.Primitive, 99uL);
425attrSym.VerifyValue(0, TypedConstantKind.Primitive, "Ref");
436attrSym.VerifyValue(0, TypedConstantKind.Primitive, 0f);
456attrSym.VerifyValue(2, TypedConstantKind.Primitive, 100);
470attrSym.VerifyValue(0, TypedConstantKind.Enum, (int)LayoutKind.Explicit);
472attrSym.VerifyNamedArgumentValue(0, "Size", TypedConstantKind.Primitive, 16);
473attrSym.VerifyNamedArgumentValue(1, "Pack", TypedConstantKind.Primitive, 8);
474attrSym.VerifyNamedArgumentValue(2, "CharSet", TypedConstantKind.Enum, (int)CharSet.Unicode);
481attrSym.VerifyValue(0, TypedConstantKind.Enum, (int)UnmanagedType.I8);
483attrSym.VerifyValue(0, TypedConstantKind.Primitive, 0);
2480attrSym.VerifyValue(0, TypedConstantKind.Primitive, "unmanaged.dll");
2482attrSym.VerifyNamedArgumentValue(0, "CallingConvention", TypedConstantKind.Enum, (int)CallingConvention.FastCall);
2483attrSym.VerifyNamedArgumentValue(1, "SetLastError", TypedConstantKind.Primitive, true);
2488attrSym.VerifyValue(0, TypedConstantKind.Primitive, "user32.dll");
2490attrSym.VerifyNamedArgumentValue(0, "CharSet", TypedConstantKind.Enum, (int)CharSet.Unicode);
2491attrSym.VerifyNamedArgumentValue(1, "ExactSpelling", TypedConstantKind.Primitive, false);
2492attrSym.VerifyNamedArgumentValue(2, "EntryPoint", TypedConstantKind.Primitive, "MessageBox");
5156attrSym.VerifyValue(0, TypedConstantKind.Enum, (int)AttributeTargets.Class);
5158attrSym.VerifyNamedArgumentValue(0, "AllowMultiple", TypedConstantKind.Primitive, true);
5162attrSym.VerifyValue(0, TypedConstantKind.Enum, (int)AttributeTargets.Class);
5164attrSym.VerifyNamedArgumentValue(0, "AllowMultiple", TypedConstantKind.Primitive, false);
Microsoft.CodeAnalysis.CSharp.Features (2)
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (111)
Symbols\Metadata\PE\LoadingAttributes.cs (94)
61aBoolInst.VerifyValue(0, TypedConstantKind.Primitive, true);
64aByteInst.VerifyValue(0, TypedConstantKind.Primitive, Convert.ToByte(1));
67aCharInst.VerifyValue(0, TypedConstantKind.Primitive, 'a');
70aSingleInst.VerifyValue(0, TypedConstantKind.Primitive, 3.14159f);
73aDoubleInst.VerifyValue(0, TypedConstantKind.Primitive, 3.1415926);
76aInt16Inst.VerifyValue(0, TypedConstantKind.Primitive, (Int16)16);
79aInt32Inst.VerifyValue(0, TypedConstantKind.Primitive, 32);
82aInt64Inst.VerifyValue(0, TypedConstantKind.Primitive, 64L);
85aObjectInst.VerifyValue(0, TypedConstantKind.Primitive, "object");
88aStringInst.VerifyValue(0, TypedConstantKind.Primitive, "assembly");
91aTypeInst.VerifyValue(0, TypedConstantKind.Type, typeof(string));
133aBoolInst.VerifyValue(0, TypedConstantKind.Primitive, true);
136aByteInst.VerifyValue(0, TypedConstantKind.Primitive, Convert.ToByte(1));
139aCharInst.VerifyValue(0, TypedConstantKind.Primitive, 'a');
142aSingleInst.VerifyValue(0, TypedConstantKind.Primitive, 3.14159f);
145aDoubleInst.VerifyValue(0, TypedConstantKind.Primitive, 3.1415926);
148aInt16Inst.VerifyValue(0, TypedConstantKind.Primitive, (Int16)16);
151aInt32Inst.VerifyValue(0, TypedConstantKind.Primitive, 32);
154aInt64Inst.VerifyValue(0, TypedConstantKind.Primitive, 64L);
157aObjectInst.VerifyValue(0, TypedConstantKind.Primitive, "object");
160aStringInst.VerifyValue(0, TypedConstantKind.Primitive, "module");
163aTypeInst.VerifyValue(0, TypedConstantKind.Type, typeof(string));
205c1.GetAttributes().First().VerifyValue(0, TypedConstantKind.Primitive, "C1");
208innerC1.GetAttributes().First().VerifyValue(0, TypedConstantKind.Primitive, "InnerC1");
215innerC2.GetAttributes().First().VerifyValue(0, TypedConstantKind.Primitive, "InnerC2");
218field1.GetAttributes().First().VerifyValue(0, TypedConstantKind.Primitive, "field1");
221property1.GetAttributes().First().VerifyValue(0, TypedConstantKind.Primitive, "Property1");
224sub1.GetAttributes().First().VerifyValue(0, TypedConstantKind.Primitive, "Sub1");
227sub1P1.GetAttributes().First().VerifyValue(0, TypedConstantKind.Primitive, "p1");
230function1.GetAttributes().First().VerifyValue(0, TypedConstantKind.Primitive, "Function1");
269a.VerifyNamedArgumentValue(0, "B", TypedConstantKind.Primitive, true);
272a.VerifyNamedArgumentValue(0, "B", TypedConstantKind.Primitive, Convert.ToByte(1));
275a.VerifyNamedArgumentValue(0, "C", TypedConstantKind.Primitive, 'b');
278a.VerifyNamedArgumentValue(0, "E", TypedConstantKind.Enum, 0);
281a.VerifyNamedArgumentValue(0, "S", TypedConstantKind.Primitive, 3.14159f);
284a.VerifyNamedArgumentValue(0, "D", TypedConstantKind.Primitive, 3.1415926);
287a.VerifyNamedArgumentValue(0, "I", TypedConstantKind.Primitive, (Int16)16);
290a.VerifyNamedArgumentValue(0, "I", TypedConstantKind.Primitive, 32);
293a.VerifyNamedArgumentValue(0, "I", TypedConstantKind.Primitive, 64L);
296a.VerifyNamedArgumentValue(0, "T", TypedConstantKind.Type, c3);
328a.VerifyNamedArgumentValue(0, "IA", TypedConstantKind.Array, new int[] { 1, 2 });
332a.VerifyNamedArgumentValue(0, "EA", TypedConstantKind.Array, new int[] { 0, 1 });
336a.VerifyNamedArgumentValue(0, "SA", TypedConstantKind.Array, new string[] { "Yes", "No" });
340a.VerifyNamedArgumentValue(0, "OA", TypedConstantKind.Array, new string[] { "Yes", "No" });
346a.VerifyNamedArgumentValue(0, "TA", TypedConstantKind.Array, new TypeSymbol[] { c1, c3 });
385c1.GetAttributes().First().VerifyValue(0, TypedConstantKind.Primitive, "C1");
432l.GetAttributes().First().VerifyValue(0, TypedConstantKind.Type, "System.Collections.Generic.List<>");
435l.GetAttributes().First().VerifyValue(0, TypedConstantKind.Type, "System.Collections.Generic.List<C1>");
438l.GetAttributes().First().VerifyValue(0, TypedConstantKind.Type, "System.Collections.Generic.List<System.String>");
441l.GetAttributes().First().VerifyValue(0, TypedConstantKind.Type, "System.Collections.Generic.List<System.Collections.Generic.KeyValuePair<C1, System.String>>");
444l.GetAttributes().First().VerifyValue(0, TypedConstantKind.Type, "System.Collections.Generic.List<System.Collections.Generic.KeyValuePair<System.String, C1.InnerC1<System.Int32>.InnerC2<System.String, System.String>>>");
477arg.VerifyValue(0, TypedConstantKind.Array, new int[] { 1, 2 });
481arg.VerifyValue(0, TypedConstantKind.Array, new object[] { stringType });
485arg.VerifyValue(0, TypedConstantKind.Array, new object[] { stringType });
489arg.VerifyValue(0, TypedConstantKind.Array, new object[] { stringType });
493arg.VerifyValue(0, TypedConstantKind.Array, new object[] { new object[] { stringType } });
499arg.VerifyValue(0, TypedConstantKind.Array, new object[] { 1, "two", stringType, 3.1415926 });
505arg.VerifyValue(0, TypedConstantKind.Array, new object[] { 1, new object[] { 2, 3, 4 }, 5 });
511arg.VerifyValue(0, TypedConstantKind.Array, new int[] { 1, 2, 3 });
606a.VerifyValue(0, TypedConstantKind.Primitive, "InteropAttributes");
609a.VerifyValue(1, TypedConstantKind.Primitive, 2);
612a.VerifyValue(0, TypedConstantKind.Primitive, "1234C65D-1234-447A-B786-64682CBEF136");
615a.VerifyValue(0, TypedConstantKind.Primitive, false);
616a.VerifyNamedArgumentValue(0, "ThrowOnUnmappableChar", TypedConstantKind.Primitive, true);
619a.VerifyValue(0, TypedConstantKind.Primitive, false);
630a.VerifyValue(2, TypedConstantKind.Primitive, 3);
637a.VerifyValue(0, TypedConstantKind.Primitive, true);
644a.VerifyValue(0, TypedConstantKind.Primitive, 8);
647a.VerifyNamedArgumentValue(0, "WrapNonExceptionThrows", TypedConstantKind.Primitive, true);
694attrSym.VerifyValue(0, TypedConstantKind.Primitive, "ABCDEF5D-2448-447A-B786-64682CBEF123");
747attrSym.VerifyValue(0, TypedConstantKind.Primitive, false);
757attrSym.VerifyNamedArgumentValue(0, "BestFitMapping", TypedConstantKind.Primitive, true);
758attrSym.VerifyNamedArgumentValue(1, "CharSet", TypedConstantKind.Enum, (int)CharSet.Ansi);
759attrSym.VerifyNamedArgumentValue(2, "SetLastError", TypedConstantKind.Primitive, true);
760attrSym.VerifyNamedArgumentValue(3, "ThrowOnUnmappableChar", TypedConstantKind.Primitive, true);
797attrSym.VerifyValue(0, TypedConstantKind.Primitive, "message");
798attrSym.VerifyValue(1, TypedConstantKind.Primitive, false);
854attrSym.VerifyValue(0, TypedConstantKind.Type, cbar);
858attrSym.VerifyValue(0, TypedConstantKind.Primitive, "MyIndex");
863mem.GetAttributes().First().VerifyValue(0, TypedConstantKind.Primitive, 10);
897attrSym.VerifyValue(0, TypedConstantKind.Primitive, 1);
927attrSym.VerifyNamedArgumentValue(0, "UShortField", TypedConstantKind.Primitive, Convert.ToUInt16(321));
931attrSym.VerifyNamedArgumentValue(0, "TypeField", TypedConstantKind.Type, typeof(Dictionary<string, int>));
968attrSym.VerifyValue(0, TypedConstantKind.Primitive, 3.1415926);
977attrSym.VerifyValue(0, TypedConstantKind.Primitive, 'q');
978attrSym.VerifyValue(1, TypedConstantKind.Primitive, Convert.ToByte(2));
990attrSym.VerifyValue(0, TypedConstantKind.Primitive, "555");
1005attrSym.VerifyValue(0, TypedConstantKind.Array, new sbyte[] { -1, 0, 1 });
1183attr1.VerifyValue(0, TypedConstantKind.Primitive, "4.6.1055.0");
1187attr1.VerifyValue(0, TypedConstantKind.Primitive, "4.6.1055.0");
1243attr.VerifyValue(0, TypedConstantKind.Primitive, "genericUriParserOptions");
1244attr.VerifyNamedArgumentValue(1, "IsRequired", TypedConstantKind.Primitive, true);
1276attr.VerifyValue(0, TypedConstantKind.Primitive, "DataCategory_Mapping");
1279attr.VerifyValue(0, TypedConstantKind.Primitive, "DataAdapter_MissingMappingAction");
Symbols\TypedConstantTests.cs (14)
44TypedConstant common = new TypedConstant(_systemType, TypedConstantKind.Type, _namedType);
57new[] { new TypedConstant(_systemType, TypedConstantKind.Type, _namedType) }.AsImmutableOrNull());
77new TypedConstant(_intType, TypedConstantKind.Primitive, 1),
78new TypedConstant(_intType, TypedConstantKind.Primitive, 1));
84new TypedConstant(_stringType, TypedConstantKind.Primitive, s1),
85new TypedConstant(_stringType, TypedConstantKind.Primitive, s2));
88new TypedConstant(_stringType, TypedConstantKind.Primitive, null),
89new TypedConstant(_stringType, TypedConstantKind.Primitive, null));
92new TypedConstant(_enumString1, TypedConstantKind.Primitive, null),
93new TypedConstant(_enumString2, TypedConstantKind.Primitive, null));
96new TypedConstant(_stringType, TypedConstantKind.Primitive, null),
97new TypedConstant(_stringType, TypedConstantKind.Error, null));
100new TypedConstant(_stringType, TypedConstantKind.Primitive, null),
101new TypedConstant(_systemType, TypedConstantKind.Primitive, null));
Microsoft.CodeAnalysis.CSharp.Test.Utilities (6)
Microsoft.CodeAnalysis.CSharp.WinRT.UnitTests (4)
Microsoft.CodeAnalysis.CSharp.Workspaces (5)
Microsoft.CodeAnalysis.Features (7)
Microsoft.CodeAnalysis.PublicApiAnalyzers (1)
Microsoft.CodeAnalysis.UnitTests (12)
CommonTypedConstantTests.cs (12)
42new TypedConstant(_intType, TypedConstantKind.Primitive, 1),
43new TypedConstant(_intType, TypedConstantKind.Primitive, 1));
49new TypedConstant(_stringType, TypedConstantKind.Primitive, s1),
50new TypedConstant(_stringType, TypedConstantKind.Primitive, s2));
53new TypedConstant(_stringType, TypedConstantKind.Primitive, null),
54new TypedConstant(_stringType, TypedConstantKind.Primitive, null));
57new TypedConstant(_enumString1, TypedConstantKind.Primitive, null),
58new TypedConstant(_enumString2, TypedConstantKind.Primitive, null));
61new TypedConstant(_stringType, TypedConstantKind.Primitive, null),
62new TypedConstant(_stringType, TypedConstantKind.Error, null));
65new TypedConstant(_stringType, TypedConstantKind.Primitive, null),
66new TypedConstant(_enumString1, TypedConstantKind.Primitive, null));
Microsoft.CodeAnalysis.VisualBasic (62)
Symbols\Source\SourceAssemblySymbol.vb (5)
1545Dim typedConstantNoStringInterning = New TypedConstant(int32Type, TypedConstantKind.Primitive, Cci.Constants.CompilationRelaxations_NoStringInterning)
1563Dim typedConstantTrue = New TypedConstant(boolType, TypedConstantKind.Primitive, True)
1601Dim typedConstantDebugMode = New TypedConstant(int32Type, TypedConstantKind.Enum, CInt(debuggingMode))
1618Dim typedConstant = New TypedConstant(stringType, TypedConstantKind.Primitive, _compilation.Options.CryptoKeyContainer)
1627Dim typedConstant = New TypedConstant(stringType, TypedConstantKind.Primitive, _compilation.Options.CryptoKeyFile)
Symbols\Source\SourceNamedTypeSymbol.vb (7)
2282If attrData.CommonConstructorArguments.Length = 1 AndAlso attrData.CommonConstructorArguments(0).Kind = TypedConstantKind.Primitive Then
2299Debug.Assert(argument.Kind = TypedConstantKind.Type)
2586New TypedConstant(stringType, TypedConstantKind.Primitive, DefaultPropertyName))))
2601New TypedConstant(GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, _comClassData.ClassId))))
2607New TypedConstant(GetSpecialType(SpecialType.System_Int32), TypedConstantKind.Enum, CInt(ClassInterfaceType.None)))))
2628New TypedConstant(GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, eventInterfaceName))))
2655ImmutableArray.Create(New TypedConstant(compilation.GetWellKnownType(WellKnownType.System_Type), TypedConstantKind.Type, originalType)),
Symbols\Source\SourceNamedTypeSymbol_ComClass.vb (11)
43Dim strVal As String = If(args(0).Kind <> TypedConstantKind.Array, TryCast(args(0).ValueInternal, String), Nothing)
50strVal = If(args(1).Kind <> TypedConstantKind.Array, TryCast(args(1).ValueInternal, String), Nothing)
56strVal = If(args(2).Kind <> TypedConstantKind.Array, TryCast(args(2).ValueInternal, String), Nothing)
313Dim value As Object = If(typedValue.Kind <> TypedConstantKind.Array, typedValue.ValueInternal, Nothing)
487Dim value As Object = If(typedValue.Kind <> TypedConstantKind.Array, typedValue.ValueInternal, Nothing)
1002New TypedConstant(_comClass.GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, id))))
1010TypedConstantKind.Primitive,
1017TypedConstantKind.Primitive,
1024TypedConstantKind.Primitive,
1372TypedConstantKind.Primitive,
1878TypedConstantKind.Primitive,
Symbols\WellKnownMembers.vb (9)
221TypedConstantKind.Type,
245New TypedConstant(specialTypeByte, TypedConstantKind.Primitive, scale),
246New TypedConstant(specialTypeByte, TypedConstantKind.Primitive, CByte(If(isNegative, 128, 0))),
247New TypedConstant(specialTypeUInt32, TypedConstantKind.Primitive, high),
248New TypedConstant(specialTypeUInt32, TypedConstantKind.Primitive, mid),
249New TypedConstant(specialTypeUInt32, TypedConstantKind.Primitive, low)
261TypedConstantKind.Enum,
277TypedConstantKind.Enum,
737Return New TypedConstant(constantType, TypedConstantKind.Primitive, name)
Microsoft.Extensions.Logging.Generators (3)
Microsoft.Extensions.Options.SourceGeneration (2)
Microsoft.Gen.MetadataExtractor (6)
Microsoft.Gen.Metrics (6)
Microsoft.Gen.MetricsReports (6)
Roslyn.Diagnostics.CSharp.Analyzers (5)
System.Text.RegularExpressions.Generator (1)