Skip to main content

SendToHub

Struct SendToHub 

Source
#[repr(C)]
pub struct SendToHub { pub selector: U256, pub destination_chain: String, pub payload: Bytes, }
Expand description

This message is used to route an ITS message via the ITS Hub. The ITS Hub applies certain security checks, and then routes it to the true destination chain. This mode is enabled if the trusted address corresponding to the destination chain is set to the ITS Hub identifier.

struct SendToHub { uint256 selector; string destination_chain; bytes payload; }

Fields§

§selector: U256

Should always have a value of 3

§destination_chain: String

The true destination chain for the ITS call

§payload: Bytes

The actual ITS message that’s being routed through ITS Hub

Implementations§

Trait Implementations§

Source§

impl Clone for SendToHub

Source§

fn clone(&self) -> SendToHub

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for SendToHub

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl EventTopic for SendToHub

Source§

fn topic_preimage_length(rust: &Self::RustType) -> usize

The number of bytes this type occupies in another topic’s preimage, usually a multiple of 32. Read more
Source§

fn encode_topic_preimage(rust: &Self::RustType, out: &mut Vec<u8>)

Encodes this type as preimage bytes which are then hashed in complex types’ encode_topic. Read more
Source§

fn encode_topic(rust: &Self::RustType) -> WordToken

Indexed event parameter encoding. Read more
Source§

impl PartialEq for SendToHub

Source§

fn eq(&self, other: &SendToHub) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl SolStruct for SendToHub

Source§

const NAME: &'static str = "SendToHub"

The struct name. Read more
Source§

fn eip712_root_type() -> Cow<'static, str>

Return the root EIP-712 type. This type is used to construct the encodeType string.
Source§

fn eip712_components() -> Vec<Cow<'static, str>>

Returns component EIP-712 types. These types are used to construct the encodeType string. These are the types of the struct’s fields, and should not include the root type.
Source§

fn eip712_encode_type() -> Cow<'static, str>

The EIP-712-encoded type string. Read more
Source§

fn eip712_encode_data(&self) -> Vec<u8>

Encodes this domain using EIP-712 encodeData.
Source§

fn eip712_type_hash(&self) -> FixedBytes<32>

Calculates the EIP-712 typeHash for this struct. Read more
Source§

fn eip712_hash_struct(&self) -> FixedBytes<32>

Hashes this struct according to EIP-712 hashStruct.
Source§

fn eip712_signing_hash(&self, domain: &Eip712Domain) -> FixedBytes<32>

Does something. Read more
Source§

impl SolType for SendToHub

Source§

const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME

The name of this type in Solidity.
Source§

const ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple as alloy_sol_types::SolType>::ENCODED_SIZE

The statically-known ABI-encoded size of the type. Read more
Source§

const PACKED_ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE

The statically-known Non-standard Packed Mode ABI-encoded size of the type. Read more
Source§

type RustType = SendToHub

The corresponding Rust type.
Source§

type Token<'a> = <(Uint<256>, String, Bytes) as SolType>::Token<'a>

The corresponding ABI token type. Read more
Source§

