Struct bgpkit_parser::models::NetworkPrefix
source · pub struct NetworkPrefix {
pub prefix: IpNet,
pub path_id: u32,
}
Expand description
A representation of a network prefix with an optional path ID.
Fields§
§prefix: IpNet
§path_id: u32
Implementations§
source§impl NetworkPrefix
impl NetworkPrefix
pub fn new(prefix: IpNet, path_id: u32) -> NetworkPrefix
sourcepub fn encode(&self, add_path: bool) -> Bytes
pub fn encode(&self, add_path: bool) -> Bytes
Encodes the IPNet prefix into a byte slice.
§Arguments
add_path
- A bool indicating whether to include the path identifier in the encoded bytes.
§Returns
A Bytes
slice containing the encoded IPNet prefix.
§Example
use std::str::FromStr;
use bytes::Bytes;
use ipnet::{IpNet, Ipv4Net};
use bgpkit_parser::models::NetworkPrefix;
let prefix = NetworkPrefix::from_str("192.168.0.0/24").unwrap();
let encoded_bytes = prefix.encode(false);
assert_eq!(encoded_bytes.iter().as_slice(), &[24, 192, 168, 0]);
Trait Implementations§
source§impl Clone for NetworkPrefix
impl Clone for NetworkPrefix
source§fn clone(&self) -> NetworkPrefix
fn clone(&self) -> NetworkPrefix
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for NetworkPrefix
impl Debug for NetworkPrefix
source§impl Display for NetworkPrefix
impl Display for NetworkPrefix
source§impl FromStr for NetworkPrefix
impl FromStr for NetworkPrefix
source§impl Hash for NetworkPrefix
impl Hash for NetworkPrefix
source§impl PartialEq for NetworkPrefix
impl PartialEq for NetworkPrefix
source§fn eq(&self, other: &NetworkPrefix) -> bool
fn eq(&self, other: &NetworkPrefix) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Copy for NetworkPrefix
impl Eq for NetworkPrefix
impl StructuralPartialEq for NetworkPrefix
Auto Trait Implementations§
impl Freeze for NetworkPrefix
impl RefUnwindSafe for NetworkPrefix
impl Send for NetworkPrefix
impl Sync for NetworkPrefix
impl Unpin for NetworkPrefix
impl UnwindSafe for NetworkPrefix
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.