Trait SolParamsEncode

Source
pub trait SolParamsEncode<'a>: SolEncode<'a> + Sealed {
    const SOL_NAME: &'static str = _;

    // Required method
    fn encode(&'a self) -> Vec<u8> ;
}
Expand description

Solidity ABI encode function parameters.

§Note

This trait is sealed and cannot be implemented for types outside ink_primitives.

Provided Associated Constants§

Source

const SOL_NAME: &'static str = _

Name of equivalent Solidity ABI type.

Required Methods§

Source

fn encode(&'a self) -> Vec<u8>

Solidity ABI encode the value as function parameters.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl SolParamsEncode<'_> for ()

Source§

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

Source§

impl<'a, TupleElement0: SolEncode<'a>> SolParamsEncode<'a> for (TupleElement0,)

Source§

fn encode(&'a self) -> Vec<u8>

Source§

impl<'a, TupleElement0: SolEncode<'a>, TupleElement1: SolEncode<'a>> SolParamsEncode<'a> for (TupleElement0, TupleElement1)

Source§

fn encode(&'a self) -> Vec<u8>

Source§

impl<'a, TupleElement0: SolEncode<'a>, TupleElement1: SolEncode<'a>, TupleElement2: SolEncode<'a>> SolParamsEncode<'a> for (TupleElement0, TupleElement1, TupleElement2)

Source§

fn encode(&'a self) -> Vec<u8>

Source§

impl<'a, TupleElement0: SolEncode<'a>, TupleElement1: SolEncode<'a>, TupleElement2: SolEncode<'a>, TupleElement3: SolEncode<'a>> SolParamsEncode<'a> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3)

Source§

fn encode(&'a self) -> Vec<u8>

Source§

impl<'a, TupleElement0: SolEncode<'a>, TupleElement1: SolEncode<'a>, TupleElement2: SolEncode<'a>, TupleElement3: SolEncode<'a>, TupleElement4: SolEncode<'a>> SolParamsEncode<'a> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4)

Source§

fn encode(&'a self) -> Vec<u8>

Source§

impl<'a, TupleElement0: SolEncode<'a>, TupleElement1: SolEncode<'a>, TupleElement2: SolEncode<'a>, TupleElement3: SolEncode<'a>, TupleElement4: SolEncode<'a>, TupleElement5: SolEncode<'a>> SolParamsEncode<'a> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5)

Source§

fn encode(&'a self) -> Vec<u8>

Source§

impl<'a, TupleElement0: SolEncode<'a>, TupleElement1: SolEncode<'a>, TupleElement2: SolEncode<'a>, TupleElement3: SolEncode<'a>, TupleElement4: SolEncode<'a>, TupleElement5: SolEncode<'a>, TupleElement6: SolEncode<'a>> SolParamsEncode<'a> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6)

Source§

fn encode(&'a self) -> Vec<u8>

Source§

impl<'a, TupleElement0: SolEncode<'a>, TupleElement1: SolEncode<'a>, TupleElement2: SolEncode<'a>, TupleElement3: SolEncode<'a>, TupleElement4: SolEncode<'a>, TupleElement5: SolEncode<'a>, TupleElement6: SolEncode<'a>, TupleElement7: SolEncode<'a>> SolParamsEncode<'a> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7)

Source§

fn encode(&'a self) -> Vec<u8>

Source§

impl<'a, TupleElement0: SolEncode<'a>, TupleElement1: SolEncode<'a>, TupleElement2: SolEncode<'a>, TupleElement3: SolEncode<'a>, TupleElement4: SolEncode<'a>, TupleElement5: SolEncode<'a>, TupleElement6: SolEncode<'a>, TupleElement7: SolEncode<'a>, TupleElement8: SolEncode<'a>> SolParamsEncode<'a> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8)

Source§

fn encode(&'a self) -> Vec<u8>

Source§

impl<'a, TupleElement0: SolEncode<'a>, TupleElement1: SolEncode<'a>, TupleElement2: SolEncode<'a>, TupleElement3: SolEncode<'a>, TupleElement4: SolEncode<'a>, TupleElement5: SolEncode<'a>, TupleElement6: SolEncode<'a>, TupleElement7: SolEncode<'a>, TupleElement8: SolEncode<'a>, TupleElement9: SolEncode<'a>> SolParamsEncode<'a> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9)

Source§

fn encode(&'a self) -> Vec<u8>

Source§

impl<'a, TupleElement0: SolEncode<'a>, TupleElement1: SolEncode<'a>, TupleElement2: SolEncode<'a>, TupleElement3: SolEncode<'a>, TupleElement4: SolEncode<'a>, TupleElement5: SolEncode<'a>, TupleElement6: SolEncode<'a>, TupleElement7: SolEncode<'a>, TupleElement8: SolEncode<'a>, TupleElement9: SolEncode<'a>, TupleElement10: SolEncode<'a>> SolParamsEncode<'a> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10)

Source§

fn encode(&'a self) -> Vec<u8>

Source§

impl<'a, TupleElement0: SolEncode<'a>, TupleElement1: SolEncode<'a>, TupleElement2: SolEncode<'a>, TupleElement3: SolEncode<'a>, TupleElement4: SolEncode<'a>, TupleElement5: SolEncode<'a>, TupleElement6: SolEncode<'a>, TupleElement7: SolEncode<'a>, TupleElement8: SolEncode<'a>, TupleElement9: SolEncode<'a>, TupleElement10: SolEncode<'a>, TupleElement11: SolEncode<'a>> SolParamsEncode<'a> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11)

Source§

fn encode(&'a self) -> Vec<u8>

Implementors§