test_reduce_builtin.zig (462B) - Raw
1 const std = @import("std"); 2 const expect = std.testing.expect; 3 4 test "vector @reduce" { 5 const V = @Vector(4, i32); 6 const value = V{ 1, -1, 1, -1 }; 7 const result = value > @as(V, @splat(0)); 8 // result is { true, false, true, false }; 9 try comptime expect(@TypeOf(result) == @Vector(4, bool)); 10 const is_all_true = @reduce(.And, result); 11 try comptime expect(@TypeOf(is_all_true) == bool); 12 try expect(is_all_true == false); 13 } 14 15 // test