pub struct TransactionWitnessSetBuilder {
pub vkeys: HashMap<Vkey, Vkeywitness>,
pub bootstraps: HashMap<Vkey, BootstrapWitness>,
pub scripts: HashMap<ScriptHash, Script>,
pub plutus_data: LinkedHashMap<DatumHash, PlutusData>,
pub redeemers: LinkedHashMap<RedeemerWitnessKey, LegacyRedeemer>,
pub required_wits: RequiredWitnessSet,
}Expand description
Builder de-duplicates witnesses as they are added
Fields§
§vkeys: HashMap<Vkey, Vkeywitness>§bootstraps: HashMap<Vkey, BootstrapWitness>§scripts: HashMap<ScriptHash, Script>§plutus_data: LinkedHashMap<DatumHash, PlutusData>§redeemers: LinkedHashMap<RedeemerWitnessKey, LegacyRedeemer>§required_wits: RequiredWitnessSetwitnesses that need to be added for the build function to succeed this allows checking that witnesses are present at build time (instead of when submitting to a node) This is useful for APIs that can keep track of which witnesses will be required (like transaction builders)
Implementations§
Source§impl TransactionWitnessSetBuilder
impl TransactionWitnessSetBuilder
pub fn add_vkey(&mut self, vkey_witness: Vkeywitness)
pub fn add_bootstrap(&mut self, bootstrap: BootstrapWitness)
pub fn add_script(&mut self, script: Script)
pub fn get_native_script(&self) -> Vec<NativeScript>
pub fn get_plutus_v1_script(&self) -> Vec<PlutusV1Script>
pub fn get_plutus_v2_script(&self) -> Vec<PlutusV2Script>
pub fn get_plutus_v3_script(&self) -> Vec<PlutusV3Script>
pub fn add_plutus_datum(&mut self, plutus_datum: PlutusData)
pub fn get_plutus_datum(&self) -> Vec<PlutusData>
pub fn add_redeemer(&mut self, redeemer: LegacyRedeemer)
pub fn get_redeemer(&self) -> Vec<LegacyRedeemer>
pub fn add_required_wits(&mut self, required_wits: RequiredWitnessSet)
pub fn new() -> Self
pub fn add_existing(&mut self, wit_set: TransactionWitnessSet)
pub fn build(self) -> TransactionWitnessSet
pub fn remaining_wits(&self) -> RequiredWitnessSet
pub fn try_build(&self) -> Result<TransactionWitnessSet, WitnessBuilderError>
Trait Implementations§
Source§impl Clone for TransactionWitnessSetBuilder
impl Clone for TransactionWitnessSetBuilder
Source§fn clone(&self) -> TransactionWitnessSetBuilder
fn clone(&self) -> TransactionWitnessSetBuilder
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 TransactionWitnessSetBuilder
impl Debug for TransactionWitnessSetBuilder
Source§impl Default for TransactionWitnessSetBuilder
impl Default for TransactionWitnessSetBuilder
Source§fn default() -> TransactionWitnessSetBuilder
fn default() -> TransactionWitnessSetBuilder
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for TransactionWitnessSetBuilder
impl RefUnwindSafe for TransactionWitnessSetBuilder
impl Send for TransactionWitnessSetBuilder
impl Sync for TransactionWitnessSetBuilder
impl Unpin for TransactionWitnessSetBuilder
impl UnwindSafe for TransactionWitnessSetBuilder
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<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