fn valid_token(token: &Self::Token<'_>) -> bool

Returns true if the given token can be detokenized with this type.
Source§

fn detokenize(token: Self::Token<'_>) -> Self::RustType

Detokenize this type’s value from the given token. Read more
Source§

const DYNAMIC: bool = _

Whether the ABI-encoded size is dynamic. Read more
Source§

fn sol_type_name() -> Cow<'static, str>

👎Deprecated since 0.6.3:

use SOL_NAME instead

Returns the name of this type in Solidity.
Source§

fn abi_encoded_size<E>(rust: &E) -> usize
where E: SolTypeValue<Self> + ?Sized,

Calculate the ABI-encoded size of the data, counting both head and tail words. For a single-word type this will always be 32.
Source§

fn type_check(token: &Self::Token<'_>) -> Result<(), Error>

Returns an error if the given token cannot be detokenized with this type.
Source§

fn tokenize<E>(rust: &E) -> Self::Token<'_>
where E: SolTypeValue<Self> + ?Sized,

Tokenizes the given value into this type’s token. Read more
Source§

fn eip712_data_word<E>(rust: &E) -> FixedBytes<32>
where E: SolTypeValue<Self> + ?Sized,

Encode this data according to EIP-712 encodeData rules, and hash it if necessary. Read more
Source§

fn abi_packed_encoded_size<E>(rust: &E) -> usize
where E: SolTypeValue<Self> + ?Sized,

Returns the length of this value when ABI-encoded in Non-standard Packed Mode. Read more
Source§

fn abi_encode_packed_to<E>(rust: &E, out: &mut Vec<u8>)
where E: SolTypeValue<Self> + ?Sized,

Non-standard Packed Mode ABI encoding. Read more
Source§

fn abi_encode_packed<E>(rust: &E) -> Vec<u8>
where E: SolTypeValue<Self> + ?Sized,

Non-standard Packed Mode ABI encoding. Read more
Source§

fn abi_encode<E>(rust: &E) -> Vec<u8>
where E: SolTypeValue<Self> + ?Sized,

Tokenizes and ABI-encodes the given value by wrapping it in a single-element sequence. Read more
Source§

fn abi_encode_params<E>(rust: &E) -> Vec<u8>
where E: SolTypeValue<Self> + ?Sized, Self::Token<'a>: for<'a> TokenSeq<'a>,

Tokenizes and ABI-encodes the given value as function parameters. Read more
Source§

fn abi_encode_sequence<E>(rust: &E) -> Vec<u8>
where E: SolTypeValue<Self> + ?Sized, Self::Token<'a>: for<'a> TokenSeq<'a>,

Tokenizes and ABI-encodes the given value as a sequence. Read more
Source§

fn abi_decode(data: &[u8], validate: bool) -> Result<Self::RustType, Error>

Decodes this type’s value from an ABI blob by interpreting it as a single-element sequence. Read more
Source§

fn abi_decode_params<'de>( data: &'de [u8], validate: bool, ) -> Result<Self::RustType, Error>
where Self::Token<'de>: TokenSeq<'de>,

Decodes this type’s value from an ABI blob by interpreting it as function parameters. Read more
Source§

fn abi_decode_sequence<'de>( data: &'de [u8], validate: bool, ) -> Result<Self::RustType, Error>
where Self::Token<'de>: TokenSeq<'de>,

Decodes this type’s value from an ABI blob by interpreting it as a sequence. Read more
Source§

impl SolTypeValue<SendToHub> for SendToHub

Source§

impl SolValue for SendToHub

Source§

type SolType = SendToHub

The Solidity type that this type corresponds to.
Source§

fn sol_name(&self) -> &'static str

The name of the associated Solidity type. Read more
Source§

fn sol_type_name(&self) -> Cow<'static, str>

👎Deprecated since 0.6.3:

use sol_name instead

The name of the associated Solidity type. Read more
Source§

fn tokenize(&self) -> <Self::SolType as SolType>::Token<'_>

Tokenizes the given value into this type’s token. Read more
Source§

fn detokenize(token: <Self::SolType as SolType>::Token<'_>) -> Self
where Self: From<<Self::SolType as SolType>::RustType>,

Detokenize a value from the given token. Read more
Source§

fn abi_encoded_size(&self) -> usize

Calculate the ABI-encoded size of the data. Read more
Source§

fn eip712_data_word(&self) -> FixedBytes<32>

Encode this data according to EIP-712 encodeData rules, and hash it if necessary. Read more
Source§

fn abi_encode_packed_to(&self, out: &mut Vec<u8>)

Non-standard Packed Mode ABI encoding. Read more
Source§

fn abi_encode_packed(&self) -> Vec<u8>

Non-standard Packed Mode ABI encoding. Read more
Source§

fn abi_encode(&self) -> Vec<u8>

ABI-encodes the value. Read more
Source§

fn abi_encode_sequence(&self) -> Vec<u8>
where <Self::SolType as SolType>::Token<'a>: for<'a> TokenSeq<'a>,

Encodes an ABI sequence. Read more
Source§

fn abi_encode_params(&self) -> Vec<u8>
where <Self::SolType as SolType>::Token<'a>: for<'a> TokenSeq<'a>,

Encodes an ABI sequence suitable for function parameters. Read more
Source§

fn abi_decode(data: &[u8], validate: bool) -> Result<Self, Error>
where Self: From<<Self::SolType as SolType>::RustType>,

ABI-decode this type from the given data. Read more
Source§

fn abi_decode_params<'de>( data: &'de [u8], validate: bool, ) -> Result<Self, Error>
where Self: From<<Self::SolType as SolType>::RustType>, <Self::SolType as SolType>::Token<'de>: TokenSeq<'de>,

ABI-decode this type from the given data. Read more
Source§

fn abi_decode_sequence<'de>( data: &'de [u8], validate: bool, ) -> Result<Self, Error>
where Self: From<<Self::SolType as SolType>::RustType>, <Self::SolType as SolType>::Token<'de>: TokenSeq<'de>,

ABI-decode this type from the given data. Read more
Source§

impl StructuralPartialEq for SendToHub

Auto Trait Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

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>,

Source§

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.