AnchorDeserialize

Trait AnchorDeserialize 

Source
pub trait AnchorDeserialize: Sized {
    // Required method
    fn deserialize_reader<R>(reader: &mut R) -> Result<Self, Error>
       where R: Read;

    // Provided methods
    fn deserialize(buf: &mut &[u8]) -> Result<Self, Error> { ... }
    fn try_from_slice(v: &[u8]) -> Result<Self, Error> { ... }
    fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>
       where R: Read { ... }
}
Expand description

A data-structure that can be de-serialized from binary format by NBOR.

Required Methods§

Source

fn deserialize_reader<R>(reader: &mut R) -> Result<Self, Error>
where R: Read,

Provided Methods§

Source

fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>

Deserializes this instance from a given slice of bytes. Updates the buffer to point at the remaining bytes.

Source

fn try_from_slice(v: &[u8]) -> Result<Self, Error>

Deserialize this instance from a slice of bytes.

Source

fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>
where R: Read,

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 BorshDeserialize for SocketAddr

Source§

impl BorshDeserialize for QueueType

Source§

impl BorshDeserialize for TreeType

Source§

impl BorshDeserialize for MerkleTreeEvent

Source§

impl BorshDeserialize for MerkleTreeEvent

Source§

impl BorshDeserialize for StakeState

Source§

impl BorshDeserialize for StakeStateV2

Source§

impl BorshDeserialize for bool

Source§

fn deserialize_reader<R>(reader: &mut R) -> Result<bool, Error>
where R: Read,

Source§

impl BorshDeserialize for f32

Source§

fn deserialize_reader<R>(reader: &mut R) -> Result<f32, Error>
where R: Read,

Source§

impl BorshDeserialize for f64

Source§

fn deserialize_reader<R>(reader: &mut R) -> Result<f64, Error>
where R: Read,

Source§

impl BorshDeserialize for i8

Source§

fn deserialize_reader<R>(reader: &mut R) -> Result<i8, Error>
where R: Read,

Source§

impl BorshDeserialize for i16

Source§

fn deserialize_reader<R>(reader: &mut R) -> Result<i16, Error>
where R: Read,

Source§

impl BorshDeserialize for i32

Source§

fn deserialize_reader<R>(reader: &mut R) -> Result<i32, Error>
where R: Read,

Source§

impl BorshDeserialize for i64

Source§

fn deserialize_reader<R>(reader: &mut R) -> Result<i64, Error>
where R: Read,

Source§

impl BorshDeserialize for i128

Source§

fn deserialize_reader<R>(reader: &mut R) -> Result<i128, Error>
where R: Read,

Source§

impl BorshDeserialize for isize

Source§

impl BorshDeserialize for u8

Source§

fn deserialize_reader<R>(reader: &mut R) -> Result<u8, Error>
where R: Read,

Source§

impl BorshDeserialize for u16

Source§

fn deserialize_reader<R>(reader: &mut R) -> Result<u16, Error>
where R: Read,

Source§

impl BorshDeserialize for u32

Source§

fn deserialize_reader<R>(reader: &mut R) -> Result<u32, Error>
where R: Read,

Source§

impl BorshDeserialize for u64

Source§

fn deserialize_reader<R>(reader: &mut R) -> Result<u64, Error>
where R: Read,

Source§

impl BorshDeserialize for u128

Source§

fn deserialize_reader<R>(reader: &mut R) -> Result<u128, Error>
where R: Read,

Source§

impl BorshDeserialize for ()

Source§

fn deserialize_reader<R>(_reader: &mut R) -> Result<(), Error>
where R: Read,

Source§

impl BorshDeserialize for usize

Source§

impl BorshDeserialize for Ipv4Addr

Source§

impl BorshDeserialize for Ipv6Addr

Source§

impl BorshDeserialize for SocketAddrV4

Source§

impl BorshDeserialize for SocketAddrV6

Source§

impl BorshDeserialize for NonZero<i8>

Source§

impl BorshDeserialize for NonZero<i16>

Source§

impl BorshDeserialize for NonZero<i32>

Source§

impl BorshDeserialize for NonZero<i64>

Source§

impl BorshDeserialize for NonZero<i128>

Source§

impl BorshDeserialize for NonZero<u8>

Source§

impl BorshDeserialize for NonZero<u16>

Source§

impl BorshDeserialize for NonZero<u32>

Source§

impl BorshDeserialize for NonZero<u64>

Source§

impl BorshDeserialize for NonZero<u128>

Source§

impl BorshDeserialize for NonZero<usize>

Source§

impl BorshDeserialize for Batch

Source§

impl BorshDeserialize for InitAddressTreeAccountsInstructionData

Source§

impl BorshDeserialize for InitStateTreeAccountsInstructionData

Source§

impl BorshDeserialize for InstructionDataBatchNullifyInputs

