diff --git a/lib/std/meta/trait.zig b/lib/std/meta/trait.zig index e3052f2a3a..89cf02bcbd 100644 --- a/lib/std/meta/trait.zig +++ b/lib/std/meta/trait.zig @@ -363,10 +363,13 @@ test "std.meta.trait.hasDecls" { pub fn useless() void {} }; + const tuple = .{"a", "b", "c"}; + testing.expect(!hasDecls(TestStruct1, .{"a"})); testing.expect(hasDecls(TestStruct2, .{"a", "b"})); testing.expect(hasDecls(TestStruct2, .{"a", "b", "useless"})); testing.expect(!hasDecls(TestStruct2, .{"a", "b", "c"})); + testing.expect(!hasDecls(TestStruct2, tuple)); } pub fn hasFields(comptime T: type, comptime names: var) bool { @@ -386,9 +389,13 @@ test "std.meta.trait.hasFields" { pub fn useless() void {} }; + + const tuple = .{"a", "b", "c"}; + testing.expect(!hasFields(TestStruct1, .{"a"})); testing.expect(hasFields(TestStruct2, .{"a", "b"})); testing.expect(hasFields(TestStruct2, .{"a", "b", "c"})); + testing.expect(hasFields(TestStruct2, tuple)); testing.expect(!hasFields(TestStruct2, .{"a", "b", "useless"})); } @@ -407,7 +414,10 @@ test "std.meta.trait.hasFunctions" { fn b() void {} }; + const tuple = .{"a", "b", "c"}; + testing.expect(!hasFunctions(TestStruct1, .{"a"})); testing.expect(hasFunctions(TestStruct2, .{"a", "b"})); testing.expect(!hasFunctions(TestStruct2, .{"a", "b", "c"})); + testing.expect(!hasFunctions(TestStruct2, tuple)); }