Struct forc_pkg::BuildOptions
source · [−]pub struct BuildOptions {Show 16 fields
pub path: Option<String>,
pub print_ast: bool,
pub print_finalized_asm: bool,
pub print_intermediate_asm: bool,
pub print_ir: bool,
pub binary_outfile: Option<String>,
pub debug_outfile: Option<String>,
pub offline_mode: bool,
pub terse_mode: bool,
pub output_directory: Option<String>,
pub minify_json_abi: bool,
pub minify_json_storage_slots: bool,
pub locked: bool,
pub build_profile: Option<String>,
pub release: bool,
pub time_phases: bool,
}Fields
path: Option<String>Path to the project, if not specified, current working directory will be used.
print_ast: boolPrint the generated Sway AST (Abstract Syntax Tree).
print_finalized_asm: boolPrint the finalized ASM.
This is the state of the ASM with registers allocated and optimisations applied.
print_intermediate_asm: boolPrint the generated ASM.
This is the state of the ASM prior to performing register allocation and other ASM optimisations.
print_ir: boolPrint the generated Sway IR (Intermediate Representation).
binary_outfile: Option<String>If set, outputs a binary file representing the script bytes.
debug_outfile: Option<String>If set, outputs source file mapping in JSON format
offline_mode: boolOffline mode, prevents Forc from using the network when managing dependencies. Meaning it will only try to use previously downloaded dependencies.
terse_mode: boolTerse mode. Limited warning and error output.
output_directory: Option<String>The directory in which the sway compiler output artifacts are placed.
By default, this is <project-root>/out.
minify_json_abi: boolBy default the JSON for ABIs is formatted for human readability. By using this option JSON output will be “minified”, i.e. all on one line without whitespace.
minify_json_storage_slots: boolBy default the JSON for initial storage slots is formatted for human readability. By using this option JSON output will be “minified”, i.e. all on one line without whitespace.
locked: boolRequires that the Forc.lock file is up-to-date. If the lock file is missing, or it needs to be updated, Forc will exit with an error
build_profile: Option<String>Name of the build profile to use. If it is not specified, forc will use debug build profile.
release: boolUse release build plan. If a custom release plan is not specified, it is implicitly added to the manifest file.
If –build-profile is also provided, forc omits this flag and uses provided build-profile.
time_phases: boolOutput the time elapsed over each part of the compilation process.