pub struct Libraries {
pub libs: BTreeMap<PathBuf, BTreeMap<String, String>>,
}
Expand description
A wrapper type for all libraries in the form of <file>:<lib>:<addr>
Fields§
§libs: BTreeMap<PathBuf, BTreeMap<String, String>>
All libraries, `(file path -> (Lib name -> Address))
Implementations§
Source§impl Libraries
impl Libraries
Sourcepub fn parse(libs: &[String]) -> Result<Self, SolcError>
pub fn parse(libs: &[String]) -> Result<Self, SolcError>
Parses all libraries in the form of
<file>:<lib>:<addr>
§Example
use ethers_solc::artifacts::Libraries;
let libs = Libraries::parse(&[
"src/DssSpell.sol:DssExecLib:0xfD88CeE74f7D78697775aBDAE53f9Da1559728E4".to_string(),
])
.unwrap();
pub fn is_empty(&self) -> bool
pub fn len(&self) -> usize
Sourcepub fn with_applied_remappings(self, config: &ProjectPathsConfig) -> Self
pub fn with_applied_remappings(self, config: &ProjectPathsConfig) -> Self
Solc expects the lib paths to match the global path after remappings were applied
See also ProjectPathsConfig::resolve_import
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Libraries
impl<'de> Deserialize<'de> for Libraries
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for Libraries
impl StructuralPartialEq for Libraries
Auto Trait Implementations§
impl Freeze for Libraries
impl RefUnwindSafe for Libraries
impl Send for Libraries
impl Sync for Libraries
impl Unpin for Libraries
impl UnwindSafe for Libraries
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more