Struct BoxHeader

Source
pub struct BoxHeader {
    pub box_type: BoxType,
    pub box_size: BoxSize,
}
Expand description

BaseBox に共通のヘッダー

Fields§

§box_type: BoxType

ボックスの種別

§box_size: BoxSize

ボックスのサイズ

Implementations§

Source§

impl BoxHeader

Source

pub fn from_box<B: BaseBox>(b: &B) -> Self

ボックスへの参照を受け取って、対応するヘッダーを作成する

Source

pub fn external_size(self) -> usize

ヘッダーをエンコードした際のバイト数を返す

Source

pub fn with_box_payload_reader<T, R: Read, F>( self, reader: R, f: F, ) -> Result<T>
where F: FnOnce(&mut Take<R>) -> Result<T>,

このヘッダーに対応するボックスのペイロード部分をデコードするためのリーダーを引数にして、指定された関数を呼び出す

Source

pub fn peek<R: Read>(reader: R) -> Result<(Self, impl Read)>

ボックスのヘッダー部分を先読みする

返り値に含まれるリーダーには、ボックスのヘッダー部分のバイト列も含まれる

Trait Implementations§

Source§

impl Clone for BoxHeader

Source§

fn clone(&self) -> BoxHeader

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for BoxHeader

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Decode for BoxHeader

Source§

fn decode<R: Read>(reader: R) -> Result<Self>

reader から読み込んだバイト列から Self を構築する
Source§

impl Encode for BoxHeader

Source§

fn encode<W: Write>(&self, writer: W) -> Result<()>

self をバイト列に変換して writer に書き込む
Source§

impl Hash for BoxHeader

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for BoxHeader

Source§

fn eq(&self, other: &BoxHeader) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for BoxHeader

Source§

impl Eq for BoxHeader

Source§

impl StructuralPartialEq for BoxHeader

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.