Commit e892ee17e6

Tadeo Kondrak <me@tadeo.ca>
2020-09-28 15:29:53
std: move std.meta.refAllDecls to std.testing
1 parent 0da027f
lib/std/build/emit_raw.zig
@@ -224,5 +224,5 @@ pub const InstallRawStep = struct {
 };
 
 test "" {
-    std.meta.refAllDecls(InstallRawStep);
+    std.testing.refAllDecls(InstallRawStep);
 }
lib/std/build.zig
@@ -2702,5 +2702,5 @@ test "" {
     // The only purpose of this test is to get all these untested functions
     // to be referenced to avoid regression so it is okay to skip some targets.
     if (comptime std.Target.current.cpu.arch.ptrBitWidth() == 64)
-        std.meta.refAllDecls(@This());
+        std.testing.refAllDecls(@This());
 }
lib/std/crypto.zig
@@ -110,7 +110,7 @@ test "crypto" {
     inline for (std.meta.declarations(@This())) |decl| {
         switch (decl.data) {
             .Type => |t| {
-                std.meta.refAllDecls(t);
+                std.testing.refAllDecls(t);
             },
             .Var => |v| {
                 _ = v;
lib/std/math.zig
@@ -194,7 +194,7 @@ pub const Complex = complex.Complex;
 pub const big = @import("math/big.zig");
 
 test "" {
-    std.meta.refAllDecls(@This());
+    std.testing.refAllDecls(@This());
 }
 
 pub fn floatMantissaBits(comptime T: type) comptime_int {
lib/std/meta.zig
@@ -655,13 +655,7 @@ pub fn fieldIndex(comptime T: type, comptime name: []const u8) ?comptime_int {
     return null;
 }
 
-/// Given a type, reference all the declarations inside, so that the semantic analyzer sees them.
-pub fn refAllDecls(comptime T: type) void {
-    if (!builtin.is_test) return;
-    inline for (declarations(T)) |decl| {
-        _ = decl;
-    }
-}
+pub const refAllDecls = @compileError("refAllDecls has been moved from std.meta to std.testing");
 
 /// Returns a slice of pointers to public declarations of a namespace.
 pub fn declList(comptime Namespace: type, comptime Decl: type) []const *const Decl {
lib/std/rand.zig
@@ -1140,5 +1140,5 @@ fn testRangeBias(r: *Random, start: i8, end: i8, biased: bool) void {
 }
 
 test "" {
-    std.meta.refAllDecls(@This());
+    std.testing.refAllDecls(@This());
 }
lib/std/std.zig
@@ -92,5 +92,5 @@ comptime {
 }
 
 test "" {
-    meta.refAllDecls(@This());
+    testing.refAllDecls(@This());
 }
lib/std/target.zig
@@ -1516,5 +1516,5 @@ pub const Target = struct {
 };
 
 test "" {
-    std.meta.refAllDecls(Target.Cpu.Arch);
+    std.testing.refAllDecls(Target.Cpu.Arch);
 }
lib/std/testing.zig
@@ -389,3 +389,11 @@ fn printLine(line: []const u8) void {
 test "" {
     expectEqualStrings("foo", "foo");
 }
+
+/// Given a type, reference all the declarations inside, so that the semantic analyzer sees them.
+pub fn refAllDecls(comptime T: type) void {
+    if (!@import("builtin").is_test) return;
+    inline for (std.meta.declarations(T)) |decl| {
+        _ = decl;
+    }
+}
lib/std/zig.zig
@@ -255,5 +255,5 @@ test "parseCharLiteral" {
 }
 
 test "" {
-    @import("std").meta.refAllDecls(@This());
+    @import("std").testing.refAllDecls(@This());
 }