cacheName
If using Server to communicate with the compiler, it will place requested artifacts in
paths under the output directory, where those paths are named according to this function.
Returned string is allocated with gpa and owned by the caller.
Function parameters
Parameters
Type definitions in this namespace
Types
- EnvVar
- Collects all the environment variables that Zig could possibly inspect, so
- EmitArtifact
- Every kind of artifact which the compiler can emit.
Functions in this namespace
Functions
- binNameAlloc
- Returns the standard file system basename of a binary generated by the Zig compiler.
- serializeCpu
- Renders a `std.Target.Cpu` value into a textual representation that can be parsed
- fmtId
- Return a Formatter for a Zig identifier, escaping it with `@""` syntax if needed.
- fmtIdFlags
- Return a Formatter for a Zig identifier, escaping it with `@""` syntax if needed.
- fmtString
- Return a formatter for escaping a double quoted Zig string.
- fmtChar
- Return a formatter for escaping a single quoted Zig string.
- stringEscape
- Print the string as escaped contents of a double quoted string.
- charEscape
- Print as escaped contents of a single-quoted string.
- readSourceFileToEndAlloc
- If the source can be UTF-16LE encoded, this function asserts that `gpa`
There are many assumptions in the entire codebase that Zig source files can
Values
- max_src_size
- There are many assumptions in the entire codebase that Zig source files can
Source
Implementation
pub fn cacheName(ea: EmitArtifact, gpa: Allocator, opts: BinNameOptions) Allocator.Error![]const u8 {
const suffix: []const u8 = switch (ea) {
.bin => return binNameAlloc(gpa, opts),
.@"asm" => ".s",
.implib => ".lib",
.llvm_ir => ".ll",
.llvm_bc => ".bc",
.docs => "-docs",
.pdb => ".pdb",
.h => ".h",
};
return std.fmt.allocPrint(gpa, "{s}{s}", .{ opts.root_name, suffix });
}