Skip to content

Commit 565810e

Browse files
committed
Add Flags attribute to "KnownBitmask" enums
1 parent 21df0a8 commit 565810e

File tree

129 files changed

+142
-5
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

129 files changed

+142
-5
lines changed

.silktouch/ce8a69a66cd3bd3f.stout

0 Bytes
Binary file not shown.

sources/SilkTouch/SilkTouch/Mods/MixKhronosData.cs

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1801,18 +1801,28 @@ private class Rewriter(JobData job, ILogger logger) : CSharpSyntaxRewriter(true)
18011801

18021802
public override SyntaxNode? VisitEnumDeclaration(EnumDeclarationSyntax node)
18031803
{
1804-
var iden = node.Identifier.ToString();
1805-
iden = iden.Replace("FlagBits", "Flags");
1804+
var identifier = node.Identifier.ToString();
1805+
identifier = identifier.Replace("FlagBits", "Flags");
18061806

18071807
if (
1808-
job.Groups.ContainsKey(iden)
1808+
job.Groups.TryGetValue(identifier, out var group)
18091809
&& !node.Ancestors().OfType<BaseTypeDeclarationSyntax>().Any()
18101810
)
18111811
{
1812-
AlreadyPresentGroups.Add(iden);
1812+
AlreadyPresentGroups.Add(identifier);
1813+
1814+
if (group.KnownBitmask)
1815+
{
1816+
// Add [Flags] attribute
1817+
var flagsAttribute = AttributeList(
1818+
SingletonSeparatedList(
1819+
Attribute(IdentifierName("Flags"))));
1820+
1821+
node = node.WithAttributeLists(node.AttributeLists.Add(flagsAttribute));
1822+
}
18131823
}
18141824

1815-
return base.VisitEnumDeclaration(node.WithIdentifier(Identifier(iden)));
1825+
return base.VisitEnumDeclaration(node.WithIdentifier(Identifier(identifier)));
18161826
}
18171827

18181828
public override SyntaxNode? VisitFieldDeclaration(FieldDeclarationSyntax node)

sources/Vulkan/Vulkan/Enums/AccessFlags2.gen.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
namespace Silk.NET.Vulkan;
1111

1212
[Transformed]
13+
[Flags]
1314
public enum AccessFlags2 : ulong
1415
{
1516
None = unchecked((ulong)0UL),

sources/Vulkan/Vulkan/Enums/AccessFlags3KHR.gen.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
namespace Silk.NET.Vulkan;
1111

1212
[Transformed]
13+
[Flags]
1314
public enum AccessFlags3KHR : ulong
1415
{
1516
Access3NoneKHR = unchecked((ulong)0UL),

sources/Vulkan/Vulkan/Enums/BufferUsageFlags2.gen.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
namespace Silk.NET.Vulkan;
1111

1212
[Transformed]
13+
[Flags]
1314
public enum BufferUsageFlags2 : ulong
1415
{
1516
TransferSrcBit = unchecked((ulong)0x00000001UL),

sources/Vulkan/Vulkan/Enums/ExportMetalObjectTypeFlagsEXT.gen.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,5 @@
1010
namespace Silk.NET.Vulkan;
1111

1212
[Transformed]
13+
[Flags]
1314
public enum ExportMetalObjectTypeFlagsEXT : uint { }

sources/Vulkan/Vulkan/Enums/FormatFeatureFlags2.gen.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
namespace Silk.NET.Vulkan;
1111

1212
[Transformed]
13+
[Flags]
1314
public enum FormatFeatureFlags2 : ulong
1415
{
1516
SampledImageBit = unchecked((ulong)0x00000001UL),

sources/Vulkan/Vulkan/Enums/ImageConstraintsInfoFlagsFuchsia.gen.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,5 @@
1010
namespace Silk.NET.Vulkan;
1111

1212
[Transformed]
13+
[Flags]
1314
public enum ImageConstraintsInfoFlagsFuchsia : uint { }

sources/Vulkan/Vulkan/Enums/MemoryDecompressionMethodFlagsNV.gen.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
namespace Silk.NET.Vulkan;
1111

1212
[Transformed]
13+
[Flags]
1314
public enum MemoryDecompressionMethodFlagsNV : ulong
1415
{
1516
Gdeflate1X0BitNV = unchecked((ulong)0x00000001UL),

sources/Vulkan/Vulkan/Enums/PhysicalDeviceSchedulingControlsFlagsARM.gen.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
namespace Silk.NET.Vulkan;
1111

1212
[Transformed]
13+
[Flags]
1314
public enum PhysicalDeviceSchedulingControlsFlagsARM : ulong
1415
{
1516
ShaderCoreCountARM = unchecked((ulong)0x00000001UL),

0 commit comments

Comments
 (0)