System.IntPtr и nint в C # Microsoft.CodeAnalysis
При нормальном сравнении типов верно
поэтому я ожидал, что
SpecialType
из, точно так же, как
System.Int32
а также
int
, при выполнении CodeAnalysis с использованием
Microsoft.CodeAnalysis
.
но оказывается, что SpecialTypeSystem.IntPtr по-прежнему System.IntPtr.
вот мой код
string GetSpecialTypeForDisplayIfAny(ISymbol symbol)
{
return symbol.ToDisplayString(SymbolDisplayFormat.FullyQualifiedFormat
.WithGlobalNamespaceStyle(SymbolDisplayGlobalNamespaceStyle.Omitted)
.AddMiscellaneousOptions(SymbolDisplayMiscellaneousOptions.IncludeNullableReferenceTypeModifier)
.AddMiscellaneousOptions(SymbolDisplayMiscellaneousOptions.UseSpecialTypes)
.AddMiscellaneousOptions(SymbolDisplayMiscellaneousOptions.IncludeNullableReferenceTypeModifier)
.AddMiscellaneousOptions(SymbolDisplayMiscellaneousOptions.IncludeNotNullableReferenceTypeModifier))
);
}
Итак, мой вопрос: почему SpecialType
System.IntPtr
нет
nint
в CodeAnalysis?
PS. Я уже просмотрел эту документацию . Я понимаю, что «.. ключевые слова - это не просто псевдонимы для типов». но почему тогда это правда
typeof(nint)==typeof(System.IntPtr)
?