Trait borsh::ser::BorshSerialize [−][src]
pub trait BorshSerialize { fn serialize<W: Write>(&self, writer: &mut W) -> Result<()>; fn try_to_vec(&self) -> Result<Vec<u8>> { ... } }
Expand description
A data-structure that can be serialized into binary format by NBOR.
use borsh::BorshSerialize; #[derive(BorshSerialize)] struct MyBorshSerializableStruct { value: String, } let x = MyBorshSerializableStruct { value: "hello".to_owned() }; let mut buffer: Vec<u8> = Vec::new(); x.serialize(&mut buffer).unwrap(); let single_serialized_buffer_len = buffer.len(); x.serialize(&mut buffer).unwrap(); assert_eq!(buffer.len(), single_serialized_buffer_len * 2); let mut buffer: Vec<u8> = vec![0; 1024 + single_serialized_buffer_len]; let mut buffer_slice_enough_for_the_data = &mut buffer[1024..1024 + single_serialized_buffer_len]; x.serialize(&mut buffer_slice_enough_for_the_data).unwrap();
Required methods
Provided methods
fn try_to_vec(&self) -> Result<Vec<u8>>
fn try_to_vec(&self) -> Result<Vec<u8>>
Serialize this instance into a vector of bytes.
Implementations on Foreign Types
impl<T0, T1, T2> BorshSerialize for (T0, T1, T2) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
impl<T0, T1, T2> BorshSerialize for (T0, T1, T2) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
impl<T0, T1, T2, T3> BorshSerialize for (T0, T1, T2, T3) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
impl<T0, T1, T2, T3> BorshSerialize for (T0, T1, T2, T3) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
impl<T0, T1, T2, T3, T4> BorshSerialize for (T0, T1, T2, T3, T4) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
impl<T0, T1, T2, T3, T4> BorshSerialize for (T0, T1, T2, T3, T4) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5> BorshSerialize for (T0, T1, T2, T3, T4, T5) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5> BorshSerialize for (T0, T1, T2, T3, T4, T5) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
T12: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
T12: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
T12: BorshSerialize,
T13: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
T12: BorshSerialize,
T13: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
T12: BorshSerialize,
T13: BorshSerialize,
T14: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
T12: BorshSerialize,
T13: BorshSerialize,
T14: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
T12: BorshSerialize,
T13: BorshSerialize,
T14: BorshSerialize,
T15: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
T12: BorshSerialize,
T13: BorshSerialize,
T14: BorshSerialize,
T15: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
T12: BorshSerialize,
T13: BorshSerialize,
T14: BorshSerialize,
T15: BorshSerialize,
T16: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
T12: BorshSerialize,
T13: BorshSerialize,
T14: BorshSerialize,
T15: BorshSerialize,
T16: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
T12: BorshSerialize,
T13: BorshSerialize,
T14: BorshSerialize,
T15: BorshSerialize,
T16: BorshSerialize,
T17: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
T12: BorshSerialize,
T13: BorshSerialize,
T14: BorshSerialize,
T15: BorshSerialize,
T16: BorshSerialize,
T17: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
T12: BorshSerialize,
T13: BorshSerialize,
T14: BorshSerialize,
T15: BorshSerialize,
T16: BorshSerialize,
T17: BorshSerialize,
T18: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
T12: BorshSerialize,
T13: BorshSerialize,
T14: BorshSerialize,
T15: BorshSerialize,
T16: BorshSerialize,
T17: BorshSerialize,
T18: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
T12: BorshSerialize,
T13: BorshSerialize,
T14: BorshSerialize,
T15: BorshSerialize,
T16: BorshSerialize,
T17: BorshSerialize,
T18: BorshSerialize,
T19: BorshSerialize,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> BorshSerialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) where
T0: BorshSerialize,
T1: BorshSerialize,
T2: BorshSerialize,
T3: BorshSerialize,
T4: BorshSerialize,
T5: BorshSerialize,
T6: BorshSerialize,
T7: BorshSerialize,
T8: BorshSerialize,
T9: BorshSerialize,
T10: BorshSerialize,
T11: BorshSerialize,
T12: BorshSerialize,
T13: BorshSerialize,
T14: BorshSerialize,
T15: BorshSerialize,
T16: BorshSerialize,
T17: BorshSerialize,
T18: BorshSerialize,
T19: BorshSerialize,
Implementors
impl BorshSerialize for Definition where
u32: BorshSerialize,
Declaration: BorshSerialize,
Declaration: BorshSerialize,
Vec<Declaration>: BorshSerialize,
Vec<(VariantName, Declaration)>: BorshSerialize,
Fields: BorshSerialize,
impl BorshSerialize for Fields where
Vec<(FieldName, Declaration)>: BorshSerialize,
Vec<Declaration>: BorshSerialize,
impl BorshSerialize for BorshSchemaContainer where
Declaration: BorshSerialize,
HashMap<Declaration, Definition>: BorshSerialize,
impl<K, V, H> BorshSerialize for HashMap<K, V, H> where
K: BorshSerialize + PartialOrd,
V: BorshSerialize,
H: BuildHasher,
impl<T, H> BorshSerialize for HashSet<T, H> where
T: BorshSerialize + PartialOrd,
H: BuildHasher,