Source§

impl BorshDeserialize for BatchedMerkleTreeMetadata

Source§

impl BorshDeserialize for BatchedQueueMetadata

Source§

impl BorshDeserialize for QueueBatches

Source§

impl BorshDeserialize for CompressedAccount

Source§

impl BorshDeserialize for CompressedAccountData

Source§

impl BorshDeserialize for CompressedAccountWithMerkleContext

Source§

impl BorshDeserialize for InCompressedAccount

Source§

impl BorshDeserialize for InCompressedAccountWithMerkleContext

Source§

impl BorshDeserialize for MerkleContext

Source§

impl BorshDeserialize for PackedCompressedAccountWithMerkleContext

Source§

impl BorshDeserialize for PackedInCompressedAccountWithMerkleContext

Source§

impl BorshDeserialize for PackedMerkleContext

Source§

impl BorshDeserialize for PackedReadOnlyCompressedAccount

Source§

impl BorshDeserialize for ReadOnlyCompressedAccount

Source§

impl BorshDeserialize for MerkleTreeSequenceNumber

Source§

impl BorshDeserialize for MerkleTreeSequenceNumberV1

Source§

impl BorshDeserialize for PublicTransactionEvent

Source§

impl BorshDeserialize for CompressedProof

Source§

impl BorshDeserialize for ValidityProof

Source§

impl BorshDeserialize for CompressedCpiContext

Source§

impl BorshDeserialize for InstructionDataInvoke

Source§

impl BorshDeserialize for NewAddressParams

Source§

impl BorshDeserialize for NewAddressParamsAssigned

Source§

impl BorshDeserialize for NewAddressParamsAssignedPacked

Source§

impl BorshDeserialize for NewAddressParamsPacked

Source§

impl BorshDeserialize for OutputCompressedAccountWithContext

Source§

impl BorshDeserialize for OutputCompressedAccountWithPackedContext

Source§

impl BorshDeserialize for PackedReadOnlyAddress

Source§

impl BorshDeserialize for ReadOnlyAddress

Source§

impl BorshDeserialize for InstructionDataInvokeCpi

Source§

impl BorshDeserialize for CompressedAccountInfo

Source§

impl BorshDeserialize for InAccountInfo

Source§

impl BorshDeserialize for InstructionDataInvokeCpiWithAccountInfo

Source§

impl BorshDeserialize for OutAccountInfo

Source§

impl BorshDeserialize for InAccount

Source§

impl BorshDeserialize for InstructionDataInvokeCpiWithReadOnly

Source§

impl BorshDeserialize for Pubkey

Source§

impl BorshDeserialize for ChangelogEvent

Source§

impl BorshDeserialize for IndexedMerkleTreeEvent

Source§

impl BorshDeserialize for MerkleTreeEvents

Source§

impl BorshDeserialize for NullifierEvent

Source§

impl BorshDeserialize for PathNode

Source§

impl BorshDeserialize for AccessMetadata

Source§

impl BorshDeserialize for BatchEvent

Source§

impl BorshDeserialize for ChangelogEvent

Source§

impl BorshDeserialize for IndexedMerkleTreeEvent

Source§

impl BorshDeserialize for MerkleTreeEvents

Source§

impl BorshDeserialize for NullifierEvent

Source§

impl BorshDeserialize for PathNode

Source§

impl BorshDeserialize for MerkleTreeMetadata

Source§

impl BorshDeserialize for QueueMetadata

Source§

impl BorshDeserialize for RolloverMetadata

Source§

impl BorshDeserialize for StakeFlags

Source§

impl BorshDeserialize for Authorized

Source§

impl BorshDeserialize for Delegation

Source§

impl BorshDeserialize for Lockup

Source§

impl BorshDeserialize for Meta

Source§

fn deserialize_reader<R>(reader: &mut R) -> Result<Meta, Error>
where R: Read,

Source§

impl BorshDeserialize for Stake

Source§

impl<I> BorshDeserialize for IndexedMerkleTreeUpdate<I>

Source§

impl<I> BorshDeserialize for RawIndexedElement<I>

Source§

impl<I> BorshDeserialize for IndexedMerkleTreeUpdate<I>

Source§

impl<I> BorshDeserialize for RawIndexedElement<I>

Source§

impl<T0> BorshDeserialize for (T0,)
where T0: BorshDeserialize,

Source§

impl<T0, T1> BorshDeserialize for (T0, T1)

Source§

impl<T0, T1, T2> BorshDeserialize for (T0, T1, T2)

Source§

impl<T0, T1, T2, T3> BorshDeserialize for (T0, T1, T2, T3)

Source§

impl<T0, T1, T2, T3, T4> BorshDeserialize for (T0, T1, T2, T3, T4)

Source§

impl<T0, T1, T2, T3, T4, T5> BorshDeserialize for (T0, T1, T2, T3, T4, T5)

