[][src]Struct ckb_types::packed::OutPoint

pub struct OutPoint(_);

Implementations

impl OutPoint[src]

pub const TOTAL_SIZE: usize[src]

pub const FIELD_SIZES: [usize; 2][src]

pub const FIELD_COUNT: usize[src]

pub fn tx_hash(&self) -> Byte32[src]

pub fn index(&self) -> Uint32[src]

pub fn as_reader<'r>(&'r self) -> OutPointReader<'r>[src]

impl OutPoint[src]

pub fn new(tx_hash: Byte32, index: u32) -> Self[src]

Creates a new OutPoint.

pub fn null() -> Self[src]

Creates a new null OutPoint.

pub fn is_null(&self) -> bool[src]

Checks whether self is a null OutPoint.

pub fn to_cell_key(&self) -> Vec<u8>[src]

Generates a binary data to be used as a key for indexing cells in storage.

Notice

The difference between Self::as_slice() and Self::to_cell_key() is the byteorder of the field index.

  • Uses little endian for the field index in serialization.

    Because in the real world, the little endian machines make up the majority, we can cast it as a number without re-order the bytes.

  • Uses big endian for the field index to index cells in storage.

    So we can use tx_hash as key prefix to seek the cells from storage in the forward order, so as to traverse cells in the forward order too.

Trait Implementations

impl Clone for OutPoint[src]

impl Debug for OutPoint[src]

impl Default for OutPoint[src]

impl Display for OutPoint[src]

impl Entity for OutPoint[src]

type Builder = OutPointBuilder

impl Eq for OutPoint[src]

impl Hash for OutPoint[src]

impl LowerHex for OutPoint[src]

impl<T> PackVec<OutPointVec, OutPoint> for T where
    T: IntoIterator<Item = OutPoint>, 
[src]

impl PartialEq<OutPoint> for OutPoint[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> PackVec<OutPointVec, OutPoint> for T where
    T: IntoIterator<Item = OutPoint>, 
[src]

impl<T> PackVec<OutPointVec, OutPoint> for T where
    T: IntoIterator<Item = OutPoint>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,