cairo_lang_compiler

Function compile_prepared_db_program_artifact

source
pub fn compile_prepared_db_program_artifact(
    db: &mut RootDatabase,
    main_crate_ids: Vec<CrateId>,
    compiler_config: CompilerConfig<'_>,
) -> Result<ProgramArtifact>
Expand description

Runs Cairo compiler.

Wrapper over compile_prepared_db, but this function returns ProgramArtifact with requested debug info.

§Arguments

  • db - Preloaded compilation database.
  • main_crate_ids - CrateIds to compile. Do not include dependencies here, only pass top-level crates in order to eliminate unused code. Use CrateLongId::Real(name).intern(db) in order to obtain CrateId from its name.
  • compiler_config - The compiler configuration.

§Returns

  • Ok(ProgramArtifact) - The compiled program artifact with requested debug info.
  • Err(anyhow::Error) - Compilation failed.