pub struct TransactionManifestV2 {
pub instructions: Vec<InstructionV2>,
pub blobs: IndexMap<Hash, Vec<u8>>,
pub children: IndexSet<ChildSubintentSpecifier>,
pub object_names: ManifestObjectNames,
}Expand description
Can be built with a [ManifestV2Builder]
Fields§
§instructions: Vec<InstructionV2>§blobs: IndexMap<Hash, Vec<u8>>§children: IndexSet<ChildSubintentSpecifier>§object_names: ManifestObjectNamesImplementations§
Source§impl TransactionManifestV2
impl TransactionManifestV2
pub fn empty() -> TransactionManifestV2
pub fn from_intent_core(intent: &IntentCoreV2) -> TransactionManifestV2
pub fn to_intent_core( self, header: IntentHeaderV2, message: MessageV2, ) -> IntentCoreV2
pub fn for_intent(self) -> (InstructionsV2, BlobsV1, ChildSubintentSpecifiersV2)
pub fn for_intent_with_names( self, ) -> (InstructionsV2, BlobsV1, ChildSubintentSpecifiersV2, ManifestObjectNames)
Trait Implementations§
Source§impl BuildableManifest for TransactionManifestV2
impl BuildableManifest for TransactionManifestV2
fn add_instruction( &mut self, instruction: <TransactionManifestV2 as TypedReadableManifest>::Instruction, )
fn add_blob(&mut self, hash: Hash, content: Vec<u8>)
fn set_names(&mut self, names: KnownManifestObjectNames)
fn add_child_subintent( &mut self, hash: SubintentHash, ) -> Result<(), ManifestBuildError>
fn default_test_execution_config_type(&self) -> DefaultTestExecutionConfigType
fn into_executable_with_proofs( self, nonce: u32, initial_proofs: BTreeSet<NonFungibleGlobalId>, validator: &TransactionValidator, ) -> Result<ExecutableTransaction, String>
fn builder() -> ManifestBuilder<Self>
fn set_names_if_known(&mut self, names: impl Into<ManifestObjectNames>)
fn add_preallocated_address( &mut self, _preallocated: PreAllocatedAddress, ) -> Result<(), ManifestBuildError>
fn preallocation_count(&self) -> usize
fn to_raw(self) -> Result<RawManifest, EncodeError>
fn from_raw(raw: &RawManifest) -> Result<Self, String>
fn decode_arbitrary(bytes: impl AsRef<[u8]>) -> Result<Self, String>
Source§impl Clone for TransactionManifestV2
impl Clone for TransactionManifestV2
Source§fn clone(&self) -> TransactionManifestV2
fn clone(&self) -> TransactionManifestV2
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 TransactionManifestV2
impl Debug for TransactionManifestV2
Source§impl<D> Decode<ManifestCustomValueKind, D> for TransactionManifestV2where
D: Decoder<ManifestCustomValueKind>,
impl<D> Decode<ManifestCustomValueKind, D> for TransactionManifestV2where
D: Decoder<ManifestCustomValueKind>,
Source§fn decode_body_with_value_kind(
decoder: &mut D,
value_kind: ValueKind<ManifestCustomValueKind>,
) -> Result<TransactionManifestV2, DecodeError>
fn decode_body_with_value_kind( decoder: &mut D, value_kind: ValueKind<ManifestCustomValueKind>, ) -> Result<TransactionManifestV2, DecodeError>
Decodes the type from the decoder, which should match a preloaded value kind. Read more
Source§impl Default for TransactionManifestV2
impl Default for TransactionManifestV2
Source§fn default() -> TransactionManifestV2
fn default() -> TransactionManifestV2
Returns the “default value” for a type. Read more
Source§impl Describe<ScryptoCustomTypeKind> for TransactionManifestV2
impl Describe<ScryptoCustomTypeKind> for TransactionManifestV2
Source§const TYPE_ID: RustTypeId
const TYPE_ID: RustTypeId
The
TYPE_ID should give a unique identifier for its SBOR schema type.
An SBOR schema type capture details about the SBOR payload, how it should be interpreted, validated and displayed. Read moreSource§fn type_data() -> TypeData<ScryptoCustomTypeKind, RustTypeId>
fn type_data() -> TypeData<ScryptoCustomTypeKind, RustTypeId>
Returns the local schema for the given type. Read more
Source§fn add_all_dependencies(aggregator: &mut TypeAggregator<ScryptoCustomTypeKind>)
fn add_all_dependencies(aggregator: &mut TypeAggregator<ScryptoCustomTypeKind>)
For each type referenced in
get_local_type_data, we need to ensure that the type and all of its own references
get added to the aggregator. Read moreSource§impl<E> Encode<ManifestCustomValueKind, E> for TransactionManifestV2where
E: Encoder<ManifestCustomValueKind>,
impl<E> Encode<ManifestCustomValueKind, E> for TransactionManifestV2where
E: Encoder<ManifestCustomValueKind>,
Source§fn encode_value_kind(&self, encoder: &mut E) -> Result<(), EncodeError>
fn encode_value_kind(&self, encoder: &mut E) -> Result<(), EncodeError>
Encodes the SBOR value’s kind to the encoder
Source§fn encode_body(&self, encoder: &mut E) -> Result<(), EncodeError>
fn encode_body(&self, encoder: &mut E) -> Result<(), EncodeError>
Encodes the SBOR body of the type to the encoder. Read more
Source§impl From<TransactionManifestV2> for AnyManifest
impl From<TransactionManifestV2> for AnyManifest
Source§fn from(value: TransactionManifestV2) -> AnyManifest
fn from(value: TransactionManifestV2) -> AnyManifest
Converts to this type from the input type.
Source§impl From<TransactionManifestV2> for UserTransactionManifest
impl From<TransactionManifestV2> for UserTransactionManifest
Source§fn from(value: TransactionManifestV2) -> UserTransactionManifest
fn from(value: TransactionManifestV2) -> UserTransactionManifest
Converts to this type from the input type.
Source§impl PartialEq for TransactionManifestV2
impl PartialEq for TransactionManifestV2
Source§impl ReadableManifestBase for TransactionManifestV2
impl ReadableManifestBase for TransactionManifestV2
fn is_subintent(&self) -> bool
fn get_blobs<'a>(&'a self) -> impl Iterator<Item = (&'a Hash, &'a Vec<u8>)>
fn get_child_subintent_hashes<'a>(&'a self) -> impl ExactSizeIterator
fn get_known_object_names_ref(&self) -> ManifestObjectNamesRef<'_>
fn get_preallocated_addresses(&self) -> &[PreAllocatedAddress]
Source§impl SborTuple<ManifestCustomValueKind> for TransactionManifestV2
impl SborTuple<ManifestCustomValueKind> for TransactionManifestV2
fn get_length(&self) -> usize
Source§impl TryFrom<AnyManifest> for TransactionManifestV2
impl TryFrom<AnyManifest> for TransactionManifestV2
Source§fn try_from(
value: AnyManifest,
) -> Result<TransactionManifestV2, <TransactionManifestV2 as TryFrom<AnyManifest>>::Error>
fn try_from( value: AnyManifest, ) -> Result<TransactionManifestV2, <TransactionManifestV2 as TryFrom<AnyManifest>>::Error>
Performs the conversion.
Source§impl TypedReadableManifest for TransactionManifestV2
impl TypedReadableManifest for TransactionManifestV2
type Instruction = InstructionV2
fn get_typed_instructions( &self, ) -> &[<TransactionManifestV2 as TypedReadableManifest>::Instruction]
impl BuildableManifestSupportingChildren for TransactionManifestV2
impl Eq for TransactionManifestV2
impl StructuralPartialEq for TransactionManifestV2
Auto Trait Implementations§
impl Freeze for TransactionManifestV2
impl RefUnwindSafe for TransactionManifestV2
impl Send for TransactionManifestV2
impl Sync for TransactionManifestV2
impl Unpin for TransactionManifestV2
impl UnwindSafe for TransactionManifestV2
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, U> ContextualTryInto<U> for Twhere
U: ContextualTryFrom<T>,
impl<T, U> ContextualTryInto<U> for Twhere
U: ContextualTryFrom<T>,
type Error = <U as ContextualTryFrom<T>>::Error
type Context = <U as ContextualTryFrom<T>>::Context
fn contextual_try_into( self, context: &<U as ContextualTryFrom<T>>::Context, ) -> Result<U, <U as ContextualTryFrom<T>>::Error>
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
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<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> 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 moreSource§impl<X, Y> LabelledResolve<Y> for Xwhere
Y: LabelledResolveFrom<X>,
impl<X, Y> LabelledResolve<Y> for Xwhere
Y: LabelledResolveFrom<X>,
fn labelled_resolve( self, resolver: &impl LabelResolver<<Y as LabelledResolvable>::ResolverOutput>, ) -> Y
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> ReadableManifest for Twhere
T: TypedReadableManifest + ?Sized,
impl<T> ReadableManifest for Twhere
T: TypedReadableManifest + ?Sized,
fn iter_instruction_effects( &self, ) -> impl Iterator<Item = ManifestInstructionEffect<'_>>
fn iter_cloned_instructions(&self) -> impl Iterator<Item = InstructionV2>
fn instruction_count(&self) -> usize
Source§fn instruction_effect(&self, index: usize) -> ManifestInstructionEffect<'_>
fn instruction_effect(&self, index: usize) -> ManifestInstructionEffect<'_>
Panics if index is out of bounds