pub enum DhcpSession {}Expand description
With dhcp off there is no such thing as a lease, and this type
says so in the type system rather than in a comment: it is UNINHABITED.
It exists so bring_up_network keeps ONE signature across both builds
(one implementation — the alternative is two copies of a forty-line function that differ
by one arm). Its Option<DhcpSession> is then provably None, and every
downstream Some(session) branch is a match session {} the compiler
proves unreachable — a by-construction guarantee, not a runtime check.
Trait Implementations§
Source§impl Clone for DhcpSession
impl Clone for DhcpSession
Source§fn clone(&self) -> DhcpSession
fn clone(&self) -> DhcpSession
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 DhcpSession
impl Debug for DhcpSession
impl Eq for DhcpSession
Source§impl PartialEq for DhcpSession
impl PartialEq for DhcpSession
impl StructuralPartialEq for DhcpSession
Auto Trait Implementations§
impl Freeze for DhcpSession
impl RefUnwindSafe for DhcpSession
impl Send for DhcpSession
impl Sync for DhcpSession
impl Unpin for DhcpSession
impl UnsafeUnpin for DhcpSession
impl UnwindSafe for DhcpSession
Blanket Implementations§
impl<T> Allocation for T
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request