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 standard library.
std › Build › Step › Fmt Public Struct Fmt Doc Source Public Struct Fields step : Step paths : []const LazyPath Intended to be read-only after the Fmt step is created.
exclude_paths : []const LazyPath Intended to be read-only after the Fmt step is created.
check : bool Namespaces Structs Values Functions File Build/Step/Fmt.zig
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 //! This step has two modes:
//! * Modify mode: directly modify source files, formatting them in place.
//! * Check mode: fail the step if a non-conforming file is found.
const Fmt = @This ();
const std = @import ("std " );
const Step = std .Build .Step ;
const LazyPath = std .Build .LazyPath ;
const Configuration = std .Build .Configuration ;
step : Step ,
/// Intended to be read-only after the `Fmt` step is created.
paths : []const LazyPath ,
/// Intended to be read-only after the `Fmt` step is created.
exclude_paths : []const LazyPath ,
check : bool ,
pub const base_tag : Step .Tag = .fmt ;
pub const Options = struct {
paths : []const LazyPath = &.{},
exclude_paths : []const LazyPath = &.{},
/// If true, fails the build step when any non-conforming files are encountered.
check : bool = false ,
};
pub fn create (owner : *std .Build , options : Options ) *Fmt {
const graph = owner .graph ;
const fmt = graph .create (Fmt );
fmt .* = .{
.step = .init (.{
.tag = base_tag ,
.name = if (options .check ) "zig fmt --check" else "zig fmt" ,
.owner = owner ,
}),
.paths = LazyPath .dupeList (options .paths , graph ),
.exclude_paths = LazyPath .dupeList (options .exclude_paths , graph ),
.check = options .check ,
};
for (options .paths ) |lp | lp .addStepDependencies (&fmt .step );
for (options .exclude_paths ) |lp | lp .addStepDependencies (&fmt .step );
return fmt ;
}
This step has two modes: