Struct forc::cli::BuildCommand
source · [−]pub struct BuildCommand {Show 17 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,
pub generate_logged_types: bool,
}Expand description
Compile the current or target project.
The output produced will depend on the project’s program type.
-
script,predicateandcontractprojects will produce their bytecode in binary format<project-name>.bin. -
scriptprojects will also produce a file containing the hash of the bytecode binary<project-name>-bin-hash(usingfuel_cypto::Hasher). -
predicateprojects will also produce a file containing the root hash of the bytecode binary<project-name>-bin-root(usingfuel_tx::Contract::root_from_code). -
contractandlibraryprojects will also produce the public ABI in JSON format<project-name>-abi.json.
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.
generate_logged_types: boolInclude logged types in the JSON ABI.
Trait Implementations
sourceimpl CommandFactory for Command
impl CommandFactory for Command
sourcefn into_app_for_update<'b>() -> Command<'b>
fn into_app_for_update<'b>() -> Command<'b>
CommandFactory::command_for_updatesourcefn command_for_update<'help>() -> App<'help>
fn command_for_update<'help>() -> App<'help>
sourceimpl FromArgMatches for Command
impl FromArgMatches for Command
sourcefn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
sourcefn from_arg_matches_mut(
__clap_arg_matches: &mut ArgMatches
) -> Result<Self, Error>
fn from_arg_matches_mut(
__clap_arg_matches: &mut ArgMatches
) -> Result<Self, Error>
sourcefn update_from_arg_matches(
&mut self,
__clap_arg_matches: &ArgMatches
) -> Result<(), Error>
fn update_from_arg_matches(
&mut self,
__clap_arg_matches: &ArgMatches
) -> Result<(), Error>
ArgMatches to self.sourcefn update_from_arg_matches_mut(
&mut self,
__clap_arg_matches: &mut ArgMatches
) -> Result<(), Error>
fn update_from_arg_matches_mut(
&mut self,
__clap_arg_matches: &mut ArgMatches
) -> Result<(), Error>
ArgMatches to self.