RoslynAnalyzerExtensions.cs 587 B

123456789101112131415161718
  1. using Microsoft.CodeAnalysis;
  2. namespace Lua.SourceGenerator;
  3. static class RoslynAnalyzerExtensions
  4. {
  5. public static AttributeData? FindAttribute(this IEnumerable<AttributeData> attributeDataList, string typeName)
  6. {
  7. return attributeDataList
  8. .FirstOrDefault(x => x.AttributeClass?.ToDisplayString() == typeName);
  9. }
  10. public static AttributeData? FindAttributeShortName(this IEnumerable<AttributeData> attributeDataList, string typeName)
  11. {
  12. return attributeDataList
  13. .FirstOrDefault(x => x.AttributeClass?.Name == typeName);
  14. }
  15. }