RawEncodeWithContext

Trait RawEncodeWithContext 

Source
pub trait RawEncodeWithContext<Context> {
    // Required methods
    fn raw_measure_with_context(
        &self,
        _: &mut Context,
        purpose: &Option<RawEncodePurpose>,
    ) -> BuckyResult<usize>;
    fn raw_encode_with_context<'a>(
        &self,
        buf: &'a mut [u8],
        _: &mut Context,
        purpose: &Option<RawEncodePurpose>,
    ) -> BuckyResult<&'a mut [u8]>;

    // Provided method
    fn raw_tail_encode_with_context<'a>(
        &self,
        buf: &'a mut [u8],
        context: &mut Context,
        purpose: &Option<RawEncodePurpose>,
    ) -> BuckyResult<&'a [u8]> { ... }
}

Required Methods§

Source

fn raw_measure_with_context( &self, _: &mut Context, purpose: &Option<RawEncodePurpose>, ) -> BuckyResult<usize>

Source

fn raw_encode_with_context<'a>( &self, buf: &'a mut [u8], _: &mut Context, purpose: &Option<RawEncodePurpose>, ) -> BuckyResult<&'a mut [u8]>

Provided Methods§

Source

fn raw_tail_encode_with_context<'a>( &self, buf: &'a mut [u8], context: &mut Context, purpose: &Option<RawEncodePurpose>, ) -> BuckyResult<&'a [u8]>

Implementors§

Source§

impl RawEncodeWithContext<NamedObjectContext> for ObjectSigns

Source§

impl RawEncodeWithContext<NamedObjectContext> for TypelessObjectDesc

§TypelessObjectDesc 编码

  • [1] ctx 部分来自NamedObject里的ctx
  • [2] 其余部分为desc本身的编码
Source§

impl<'de, B, O> RawEncodeWithContext<NamedObjectBodyContext> for ObjectMutBody<B, O>

Source§

impl<O> RawEncodeWithContext<NamedObjectContext> for NamedObjectBase<O>

Source§

impl<T> RawEncodeWithContext<NamedObjectContext> for NamedObjectDesc<T>

§NamedObjectDesc 的 编码

  • ctx: NamedObjectContext 从上层 NamedObjectBase 里传入编码的上下文
  • 通过 ctx 压缩Option字段的编码