Source§

impl<T0, T1, T2, T3, T4, T5, T6> BorshDeserialize for (T0, T1, T2, T3, T4, T5, T6)

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7> BorshDeserialize for (T0, T1, T2, T3, T4, T5, T6, T7)

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8> BorshDeserialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8)

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> BorshDeserialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> BorshDeserialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> BorshDeserialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> BorshDeserialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> BorshDeserialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> BorshDeserialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> BorshDeserialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> BorshDeserialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16)

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> BorshDeserialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17)

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> BorshDeserialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18)

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> BorshDeserialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19)

Source§

impl<T> BorshDeserialize for Option<T>

Source§

fn deserialize_reader<R>(reader: &mut R) -> Result<Option<T>, Error>
where R: Read,

Source§

impl<T> BorshDeserialize for PhantomData<T>
where T: ?Sized,

Source§

impl<T> BorshDeserialize for Range<T>

Source§

fn deserialize_reader<R>(reader: &mut R) -> Result<Range<T>, Error>
where R: Read,

Source§

impl<T, E> BorshDeserialize for Result<T, E>

Source§

fn deserialize_reader<R>(reader: &mut R) -> Result<Result<T, E>, Error>
where R: Read,

Source§

impl<T, const N: usize> BorshDeserialize for [T; N]

Implementors§

Source§

impl BorshDeserialize for Definition

Source§

impl BorshDeserialize for Fields

Source§

impl BorshDeserialize for BatchAppend

Source§

impl BorshDeserialize for BatchNullify

Source§

impl BorshDeserialize for BatchUpdateAddressTree

Source§

impl BorshDeserialize for DeregisterProgram

Source§

impl BorshDeserialize for InitializeAddressMerkleTreeAndQueue

Source§

impl BorshDeserialize for InitializeBatchedAddressMerkleTree

Source§

impl BorshDeserialize for InitializeBatchedStateMerkleTree

Source§

impl BorshDeserialize for InitializeGroupAuthority

Source§

impl BorshDeserialize for InitializeStateMerkleTreeAndNullifierQueue

Source§

impl BorshDeserialize for InsertIntoQueues

Source§

impl BorshDeserialize for MigrateState

Source§

impl BorshDeserialize for NullifyLeaves

Source§

impl BorshDeserialize for RegisterProgramToGroup

Source§

impl BorshDeserialize for ResizeRegisteredProgramPda

Source§

impl BorshDeserialize for RolloverAddressMerkleTreeAndQueue

Source§

impl BorshDeserialize for RolloverBatchedAddressMerkleTree

Source§

impl BorshDeserialize for RolloverBatchedStateMerkleTree

Source§

impl BorshDeserialize for RolloverStateMerkleTreeAndNullifierQueue

Source§

impl BorshDeserialize for UpdateAddressMerkleTree

Source§

impl BorshDeserialize for UpdateGroupAuthority

Source§

impl BorshDeserialize for AddressMerkleTreeConfig

Source§

impl BorshDeserialize for NullifierQueueConfig

Source§

impl BorshDeserialize for StateMerkleTreeConfig

Source§

impl BorshDeserialize for MigrateLeafParams

Source§

impl BorshDeserialize for RegisteredProgram

Source§

impl BorshDeserialize for RegisteredProgramV1

Source§

impl BorshDeserialize for AddressMerkleTreeAccount

Source§

impl BorshDeserialize for GroupAuthority

Source§

impl BorshDeserialize for StateMerkleTreeAccount

Source§

impl BorshDeserialize for QueueAccount

Source§

impl BorshDeserialize for String

Source§

impl BorshDeserialize for BorshSchemaContainer

Source§

impl BorshDeserialize for account_compression::processor::initialize_address_merkle_tree::Pubkey

Source§

impl<K, V> BorshDeserialize for BTreeMap<K, V>

Source§

impl<K, V, H> BorshDeserialize for HashMap<K, V, H>

Source§

impl<T> BorshDeserialize for Cow<'_, T>
where T: ToOwned + ?Sized, <T as ToOwned>::Owned: BorshDeserialize,

Source§

impl<T> BorshDeserialize for BTreeSet<T>
where T: BorshDeserialize + Ord,

Source§

impl<T> BorshDeserialize for BinaryHeap<T>
where T: BorshDeserialize + Ord,

Source§

impl<T> BorshDeserialize for LinkedList<T>

Source§

impl<T> BorshDeserialize for VecDeque<T>

Source§

impl<T> BorshDeserialize for Vec<T>

Source§

impl<T, H> BorshDeserialize for HashSet<T, H>

Source§

impl<T, U> BorshDeserialize for Box<T>
where U: Into<Box<T>> + Borrow<T>, T: ToOwned<Owned = U> + ?Sized, <T as ToOwned>::Owned: BorshDeserialize,