diff --git a/src/Class.zig b/src/Class.zig index df4f523..39a1cdb 100644 --- a/src/Class.zig +++ b/src/Class.zig @@ -22,7 +22,7 @@ attributes: []AttributeInfo, const Self = @This(); -pub const ClassFlags = enum(u16) { +pub const ClassAccessFlags = EnumFlags(enum(u16) { public = 0x0001, final = 0x0010, super = 0x0020, @@ -31,9 +31,7 @@ pub const ClassFlags = enum(u16) { synthetic = 0x1000, annotation = 0x2000, @"enum" = 0x4000, -}; - -pub const ClassAccessFlags = EnumFlags(ClassFlags); +}); pub const ParseError = std.Io.Reader.Error || std.mem.Allocator.Error || error { InvalidMagicNumber, diff --git a/src/Class/AttributeInfo.zig b/src/Class/AttributeInfo.zig index e41738d..df0dc1a 100644 --- a/src/Class/AttributeInfo.zig +++ b/src/Class/AttributeInfo.zig @@ -892,7 +892,7 @@ pub const InnerClasses = struct { } }; - pub const InnerClassFlags = enum(u16) { + pub const InnerClassAccessFlags = EnumFlags(enum(u16) { public = 0x0001, private = 0x0002, protected = 0x0004, @@ -903,9 +903,7 @@ pub const InnerClasses = struct { synthetic = 0x1000, annotation = 0x2000, @"enum" = 0x4000, - }; - - pub const InnerClassAccessFlags = EnumFlags(InnerClassFlags); + }); pub fn parse(input: *std.Io.Reader, allocator: std.mem.Allocator) ParseError!Self { const number_of_classes = try input.takeInt(u16, .big); @@ -1474,13 +1472,11 @@ pub const MethodParameters = struct { name_index: u16, access_flags: ParameterAccessFlags, - pub const ParameterFlags = enum(u16) { + pub const ParameterAccessFlags = EnumFlags(enum(u16) { final = 0x0010, synthetic = 0x1000, mandated = 0x8000, - }; - - pub const ParameterAccessFlags = EnumFlags(ParameterFlags); + }); pub fn indentedFormat( self: *const Parameter, diff --git a/src/Class/FieldInfo.zig b/src/Class/FieldInfo.zig index 62325d9..952cf38 100644 --- a/src/Class/FieldInfo.zig +++ b/src/Class/FieldInfo.zig @@ -14,7 +14,7 @@ attributes: []AttributeInfo, const Self = @This(); -pub const FieldFlags = enum(u16) { +pub const FieldAccessFlags = EnumFlags(enum(u16) { public = 0x0001, private = 0x0002, protected = 0x0004, @@ -24,9 +24,7 @@ pub const FieldFlags = enum(u16) { transient = 0x0080, synthetic = 0x1000, @"enum" = 0x4000, -}; - -pub const FieldAccessFlags = EnumFlags(FieldFlags); +}); pub fn parse(input: *std.Io.Reader, constant_pool: []const ?ConstantPoolInfo, allocator: std.mem.Allocator) !Self { const access_flags: FieldAccessFlags = .{ .mask = try input.takeInt(u16, .big) }; diff --git a/src/Class/MethodInfo.zig b/src/Class/MethodInfo.zig index 87ad266..a9c3e61 100644 --- a/src/Class/MethodInfo.zig +++ b/src/Class/MethodInfo.zig @@ -14,7 +14,7 @@ attributes: []AttributeInfo, const Self = @This(); -pub const MethodFlags = enum(u16) { +pub const MethodAccessFlags = EnumFlags(enum(u16) { public = 0x0001, private = 0x0002, protected = 0x0004, @@ -27,9 +27,7 @@ pub const MethodFlags = enum(u16) { abstract = 0x0400, strict = 0x0800, synthetic = 0x1000, -}; - -pub const MethodAccessFlags = EnumFlags(MethodFlags); +}); pub fn parse(input: *std.Io.Reader, constant_pool: []const ?ConstantPoolInfo, allocator: std.mem.Allocator) !Self { const access_flags: MethodAccessFlags = .{ .mask = try input.takeInt(u16, .big) };