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 › std/ › Target/ › Query.zig › OsVersion
OsVersion
Query.OsVersion
pub const OsVersion = union (enum )
File
Code
pub const OsVersion = union (enum ) {
none : void ,
semver : SemanticVersion ,
windows : Target .Os .WindowsVersion ,
pub fn eql (a : OsVersion , b : OsVersion ) bool {
const Tag = @typeInfo (OsVersion ).@"union" .tag_type .?;
const a_tag : Tag = a ;
const b_tag : Tag = b ;
if (a_tag != b_tag ) return false ;
return switch (a ) {
.none => true ,
.semver => |a_semver | a_semver .order (b .semver ) == .eq ,
.windows => |a_windows | a_windows == b .windows ,
};
}
pub fn eqlOpt (a : ?OsVersion , b : ?OsVersion ) bool {
if (a == null and b == null ) return true ;
if (a == null or b == null ) return false ;
return OsVersion .eql (a .?, b .?);
}
}