pub struct ContractArtifact {
pub name: String,
pub functions: Vec<FunctionArtifact>,
pub outputs: Option<Value>,
pub file_map: Option<Value>,
}Expand description
A deserialized contract artifact containing function metadata.
Fields§
§name: StringContract name.
functions: Vec<FunctionArtifact>Functions defined in the contract.
outputs: Option<Value>Compiler output metadata (opaque JSON).
file_map: Option<Value>Source file map (opaque JSON).
Implementations§
Source§impl ContractArtifact
impl ContractArtifact
Sourcepub fn from_json(json: &str) -> Result<Self, Error>
pub fn from_json(json: &str) -> Result<Self, Error>
Deserialize a contract artifact from a JSON string.
Sourcepub fn find_function(&self, name: &str) -> Result<&FunctionArtifact, Error>
pub fn find_function(&self, name: &str) -> Result<&FunctionArtifact, Error>
Find a function by name, returning an error if not found.
Sourcepub fn find_function_by_type(
&self,
name: &str,
function_type: &FunctionType,
) -> Result<&FunctionArtifact, Error>
pub fn find_function_by_type( &self, name: &str, function_type: &FunctionType, ) -> Result<&FunctionArtifact, Error>
Find a function by name and type, returning an error if not found.
Trait Implementations§
Source§impl Clone for ContractArtifact
impl Clone for ContractArtifact
Source§fn clone(&self) -> ContractArtifact
fn clone(&self) -> ContractArtifact
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ContractArtifact
impl Debug for ContractArtifact
Source§impl<'de> Deserialize<'de> for ContractArtifact
impl<'de> Deserialize<'de> for ContractArtifact
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
Source§impl PartialEq for ContractArtifact
impl PartialEq for ContractArtifact
Source§impl Serialize for ContractArtifact
impl Serialize for ContractArtifact
impl Eq for ContractArtifact
impl StructuralPartialEq for ContractArtifact
Auto Trait Implementations§
impl Freeze for ContractArtifact
impl RefUnwindSafe for ContractArtifact
impl Send for ContractArtifact
impl Sync for ContractArtifact
impl Unpin for ContractArtifact
impl UnsafeUnpin for ContractArtifact
impl UnwindSafe for ContractArtifact
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§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