pub struct ProjectBuilder<T: ArtifactOutput = ConfigurableArtifacts> {
    pub ignored_error_codes: Vec<u64>,
    /* private fields */
}

Fields§

§ignored_error_codes: Vec<u64>

Which error codes to ignore

Implementations§

source§

impl<T: ArtifactOutput> ProjectBuilder<T>

source

pub fn new(artifacts: T) -> Self

Create a new builder with the given artifacts handler

source

pub fn paths(self, paths: ProjectPathsConfig) -> Self

source

pub fn solc(self, solc: impl Into<Solc>) -> Self

source

pub fn solc_config(self, solc_config: SolcConfig) -> Self

source

pub fn ignore_error_code(self, code: u64) -> Self

source

pub fn ignore_error_codes(self, codes: impl IntoIterator<Item = u64>) -> Self

source

pub fn set_compiler_severity_filter( self, compiler_severity_filter: Severity ) -> Self

source

pub fn ephemeral(self) -> Self

Disables cached builds

source

pub fn set_cached(self, cached: bool) -> Self

Sets the cache status

source

pub fn set_build_info(self, build_info: bool) -> Self

Sets the build info value

source

pub fn offline(self) -> Self

Activates offline mode

Prevents network possible access to download/check solc installs

source

pub fn set_offline(self, offline: bool) -> Self

Sets the offline status

source

pub fn set_slashed_paths(self, slashed_paths: bool) -> Self

Sets whether to slash all paths on windows

If set to true all \\ separators are replaced with /, same as solc

source

pub fn no_artifacts(self) -> Self

Disables writing artifacts to disk

source

pub fn set_no_artifacts(self, artifacts: bool) -> Self

Sets the no artifacts status

source

pub fn set_auto_detect(self, auto_detect: bool) -> Self

Sets automatic solc version detection

source

pub fn no_auto_detect(self) -> Self

Disables automatic solc version detection

source

pub fn solc_jobs(self, jobs: usize) -> Self

Sets the maximum number of parallel solc processes to run simultaneously.

§Panics

jobs must be at least 1

source

pub fn single_solc_jobs(self) -> Self

Sets the number of parallel solc processes to 1, no parallelization

source

pub fn artifacts<A: ArtifactOutput>(self, artifacts: A) -> ProjectBuilder<A>

Set arbitrary ArtifactOutputHandler

source

pub fn allowed_path<P: Into<PathBuf>>(self, path: P) -> Self

Adds an allowed-path to the solc executable

source

pub fn allowed_paths<I, S>(self, args: I) -> Self
where I: IntoIterator<Item = S>, S: Into<PathBuf>,

Adds multiple allowed-path to the solc executable

source

pub fn include_path<P: Into<PathBuf>>(self, path: P) -> Self

Adds an --include-path to the solc executable

source

pub fn include_paths<I, S>(self, args: I) -> Self
where I: IntoIterator<Item = S>, S: Into<PathBuf>,

Adds multiple include-path to the solc executable

source

pub fn build(self) -> Result<Project<T>>

Trait Implementations§

source§

impl<T: ArtifactOutput + Default> Default for ProjectBuilder<T>

source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

§

impl<T> RefUnwindSafe for ProjectBuilder<T>
where T: RefUnwindSafe,

§

impl<T> Send for ProjectBuilder<T>
where T: Send,

§

impl<T> Sync for ProjectBuilder<T>
where T: Sync,

§

impl<T> Unpin for ProjectBuilder<T>
where T: Unpin,

§

impl<T> UnwindSafe for ProjectBuilder<T>
where T: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Pointable for T

source§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

impl<T> JsonSchemaMaybe for T