Zig 0.17.0-dev (Split by item)
This is an example of documentation generated by
ZigDoc , an alternative to Zig's built-in
Auto Doc feature. See also
examples in other modes/formats . The project being documented here (as the example) is the Zig library itself.
Zig › compiler/ › test_runner.zig › main
main
test_runner.main
pub fn main (init : std .process .Init .Minimal ) void
File
Code
pub fn main (init : std .process .Init .Minimal ) void {
@disableInstrumentation ();
if (builtin .cpu .arch .isSpirV ()) {
return ;
}
if (need_simple ) {
return mainSimple () catch |err | panic ("test failure: {t}" , .{err });
}
const args = init .args .toSlice (fba .allocator ()) catch |err | panic ("unable to parse command line args: {t}" , .{err });
var listen = false ;
var opt_cache_dir : ?[]const u8 = null ;
for (args [1 ..]) |arg | {
if (std .mem .eql (u8 , arg , "--listen=-" )) {
listen = true ;
} else if (std .mem .startsWith (u8 , arg , "--seed=" )) {
testing .random_seed = std .fmt .parseUnsigned (u32 , arg ["--seed=" .len ..], 0 ) catch
@panic ("unable to parse --seed command line argument" );
} else if (std .mem .startsWith (u8 , arg , "--cache-dir" )) {
opt_cache_dir = arg ["--cache-dir=" .len ..];
} else {
panic ("unrecognized command line argument: {s}" , .{arg });
}
}
if (builtin .fuzz ) {
const cache_dir = opt_cache_dir orelse @panic ("missing --cache-dir=[path] argument" );
fuzz_abi .fuzzer_init (.fromSlice (cache_dir ));
}
if (listen ) {
return mainServer (init ) catch |err | panic ("internal test runner failure: {t}" , .{err });
} else {
return mainTerminal (init );
}
}