Skip to main content

AbiEncode

Trait AbiEncode 

Source
pub trait AbiEncode: Sized + AbiType {
    // Required method
    fn enc(&self, out: &mut AbiEncoder);

    // Provided methods
    fn abi_encode(&self) -> Vec<u8>  { ... }
    fn abi_encode_call(&self, selector: Bytes4) -> Vec<u8>  { ... }
}
Expand description

Encode value using ABI encoding.

Required Methods§

Source

fn enc(&self, out: &mut AbiEncoder)

Provided Methods§

Source

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

Source

fn abi_encode_call(&self, selector: Bytes4) -> Vec<u8>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl AbiEncode for &str

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl AbiEncode for ()

Source§

fn enc(&self, _out: &mut AbiEncoder)

Source§

impl AbiEncode for H160

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl AbiEncode for U256

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl AbiEncode for bool

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl AbiEncode for i8

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl AbiEncode for i16

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl AbiEncode for i32

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl AbiEncode for i64

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl AbiEncode for i128

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl AbiEncode for u8

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl AbiEncode for u16

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl AbiEncode for u32

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl AbiEncode for u64

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl AbiEncode for u128

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<A: AbiEncode, B: AbiEncode, C: AbiEncode, D: AbiEncode, E: AbiEncode, F: AbiEncode, G: AbiEncode, H: AbiEncode, I: AbiEncode, J: AbiEncode, K: AbiEncode, L: AbiEncode, M: AbiEncode, N: AbiEncode, O: AbiEncode, P: AbiEncode> AbiEncode for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P)

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<A: AbiEncode, B: AbiEncode, C: AbiEncode, D: AbiEncode, E: AbiEncode, F: AbiEncode, G: AbiEncode, H: AbiEncode, I: AbiEncode, J: AbiEncode, K: AbiEncode, L: AbiEncode, M: AbiEncode, N: AbiEncode, O: AbiEncode> AbiEncode for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O)

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<A: AbiEncode, B: AbiEncode, C: AbiEncode, D: AbiEncode, E: AbiEncode, F: AbiEncode, G: AbiEncode, H: AbiEncode, I: AbiEncode, J: AbiEncode, K: AbiEncode, L: AbiEncode, M: AbiEncode, N: AbiEncode> AbiEncode for (A, B, C, D, E, F, G, H, I, J, K, L, M, N)

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<A: AbiEncode, B: AbiEncode, C: AbiEncode, D: AbiEncode, E: AbiEncode, F: AbiEncode, G: AbiEncode, H: AbiEncode, I: AbiEncode, J: AbiEncode, K: AbiEncode, L: AbiEncode, M: AbiEncode> AbiEncode for (A, B, C, D, E, F, G, H, I, J, K, L, M)

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<A: AbiEncode, B: AbiEncode, C: AbiEncode, D: AbiEncode, E: AbiEncode, F: AbiEncode, G: AbiEncode, H: AbiEncode, I: AbiEncode, J: AbiEncode, K: AbiEncode, L: AbiEncode> AbiEncode for (A, B, C, D, E, F, G, H, I, J, K, L)

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<A: AbiEncode, B: AbiEncode, C: AbiEncode, D: AbiEncode, E: AbiEncode, F: AbiEncode, G: AbiEncode, H: AbiEncode, I: AbiEncode, J: AbiEncode, K: AbiEncode> AbiEncode for (A, B, C, D, E, F, G, H, I, J, K)

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<A: AbiEncode, B: AbiEncode, C: AbiEncode, D: AbiEncode, E: AbiEncode, F: AbiEncode, G: AbiEncode, H: AbiEncode, I: AbiEncode, J: AbiEncode> AbiEncode for (A, B, C, D, E, F, G, H, I, J)

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<A: AbiEncode, B: AbiEncode, C: AbiEncode, D: AbiEncode, E: AbiEncode, F: AbiEncode, G: AbiEncode, H: AbiEncode, I: AbiEncode> AbiEncode for (A, B, C, D, E, F, G, H, I)

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<A: AbiEncode, B: AbiEncode, C: AbiEncode, D: AbiEncode, E: AbiEncode, F: AbiEncode, G: AbiEncode, H: AbiEncode> AbiEncode for (A, B, C, D, E, F, G, H)

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<A: AbiEncode, B: AbiEncode, C: AbiEncode, D: AbiEncode, E: AbiEncode, F: AbiEncode, G: AbiEncode> AbiEncode for (A, B, C, D, E, F, G)

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<A: AbiEncode, B: AbiEncode, C: AbiEncode, D: AbiEncode, E: AbiEncode, F: AbiEncode> AbiEncode for (A, B, C, D, E, F)

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<A: AbiEncode, B: AbiEncode, C: AbiEncode, D: AbiEncode, E: AbiEncode> AbiEncode for (A, B, C, D, E)

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<A: AbiEncode, B: AbiEncode, C: AbiEncode, D: AbiEncode> AbiEncode for (A, B, C, D)

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<A: AbiEncode, B: AbiEncode, C: AbiEncode> AbiEncode for (A, B, C)

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<A: AbiEncode, B: AbiEncode> AbiEncode for (A, B)

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<A: AbiEncode> AbiEncode for (A,)

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<T: AbiEncode + AbiEncodeZero> AbiEncode for Option<T>

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<T: AbiEncode, const S: usize> AbiEncode for [T; S]

Source§

fn enc(&self, out: &mut AbiEncoder)

Source§

impl<T> AbiEncode for &T
where T: AbiEncode,

Source§

fn enc(&self, out: &mut AbiEncoder)

Implementors§