Struct Header

Source
pub struct Header { /* private fields */ }
Expand description

SOME/IP header.

Implementations§

Source§

impl Header

Source

pub fn new( message_id: MessageId, length: Length, request_id: RequestId, protocol_version: ProtocolVersion, interface_version: InterfaceVersion, message_type: MessageType, return_code: ReturnCode, ) -> Header

Creates a new Header.

Source

pub fn message_id(&self) -> MessageId

Returns the MessageId.

Source

pub fn length(&self) -> Length

Returns the Length.

Source

pub fn request_id(&self) -> RequestId

Returns the RequestId.

Source

pub fn protocol_version(&self) -> ProtocolVersion

Returns the ProtocolVersion.

Source

pub fn interface_version(&self) -> InterfaceVersion

Returns the InterfaceVersion.

Source

pub fn message_type(&self) -> MessageType

Returns the MessageType.

Source

pub fn return_code(&self) -> ReturnCode

Returns the ReturnCode.

Source

pub fn set_message_id(&mut self, message_id: MessageId)

Returns the MessageId.

Source

pub fn set_length(&mut self, length: Length)

Sets the Length.

Source

pub fn set_request_id(&mut self, request_id: RequestId)

Sets the RequestId.

Source

pub fn set_protocol_version(&mut self, protocol_version: ProtocolVersion)

Sets the ProtocolVersion.

Source

pub fn set_interface_version(&mut self, interface_version: InterfaceVersion)

Sets the InterfaceVersion.

Source

pub fn set_message_type(&mut self, message_type: MessageType)

Sets the MessageType.

Source

pub fn set_return_code(&mut self, return_code: ReturnCode)

Sets the ReturnCode.

Source

pub fn parse_with_payload( bytes: &[u8], ) -> Result<(Header, Payload<'_>), ParseError>

Splits the bytes into header and payload and returns the header as a Header.

Source

pub fn serialize_with_payload<'a>( &mut self, payload: Payload<'_>, buffer: &'a mut [u8], ) -> Result<&'a [u8], SerializeError>

Serializes the header and the payload into one packet.

Trait Implementations§

Source§

impl Clone for Header

Source§

fn clone(&self) -> Header

Returns a duplicate 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 Header

Source§

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

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

impl<'a> Parse<'a> for Header

Source§

fn parse_partial(reader: &mut ByteReader<'a>) -> Result<Header, ParseError>

Parses a SOME/IP payload type from a given slice of bytes. Read more
Source§

impl PartialEq for Header

Source§

fn eq(&self, other: &Header) -> 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 Serialize for Header

Source§

fn required_length(&self) -> usize

Returns the number of bytes required to store the serialized version of self.
Source§

fn serialize_partial( &self, writer: &mut ByteWriter<'_>, ) -> Result<(), SerializeError>

Serializes to a byte writer.
Source§

impl Eq for Header

Source§

impl StructuralPartialEq for Header

Auto Trait Implementations§

§

impl Freeze for Header

§

impl RefUnwindSafe for Header

§

impl Send for Header

§

impl Sync for Header

§

impl Unpin for Header

§

impl UnwindSafe for Header

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<'a, T> ParseExt<'a> for T
where T: Parse<'a>,

Source§

fn parse(slice: &'a [u8]) -> Result<T, ParseError>

Parses a SOME/IP payload type from a given slice of bytes using Parse and validates all the bytes of the slice were used during parsing.
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> SerializeExt for T
where T: Serialize,

Source§

fn serialize<'a>( &self, buffer: &'a mut [u8], ) -> Result<&'a [u8], SerializeError>

Serializes a SOME/IP payload type to a given slice of bytes using Serialize and returns the number of bytes written to the buffer.
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.
Source§

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

Source§

fn vzip(self) -> V