Struct jwt_compact::prelude::TimeOptions [−][src]
#[non_exhaustive]pub struct TimeOptions<F = fn() -> DateTime<Utc>> { pub leeway: Duration, pub clock_fn: F, }
Expand description
Time-related options for token creation and validation.
If the clock
crate feature is on (and it’s on by default), TimeOptions
can be created
using the Default
impl or Self::from_leeway()
. If the feature is off,
you can still create options using a generic constructor.
Examples
// Default options. let default_options = TimeOptions::default(); let options_with_custom_leeway = TimeOptions::from_leeway(Duration::seconds(5)); // Options that have a fixed time. Can be useful for testing. let clock_time = Utc::now(); let options_with_stopped_clock = TimeOptions::new(Duration::seconds(10), move || clock_time);
Fields (Non-exhaustive)
This struct is marked as non-exhaustive
Struct {{ .. }}
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.leeway: Duration
Leeway to use during validation.
clock_fn: F
Source of the current timestamps.
Implementations
impl<F: Fn() -> DateTime<Utc>> TimeOptions<F>
[src]
impl<F: Fn() -> DateTime<Utc>> TimeOptions<F>
[src]impl TimeOptions
[src]
impl TimeOptions
[src]pub fn from_leeway(leeway: Duration) -> Self
[src]
This is supported on crate feature clock
only.
pub fn from_leeway(leeway: Duration) -> Self
[src]clock
only.Creates options based on the specified time leeway. The clock source is Utc::now()
.
Trait Implementations
impl<F: Clone> Clone for TimeOptions<F>
[src]
impl<F: Clone> Clone for TimeOptions<F>
[src]fn clone(&self) -> TimeOptions<F>
[src]
fn clone(&self) -> TimeOptions<F>
[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]Performs copy-assignment from source
. Read more
impl<F: Debug> Debug for TimeOptions<F>
[src]
impl<F: Debug> Debug for TimeOptions<F>
[src]impl Default for TimeOptions
[src]
impl Default for TimeOptions
[src]Creates options with a default leeway (60 seconds) and the Utc::now()
clock.
This impl is supported on crate feature clock
only.
impl<F: Copy> Copy for TimeOptions<F>
[src]
Auto Trait Implementations
impl<F> RefUnwindSafe for TimeOptions<F> where
F: RefUnwindSafe,
F: RefUnwindSafe,
impl<F> Send for TimeOptions<F> where
F: Send,
F: Send,
impl<F> Sync for TimeOptions<F> where
F: Sync,
F: Sync,
impl<F> Unpin for TimeOptions<F> where
F: Unpin,
F: Unpin,
impl<F> UnwindSafe for TimeOptions<F> where
F: UnwindSafe,
F: UnwindSafe,
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,