pub trait DecodeMessage {
Show 34 associated items
type Op;
type Htype;
type Hlen;
type Hops;
type Xid;
type Secs;
type Flags;
type Ciaddr;
type Yiaddr;
type Siaddr;
type Giaddr;
type Chaddr;
type Sname;
type File;
type Magic;
type Options;
type Output;
// Required methods
fn decode_op(op: &UndecodedMessage) -> Self::Op;
fn decode_htype(htype: &UndecodedMessage) -> Self::Htype;
fn decode_hlen(hlen: &UndecodedMessage) -> Self::Hlen;
fn decode_hops(hops: &UndecodedMessage) -> Self::Hops;
fn decode_xid(xid: &UndecodedMessage) -> Self::Xid;
fn decode_secs(secs: &UndecodedMessage) -> Self::Secs;
fn decode_flags(flags: &UndecodedMessage) -> Self::Flags;
fn decode_ciaddr(ciaddr: &UndecodedMessage) -> Self::Ciaddr;
fn decode_yiaddr(yiaddr: &UndecodedMessage) -> Self::Yiaddr;
fn decode_siaddr(siaddr: &UndecodedMessage) -> Self::Siaddr;
fn decode_giaddr(giaddr: &UndecodedMessage) -> Self::Giaddr;
fn decode_chaddr(chaddr: &UndecodedMessage) -> Self::Chaddr;
fn decode_sname(sname: &UndecodedMessage) -> Self::Sname;
fn decode_file(file: &UndecodedMessage) -> Self::File;
fn decode_magic(magic: &UndecodedMessage) -> Self::Magic;
fn decode_options(options: &UndecodedMessage) -> Self::Options;
fn from_bytes(undecoded: &UndecodedMessage) -> Self::Output;
}Expand description
Define how the bytes of a DHCP message’s fields decode into your custom Message’s types.
…or don’t and use our homemade Message with this already implemented.
Required Associated Types§
Required Methods§
Sourcefn decode_op(op: &UndecodedMessage) -> Self::Op
fn decode_op(op: &UndecodedMessage) -> Self::Op
Convert an op field’s byte into your custom Message’s type.
Sourcefn decode_htype(htype: &UndecodedMessage) -> Self::Htype
fn decode_htype(htype: &UndecodedMessage) -> Self::Htype
Convert an htype field’s byte into your custom Message’s type.
Sourcefn decode_hlen(hlen: &UndecodedMessage) -> Self::Hlen
fn decode_hlen(hlen: &UndecodedMessage) -> Self::Hlen
Convert an hlen field’s byte into your custom Message’s type.
Sourcefn decode_hops(hops: &UndecodedMessage) -> Self::Hops
fn decode_hops(hops: &UndecodedMessage) -> Self::Hops
Convert an hops field’s byte into your custom Message’s type.
Sourcefn decode_xid(xid: &UndecodedMessage) -> Self::Xid
fn decode_xid(xid: &UndecodedMessage) -> Self::Xid
Convert an xid field’s bytes into your custom Message’s type.
Sourcefn decode_secs(secs: &UndecodedMessage) -> Self::Secs
fn decode_secs(secs: &UndecodedMessage) -> Self::Secs
Convert an secs field’s bytes into your custom Message’s type.
Sourcefn decode_flags(flags: &UndecodedMessage) -> Self::Flags
fn decode_flags(flags: &UndecodedMessage) -> Self::Flags
Convert an flags field’s bytes into your custom Message’s type.
Sourcefn decode_ciaddr(ciaddr: &UndecodedMessage) -> Self::Ciaddr
fn decode_ciaddr(ciaddr: &UndecodedMessage) -> Self::Ciaddr
Convert an ciaddr field’s bytes into your custom Message’s type.
Sourcefn decode_yiaddr(yiaddr: &UndecodedMessage) -> Self::Yiaddr
fn decode_yiaddr(yiaddr: &UndecodedMessage) -> Self::Yiaddr
Convert an yiaddr field’s bytes into your custom Message’s type.
Sourcefn decode_siaddr(siaddr: &UndecodedMessage) -> Self::Siaddr
fn decode_siaddr(siaddr: &UndecodedMessage) -> Self::Siaddr
Convert an siaddr field’s bytes into your custom Message’s type.
Sourcefn decode_giaddr(giaddr: &UndecodedMessage) -> Self::Giaddr
fn decode_giaddr(giaddr: &UndecodedMessage) -> Self::Giaddr
Convert an giaddr field’s bytes into your custom Message’s type.
Sourcefn decode_chaddr(chaddr: &UndecodedMessage) -> Self::Chaddr
fn decode_chaddr(chaddr: &UndecodedMessage) -> Self::Chaddr
Convert an chaddr field’s bytes into your custom Message’s type.
Sourcefn decode_sname(sname: &UndecodedMessage) -> Self::Sname
fn decode_sname(sname: &UndecodedMessage) -> Self::Sname
Convert an sname field’s bytes into your custom Message’s type.
Sourcefn decode_file(file: &UndecodedMessage) -> Self::File
fn decode_file(file: &UndecodedMessage) -> Self::File
Convert an file field’s bytes into your custom Message’s type.
Sourcefn decode_magic(magic: &UndecodedMessage) -> Self::Magic
fn decode_magic(magic: &UndecodedMessage) -> Self::Magic
Convert an magic field’s bytes into your custom Message’s type.
Sourcefn decode_options(options: &UndecodedMessage) -> Self::Options
fn decode_options(options: &UndecodedMessage) -> Self::Options
Convert an options field’s bytes into your custom Message’s type.
Sourcefn from_bytes(undecoded: &UndecodedMessage) -> Self::Output
fn from_bytes(undecoded: &UndecodedMessage) -> Self::Output
decodes a byte array into a Message or other type that implements decodeMessage.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".