Trait exonum::encoding::Field [] [src]

pub trait Field<'a> {
    unsafe fn read(buffer: &'a [u8], from: Offset, to: Offset) -> Self;
fn write(&self, buffer: &mut Vec<u8>, from: Offset, to: Offset);
fn field_size() -> Offset;
fn check(
        buffer: &'a [u8],
        from: CheckedOffset,
        to: CheckedOffset,
        latest_segment: CheckedOffset
    ) -> Result<CheckedOffset, Error>; }

Trait for all types that could be a field in encoding.

Required Methods

Read Field from buffer, with given position, beware of memory unsafety, you should check Field before read.

Write Field to buffer, in given position write doesn't lead to memory unsafety.

Field's header size

Checks if data in the buffer could be deserialized. Returns an index of latest data seen.

Implementations on Foreign Types

impl<'a> Field<'a> for bool
[src]

[src]

[src]

[src]

[src]

impl<'a> Field<'a> for u8
[src]

[src]

[src]

[src]

[src]

impl<'a> Field<'a> for i8
[src]

[src]

[src]

[src]

[src]

impl<'a> Field<'a> for u16
[src]

[src]

[src]

[src]

[src]

impl<'a> Field<'a> for i16
[src]

[src]

[src]

[src]

[src]

impl<'a> Field<'a> for u32
[src]

[src]

[src]

[src]

[src]

impl<'a> Field<'a> for i32
[src]

[src]

[src]

[src]

[src]

impl<'a> Field<'a> for u64
[src]

[src]

[src]

[src]

[src]

impl<'a> Field<'a> for i64
[src]

[src]

[src]

[src]

[src]

impl<'a> Field<'a> for SystemTime
[src]

[src]

[src]

[src]

[src]

impl<'a> Field<'a> for SocketAddr
[src]

[src]

[src]

[src]

[src]

Implementors