pub struct IsInEarlyData(/* private fields */);Expand description
The request was received during early data (0-RTT).
Methods from Deref<Target = bool>§
1.62.0 · Sourcepub fn then_some<T>(self, t: T) -> Option<T>
pub fn then_some<T>(self, t: T) -> Option<T>
Returns Some(t) if the bool is true,
or None otherwise.
Arguments passed to then_some are eagerly evaluated; if you are
passing the result of a function call, it is recommended to use
then, which is lazily evaluated.
§Examples
assert_eq!(false.then_some(0), None);
assert_eq!(true.then_some(0), Some(0));let mut a = 0;
let mut function_with_side_effects = || { a += 1; };
true.then_some(function_with_side_effects());
false.then_some(function_with_side_effects());
// `a` is incremented twice because the value passed to `then_some` is
// evaluated eagerly.
assert_eq!(a, 2);1.50.0 · Sourcepub fn then<T, F>(self, f: F) -> Option<T>where
F: FnOnce() -> T,
pub fn then<T, F>(self, f: F) -> Option<T>where
F: FnOnce() -> T,
Returns Some(f()) if the bool is true,
or None otherwise.
§Examples
assert_eq!(false.then(|| 0), None);
assert_eq!(true.then(|| 0), Some(0));let mut a = 0;
true.then(|| { a += 1; });
false.then(|| { a += 1; });
// `a` is incremented once because the closure is evaluated lazily by
// `then`.
assert_eq!(a, 1);1.98.0 · Sourcepub fn ok_or<E>(self, err: E) -> Result<(), E>
pub fn ok_or<E>(self, err: E) -> Result<(), E>
Returns Ok(()) if the bool is true,
or Err(err) otherwise.
Arguments passed to ok_or are eagerly evaluated; if you are
passing the result of a function call, it is recommended to use
ok_or_else, which is lazily evaluated.
§Examples
assert_eq!(false.ok_or(0), Err(0));
assert_eq!(true.ok_or(0), Ok(()));let mut a = 0;
let mut function_with_side_effects = || { a += 1; };
assert!(true.ok_or(function_with_side_effects()).is_ok());
assert!(false.ok_or(function_with_side_effects()).is_err());
// `a` is incremented twice because the value passed to `ok_or` is
// evaluated eagerly.
assert_eq!(a, 2);1.98.0 · Sourcepub fn ok_or_else<E, F>(self, f: F) -> Result<(), E>where
F: FnOnce() -> E,
pub fn ok_or_else<E, F>(self, f: F) -> Result<(), E>where
F: FnOnce() -> E,
Returns Ok(()) if the bool is true,
or Err(f()) otherwise.
§Examples
assert_eq!(false.ok_or_else(|| 0), Err(0));
assert_eq!(true.ok_or_else(|| 0), Ok(()));let mut a = 0;
assert!(true.ok_or_else(|| { a += 1; }).is_ok());
assert!(false.ok_or_else(|| { a += 1; }).is_err());
// `a` is incremented once because the closure is evaluated lazily by
// `ok_or_else`.
assert_eq!(a, 1);Trait Implementations§
Source§impl Clone for IsInEarlyData
impl Clone for IsInEarlyData
Source§impl Debug for IsInEarlyData
impl Debug for IsInEarlyData
Auto Trait Implementations§
impl Freeze for IsInEarlyData
impl RefUnwindSafe for IsInEarlyData
impl Send for IsInEarlyData
impl Sync for IsInEarlyData
impl Unpin for IsInEarlyData
impl UnsafeUnpin for IsInEarlyData
impl UnwindSafe for IsInEarlyData
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
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<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more