Skip to content

Commit

Permalink
chore: deduplicate driver setup logic
Browse files Browse the repository at this point in the history
  • Loading branch information
TomAFrench committed May 24, 2023
1 parent 60ba165 commit c3bb11d
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 19 deletions.
15 changes: 5 additions & 10 deletions crates/nargo_cli/src/cli/check_cmd.rs
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
use crate::{errors::CliError, resolver::Resolver};
use crate::errors::CliError;
use acvm::Backend;
use clap::Args;
use iter_extended::btree_map;
use noirc_abi::{AbiParameter, AbiType, MAIN_RETURN_NAME};
use noirc_driver::CompileOptions;
use std::path::{Path, PathBuf};

use super::fs::write_to_file;
use super::NargoConfig;
use super::{compile_cmd::setup_driver, fs::write_to_file};
use crate::constants::{PROVER_INPUT_FILE, VERIFIER_INPUT_FILE};

/// Checks the constraint system for errors
Expand All @@ -29,15 +29,10 @@ pub(crate) fn run<B: Backend>(

fn check_from_path<B: Backend, P: AsRef<Path>>(
backend: &B,
p: P,
program_dir: P,
compile_options: &CompileOptions,
) -> Result<(), CliError<B>> {
let mut driver = Resolver::resolve_root_manifest(
p.as_ref(),
backend.np_language(),
// TODO: Remove need for driver to be aware of backend.
Box::new(|op| B::default().supports_opcode(op)),
)?;
let mut driver = setup_driver(backend, program_dir.as_ref())?;

driver.check_crate(compile_options).map_err(|_| CliError::CompilationError)?;

Expand All @@ -47,7 +42,7 @@ fn check_from_path<B: Backend, P: AsRef<Path>>(
// For now it is hard-coded to be toml.
//
// Check for input.toml and verifier.toml
let path_to_root = PathBuf::from(p.as_ref());
let path_to_root = PathBuf::from(program_dir.as_ref());
let path_to_prover_input = path_to_root.join(format!("{PROVER_INPUT_FILE}.toml"));
let path_to_verifier_input = path_to_root.join(format!("{VERIFIER_INPUT_FILE}.toml"));

Expand Down
4 changes: 2 additions & 2 deletions crates/nargo_cli/src/cli/compile_cmd.rs
Original file line number Diff line number Diff line change
Expand Up @@ -100,14 +100,14 @@ pub(crate) fn run<B: Backend>(
Ok(())
}

fn setup_driver<B: Backend>(
pub(super) fn setup_driver<B: Backend>(
backend: &B,
program_dir: &Path,
) -> Result<Driver, DependencyResolutionError> {
Resolver::resolve_root_manifest(
program_dir,
backend.np_language(),
// TODO: Remove need for driver to be aware of backend.
// TODO(#1102): Remove need for driver to be aware of backend.
Box::new(|op| B::default().supports_opcode(op)),
)
}
Expand Down
9 changes: 2 additions & 7 deletions crates/nargo_cli/src/cli/test_cmd.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ use noirc_driver::{CompileOptions, Driver};
use noirc_frontend::node_interner::FuncId;
use termcolor::{Color, ColorChoice, ColorSpec, StandardStream, WriteColor};

use crate::{errors::CliError, resolver::Resolver};
use crate::{cli::compile_cmd::setup_driver, errors::CliError};

use super::NargoConfig;

Expand Down Expand Up @@ -37,12 +37,7 @@ fn run_tests<B: Backend>(
test_name: &str,
compile_options: &CompileOptions,
) -> Result<(), CliError<B>> {
let mut driver = Resolver::resolve_root_manifest(
program_dir,
backend.np_language(),
// TODO: Remove need for driver to be aware of backend.
Box::new(|op| B::default().supports_opcode(op)),
)?;
let mut driver = setup_driver(backend, &program_dir)?;

driver.check_crate(compile_options).map_err(|_| CliError::CompilationError)?;

Expand Down

0 comments on commit c3bb11d

Please sign in to comment.