Merge pull request #79094 from raulsntos/dotnet/fix-symbol-comparison
C#: Compare symbol names without null flow state
This commit is contained in:
commit
26a58976e7
3 changed files with 9 additions and 9 deletions
|
@ -37,7 +37,7 @@ namespace Godot.SourceGenerators
|
|||
while (symbol != null)
|
||||
{
|
||||
if (symbol.ContainingAssembly?.Name == assemblyName &&
|
||||
symbol.ToString() == typeFullName)
|
||||
symbol.FullQualifiedNameOmitGlobal() == typeFullName)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
@ -230,22 +230,22 @@ namespace Godot.SourceGenerators
|
|||
.Replace(">", ")");
|
||||
|
||||
public static bool IsGodotExportAttribute(this INamedTypeSymbol symbol)
|
||||
=> symbol.ToString() == GodotClasses.ExportAttr;
|
||||
=> symbol.FullQualifiedNameOmitGlobal() == GodotClasses.ExportAttr;
|
||||
|
||||
public static bool IsGodotSignalAttribute(this INamedTypeSymbol symbol)
|
||||
=> symbol.ToString() == GodotClasses.SignalAttr;
|
||||
=> symbol.FullQualifiedNameOmitGlobal() == GodotClasses.SignalAttr;
|
||||
|
||||
public static bool IsGodotMustBeVariantAttribute(this INamedTypeSymbol symbol)
|
||||
=> symbol.ToString() == GodotClasses.MustBeVariantAttr;
|
||||
=> symbol.FullQualifiedNameOmitGlobal() == GodotClasses.MustBeVariantAttr;
|
||||
|
||||
public static bool IsGodotClassNameAttribute(this INamedTypeSymbol symbol)
|
||||
=> symbol.ToString() == GodotClasses.GodotClassNameAttr;
|
||||
=> symbol.FullQualifiedNameOmitGlobal() == GodotClasses.GodotClassNameAttr;
|
||||
|
||||
public static bool IsGodotGlobalClassAttribute(this INamedTypeSymbol symbol)
|
||||
=> symbol.ToString() == GodotClasses.GlobalClassAttr;
|
||||
=> symbol.FullQualifiedNameOmitGlobal() == GodotClasses.GlobalClassAttr;
|
||||
|
||||
public static bool IsSystemFlagsAttribute(this INamedTypeSymbol symbol)
|
||||
=> symbol.ToString() == GodotClasses.SystemFlagsAttr;
|
||||
=> symbol.FullQualifiedNameOmitGlobal() == GodotClasses.SystemFlagsAttr;
|
||||
|
||||
public static GodotMethodData? HasGodotCompatibleSignature(
|
||||
this IMethodSymbol method,
|
||||
|
|
|
@ -362,7 +362,7 @@ namespace Godot.SourceGenerators
|
|||
{
|
||||
foreach (var attr in memberSymbol.GetAttributes())
|
||||
{
|
||||
PropertyUsageFlags? propertyUsage = attr.AttributeClass?.ToString() switch
|
||||
PropertyUsageFlags? propertyUsage = attr.AttributeClass?.FullQualifiedNameOmitGlobal() switch
|
||||
{
|
||||
GodotClasses.ExportCategoryAttr => PropertyUsageFlags.Category,
|
||||
GodotClasses.ExportGroupAttr => PropertyUsageFlags.Group,
|
||||
|
|
|
@ -38,7 +38,7 @@ internal static class ExtensionMethods
|
|||
}
|
||||
|
||||
private static bool IsGenerateUnmanagedCallbacksAttribute(this INamedTypeSymbol symbol)
|
||||
=> symbol.ToString() == GeneratorClasses.GenerateUnmanagedCallbacksAttr;
|
||||
=> symbol.FullQualifiedNameOmitGlobal() == GeneratorClasses.GenerateUnmanagedCallbacksAttr;
|
||||
|
||||
public static IEnumerable<(ClassDeclarationSyntax cds, INamedTypeSymbol symbol)> SelectUnmanagedCallbacksClasses(
|
||||
this IEnumerable<ClassDeclarationSyntax> source,
|
||||
|
|
Loading…
Reference in a new issue