diff --git a/actix_cors/all.html b/actix_cors/all.html index 469c978a0..fdff0236d 100644 --- a/actix_cors/all.html +++ b/actix_cors/all.html @@ -1 +1 @@ -List of all items in this crate

List of all items

Structs

Enums

\ No newline at end of file +List of all items in this crate

List of all items

Structs

Enums

\ No newline at end of file diff --git a/actix_cors/enum.CorsError.html b/actix_cors/enum.CorsError.html index b3d4edfba..605f1aa55 100644 --- a/actix_cors/enum.CorsError.html +++ b/actix_cors/enum.CorsError.html @@ -1,4 +1,4 @@ -CorsError in actix_cors - Rust

Enum actix_cors::CorsError

source ·
#[non_exhaustive]
pub enum CorsError { +CorsError in actix_cors - Rust

Enum actix_cors::CorsError

source ·
#[non_exhaustive]
pub enum CorsError { WildcardOrigin, MissingOrigin, MissingRequestMethod, @@ -34,4 +34,5 @@ V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_cors/index.html b/actix_cors/index.html index 67b5c5f84..394af55c9 100644 --- a/actix_cors/index.html +++ b/actix_cors/index.html @@ -1,4 +1,4 @@ -actix_cors - Rust

Crate actix_cors

source ·
Expand description

Cross-Origin Resource Sharing (CORS) controls for Actix Web.

+actix_cors - Rust

Crate actix_cors

source ·
Expand description

Cross-Origin Resource Sharing (CORS) controls for Actix Web.

This middleware can be applied to both applications and resources. Once built, a Cors builder can be used as an argument for Actix Web’s App::wrap(), Scope::wrap(), or Resource::wrap() methods.

diff --git a/actix_cors/struct.Cors.html b/actix_cors/struct.Cors.html index 46e818a36..2f529c012 100644 --- a/actix_cors/struct.Cors.html +++ b/actix_cors/struct.Cors.html @@ -1,4 +1,4 @@ -Cors in actix_cors - Rust

Struct actix_cors::Cors

source ·
pub struct Cors { /* private fields */ }
Expand description

Builder for CORS middleware.

+Cors in actix_cors - Rust

Struct actix_cors::Cors

source ·
pub struct Cors { /* private fields */ }
Expand description

Builder for CORS middleware.

To construct a CORS middleware, call Cors::default() to create a blank, restrictive builder. Then use any of the builder methods to customize CORS behavior.

The alternative Cors::permissive() constructor is available for local development, allowing @@ -147,4 +147,5 @@ not supported. No max age (will use browser’s default).

V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_identity/all.html b/actix_identity/all.html index b12d9126e..6beed338f 100644 --- a/actix_identity/all.html +++ b/actix_identity/all.html @@ -1 +1 @@ -List of all items in this crate
\ No newline at end of file +List of all items in this crate
\ No newline at end of file diff --git a/actix_identity/config/enum.LogoutBehaviour.html b/actix_identity/config/enum.LogoutBehaviour.html index 3c83e6d13..955654ac2 100644 --- a/actix_identity/config/enum.LogoutBehaviour.html +++ b/actix_identity/config/enum.LogoutBehaviour.html @@ -1,4 +1,4 @@ -LogoutBehaviour in actix_identity::config - Rust

Enum actix_identity::config::LogoutBehaviour

source ·
#[non_exhaustive]
pub enum LogoutBehaviour { +LogoutBehaviour in actix_identity::config - Rust

Enum actix_identity::config::LogoutBehaviour

source ·
#[non_exhaustive]
pub enum LogoutBehaviour { PurgeSession, DeleteIdentityKeys, }
Expand description

LogoutBehaviour controls what actions are going to be performed when Identity::logout is @@ -27,4 +27,5 @@ is not tied to the user’s identity and should be retained after logout.

V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_identity/config/index.html b/actix_identity/config/index.html index 1cf910885..a02be313f 100644 --- a/actix_identity/config/index.html +++ b/actix_identity/config/index.html @@ -1,4 +1,4 @@ -actix_identity::config - Rust

Module actix_identity::config

source ·
Expand description

Configuration options to tune the behaviour of IdentityMiddleware.

+actix_identity::config - Rust

Module actix_identity::config

source ·
Expand description

Configuration options to tune the behaviour of IdentityMiddleware.

Structs§

Enums§

\ No newline at end of file diff --git a/actix_identity/config/struct.IdentityMiddlewareBuilder.html b/actix_identity/config/struct.IdentityMiddlewareBuilder.html index f69ab692a..9c20cbb37 100644 --- a/actix_identity/config/struct.IdentityMiddlewareBuilder.html +++ b/actix_identity/config/struct.IdentityMiddlewareBuilder.html @@ -1,4 +1,4 @@ -IdentityMiddlewareBuilder in actix_identity::config - Rust

Struct actix_identity::config::IdentityMiddlewareBuilder

source ·
pub struct IdentityMiddlewareBuilder { /* private fields */ }
Expand description

A fluent builder to construct an IdentityMiddleware instance with custom configuration +IdentityMiddlewareBuilder in actix_identity::config - Rust

Struct actix_identity::config::IdentityMiddlewareBuilder

source ·
pub struct IdentityMiddlewareBuilder { /* private fields */ }
Expand description

A fluent builder to construct an IdentityMiddleware instance with custom configuration parameters.

Use IdentityMiddleware::builder to get started!

Implementations§

source§

impl IdentityMiddlewareBuilder

source

pub fn id_key(self, key: &'static str) -> Self

Set a custom key to identify the user in the session.

@@ -42,4 +42,5 @@ has passed since their last visit. V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_identity/error/enum.GetIdentityError.html b/actix_identity/error/enum.GetIdentityError.html index 54ba204cd..87c8f308f 100644 --- a/actix_identity/error/enum.GetIdentityError.html +++ b/actix_identity/error/enum.GetIdentityError.html @@ -1,15 +1,15 @@ -GetIdentityError in actix_identity::error - Rust

Enum actix_identity::error::GetIdentityError

source ·
#[non_exhaustive]
pub enum GetIdentityError { +GetIdentityError in actix_identity::error - Rust

Enum actix_identity::error::GetIdentityError

source ·
#[non_exhaustive]
pub enum GetIdentityError { SessionExpiryError(SessionExpiryError), MissingIdentityError(MissingIdentityError), - SessionGetError(SessionGetError), + SessionGetError(SessionGetError), LostIdentityError(LostIdentityError), }
Expand description

Errors that can occur while retrieving an identity.

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

SessionExpiryError(SessionExpiryError)

The session has expired.

§

MissingIdentityError(MissingIdentityError)

No identity is found in a session.

-
§

SessionGetError(SessionGetError)

Failed to accessing the session store.

+
§

SessionGetError(SessionGetError)

Failed to accessing the session store.

§

LostIdentityError(LostIdentityError)

Identity info was lost after being validated.

Seeing this error indicates a bug in actix-identity.

-

Trait Implementations§

source§

impl Debug for GetIdentityError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for GetIdentityError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for GetIdentityError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<LostIdentityError> for GetIdentityError

source§

fn from(original: LostIdentityError) -> GetIdentityError

Converts to this type from the input type.
source§

impl From<MissingIdentityError> for GetIdentityError

source§

fn from(original: MissingIdentityError) -> GetIdentityError

Converts to this type from the input type.
source§

impl From<SessionExpiryError> for GetIdentityError

source§

fn from(original: SessionExpiryError) -> GetIdentityError

Converts to this type from the input type.
source§

impl From<SessionGetError> for GetIdentityError

source§

fn from(original: SessionGetError) -> GetIdentityError

Converts to this type from the input type.
source§

impl ResponseError for GetIdentityError

source§

fn status_code(&self) -> StatusCode

Returns appropriate status code for error. Read more
§

fn error_response(&self) -> HttpResponse

Creates full response for error. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Debug for GetIdentityError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for GetIdentityError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for GetIdentityError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<LostIdentityError> for GetIdentityError

source§

fn from(original: LostIdentityError) -> GetIdentityError

Converts to this type from the input type.
source§

impl From<MissingIdentityError> for GetIdentityError

source§

fn from(original: MissingIdentityError) -> GetIdentityError

Converts to this type from the input type.
source§

impl From<SessionExpiryError> for GetIdentityError

source§

fn from(original: SessionExpiryError) -> GetIdentityError

Converts to this type from the input type.
source§

impl From<SessionGetError> for GetIdentityError

source§

fn from(original: SessionGetError) -> GetIdentityError

Converts to this type from the input type.
source§

impl ResponseError for GetIdentityError

source§

fn status_code(&self) -> StatusCode

Returns appropriate status code for error. Read more
§

fn error_response(&self) -> HttpResponse

Creates full response for error. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

@@ -26,4 +26,5 @@ V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_identity/error/index.html b/actix_identity/error/index.html index 843e81c53..46cbdf6bb 100644 --- a/actix_identity/error/index.html +++ b/actix_identity/error/index.html @@ -1,2 +1,2 @@ -actix_identity::error - Rust

Module actix_identity::error

source ·
Expand description

Failure modes of identity operations.

+actix_identity::error - Rust

Module actix_identity::error

source ·
Expand description

Failure modes of identity operations.

Structs§

Enums§

\ No newline at end of file diff --git a/actix_identity/error/struct.LoginError.html b/actix_identity/error/struct.LoginError.html index 6fc7c0db0..122981616 100644 --- a/actix_identity/error/struct.LoginError.html +++ b/actix_identity/error/struct.LoginError.html @@ -1,5 +1,5 @@ -LoginError in actix_identity::error - Rust

Struct actix_identity::error::LoginError

source ·
pub struct LoginError(/* private fields */);
Expand description

Error that can occur during login attempts.

-

Trait Implementations§

source§

impl Debug for LoginError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for LoginError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for LoginError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<SessionInsertError> for LoginError

source§

fn from(original: SessionInsertError) -> LoginError

Converts to this type from the input type.
source§

impl ResponseError for LoginError

source§

fn status_code(&self) -> StatusCode

Returns appropriate status code for error. Read more
§

fn error_response(&self) -> HttpResponse

Creates full response for error. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +LoginError in actix_identity::error - Rust

Struct actix_identity::error::LoginError

source ·
pub struct LoginError(/* private fields */);
Expand description

Error that can occur during login attempts.

+

Trait Implementations§

source§

impl Debug for LoginError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for LoginError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for LoginError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<SessionInsertError> for LoginError

source§

fn from(original: SessionInsertError) -> LoginError

Converts to this type from the input type.
source§

impl ResponseError for LoginError

source§

fn status_code(&self) -> StatusCode

Returns appropriate status code for error. Read more
§

fn error_response(&self) -> HttpResponse

Creates full response for error. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

@@ -16,4 +16,5 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_identity/error/struct.LostIdentityError.html b/actix_identity/error/struct.LostIdentityError.html index b24c645fe..7a3230da3 100644 --- a/actix_identity/error/struct.LostIdentityError.html +++ b/actix_identity/error/struct.LostIdentityError.html @@ -1,6 +1,6 @@ -LostIdentityError in actix_identity::error - Rust

Struct actix_identity::error::LostIdentityError

source ·
#[non_exhaustive]
pub struct LostIdentityError;
Expand description

The identity information has been lost.

+LostIdentityError in actix_identity::error - Rust

Struct actix_identity::error::LostIdentityError

source ·
#[non_exhaustive]
pub struct LostIdentityError;
Expand description

The identity information has been lost.

Seeing this error in user code indicates a bug in actix-identity.

-

Trait Implementations§

source§

impl Debug for LostIdentityError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for LostIdentityError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for LostIdentityError

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<LostIdentityError> for GetIdentityError

source§

fn from(original: LostIdentityError) -> GetIdentityError

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Debug for LostIdentityError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for LostIdentityError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for LostIdentityError

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<LostIdentityError> for GetIdentityError

source§

fn from(original: LostIdentityError) -> GetIdentityError

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

@@ -17,4 +17,5 @@ V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_identity/error/struct.MissingIdentityError.html b/actix_identity/error/struct.MissingIdentityError.html index 38679664d..2ad7cbdf5 100644 --- a/actix_identity/error/struct.MissingIdentityError.html +++ b/actix_identity/error/struct.MissingIdentityError.html @@ -1,5 +1,5 @@ -MissingIdentityError in actix_identity::error - Rust

Struct actix_identity::error::MissingIdentityError

source ·
#[non_exhaustive]
pub struct MissingIdentityError;
Expand description

There is no identity information attached to the current session.

-

Trait Implementations§

source§

impl Debug for MissingIdentityError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for MissingIdentityError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for MissingIdentityError

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<MissingIdentityError> for GetIdentityError

source§

fn from(original: MissingIdentityError) -> GetIdentityError

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +MissingIdentityError in actix_identity::error - Rust

Struct actix_identity::error::MissingIdentityError

source ·
#[non_exhaustive]
pub struct MissingIdentityError;
Expand description

There is no identity information attached to the current session.

+

Trait Implementations§

source§

impl Debug for MissingIdentityError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for MissingIdentityError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for MissingIdentityError

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<MissingIdentityError> for GetIdentityError

source§

fn from(original: MissingIdentityError) -> GetIdentityError

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

@@ -16,4 +16,5 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_identity/error/struct.SessionExpiryError.html b/actix_identity/error/struct.SessionExpiryError.html index 3615fd7ad..cfdf5ba79 100644 --- a/actix_identity/error/struct.SessionExpiryError.html +++ b/actix_identity/error/struct.SessionExpiryError.html @@ -1,5 +1,5 @@ -SessionExpiryError in actix_identity::error - Rust

Struct actix_identity::error::SessionExpiryError

source ·
pub struct SessionExpiryError(/* private fields */);
Expand description

Error encountered when working with a session that has expired.

-

Trait Implementations§

source§

impl Debug for SessionExpiryError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for SessionExpiryError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for SessionExpiryError

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<SessionExpiryError> for GetIdentityError

source§

fn from(original: SessionExpiryError) -> GetIdentityError

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +SessionExpiryError in actix_identity::error - Rust

Struct actix_identity::error::SessionExpiryError

source ·
pub struct SessionExpiryError(/* private fields */);
Expand description

Error encountered when working with a session that has expired.

+

Trait Implementations§

source§

impl Debug for SessionExpiryError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for SessionExpiryError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for SessionExpiryError

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<SessionExpiryError> for GetIdentityError

source§

fn from(original: SessionExpiryError) -> GetIdentityError

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

@@ -16,4 +16,5 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_identity/index.html b/actix_identity/index.html index fdcc1b34d..e7c7da09e 100644 --- a/actix_identity/index.html +++ b/actix_identity/index.html @@ -1,4 +1,4 @@ -actix_identity - Rust

Crate actix_identity

source ·
Expand description

Identity management for Actix Web.

+actix_identity - Rust

Crate actix_identity

source ·
Expand description

Identity management for Actix Web.

actix-identity can be used to track identity of a user across multiple requests. It is built on top of HTTP sessions, via actix-session.

§Getting started

diff --git a/actix_identity/struct.Identity.html b/actix_identity/struct.Identity.html index 9bf4bfcb3..695da0fd0 100644 --- a/actix_identity/struct.Identity.html +++ b/actix_identity/struct.Identity.html @@ -1,4 +1,4 @@ -Identity in actix_identity - Rust

Struct actix_identity::Identity

source ·
pub struct Identity(/* private fields */);
Expand description

A verified user identity. It can be used as a request extractor.

+Identity in actix_identity - Rust

Struct actix_identity::Identity

source ·
pub struct Identity(/* private fields */);
Expand description

A verified user identity. It can be used as a request extractor.

The lifecycle of a user identity is tied to the lifecycle of the underlying session. If the session is destroyed (e.g. the session expired), the user identity will be forgotten, de-facto forcing a user log out.

@@ -117,4 +117,5 @@ require a valid
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_identity/struct.IdentityMiddleware.html b/actix_identity/struct.IdentityMiddleware.html index a3f12db27..5d841e175 100644 --- a/actix_identity/struct.IdentityMiddleware.html +++ b/actix_identity/struct.IdentityMiddleware.html @@ -1,4 +1,4 @@ -IdentityMiddleware in actix_identity - Rust

Struct actix_identity::IdentityMiddleware

source ·
pub struct IdentityMiddleware { /* private fields */ }
Expand description

Identity management middleware.

+IdentityMiddleware in actix_identity - Rust

Struct actix_identity::IdentityMiddleware

source ·
pub struct IdentityMiddleware { /* private fields */ }
Expand description

Identity management middleware.

use actix_web::{cookie::Key, App, HttpServer};
 use actix_session::storage::RedisSessionStore;
@@ -40,4 +40,5 @@
     V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_identity/trait.IdentityExt.html b/actix_identity/trait.IdentityExt.html index 1f6cd88f0..19eeacd3e 100644 --- a/actix_identity/trait.IdentityExt.html +++ b/actix_identity/trait.IdentityExt.html @@ -1,4 +1,4 @@ -IdentityExt in actix_identity - Rust

Trait actix_identity::IdentityExt

source ·
pub trait IdentityExt {
+IdentityExt in actix_identity - Rust

Trait actix_identity::IdentityExt

source ·
pub trait IdentityExt {
     // Required method
     fn get_identity(&self) -> Result<Identity, GetIdentityError>;
 }
Expand description

Helper trait to retrieve an Identity instance from various actix-web’s types.

diff --git a/actix_limitation/all.html b/actix_limitation/all.html index 3c88e52dc..5c23e2a07 100644 --- a/actix_limitation/all.html +++ b/actix_limitation/all.html @@ -1 +1 @@ -List of all items in this crate
\ No newline at end of file +List of all items in this crate
\ No newline at end of file diff --git a/actix_limitation/constant.DEFAULT_COOKIE_NAME.html b/actix_limitation/constant.DEFAULT_COOKIE_NAME.html index 1e35a70e0..2dd14b5b1 100644 --- a/actix_limitation/constant.DEFAULT_COOKIE_NAME.html +++ b/actix_limitation/constant.DEFAULT_COOKIE_NAME.html @@ -1,2 +1,2 @@ -DEFAULT_COOKIE_NAME in actix_limitation - Rust

Constant actix_limitation::DEFAULT_COOKIE_NAME

source ·
pub const DEFAULT_COOKIE_NAME: &str = "sid";
Expand description

Default cookie name.

+DEFAULT_COOKIE_NAME in actix_limitation - Rust

Constant actix_limitation::DEFAULT_COOKIE_NAME

source ·
pub const DEFAULT_COOKIE_NAME: &str = "sid";
Expand description

Default cookie name.

\ No newline at end of file diff --git a/actix_limitation/constant.DEFAULT_PERIOD_SECS.html b/actix_limitation/constant.DEFAULT_PERIOD_SECS.html index 8a1e694ae..eafe52c49 100644 --- a/actix_limitation/constant.DEFAULT_PERIOD_SECS.html +++ b/actix_limitation/constant.DEFAULT_PERIOD_SECS.html @@ -1,2 +1,2 @@ -DEFAULT_PERIOD_SECS in actix_limitation - Rust

Constant actix_limitation::DEFAULT_PERIOD_SECS

source ·
pub const DEFAULT_PERIOD_SECS: u64 = 3600;
Expand description

Default period (in seconds).

+DEFAULT_PERIOD_SECS in actix_limitation - Rust

Constant actix_limitation::DEFAULT_PERIOD_SECS

source ·
pub const DEFAULT_PERIOD_SECS: u64 = 3600;
Expand description

Default period (in seconds).

\ No newline at end of file diff --git a/actix_limitation/constant.DEFAULT_REQUEST_LIMIT.html b/actix_limitation/constant.DEFAULT_REQUEST_LIMIT.html index e932f7d34..bc93d0151 100644 --- a/actix_limitation/constant.DEFAULT_REQUEST_LIMIT.html +++ b/actix_limitation/constant.DEFAULT_REQUEST_LIMIT.html @@ -1,2 +1,2 @@ -DEFAULT_REQUEST_LIMIT in actix_limitation - Rust

Constant actix_limitation::DEFAULT_REQUEST_LIMIT

source ·
pub const DEFAULT_REQUEST_LIMIT: usize = 5000;
Expand description

Default request limit.

+DEFAULT_REQUEST_LIMIT in actix_limitation - Rust

Constant actix_limitation::DEFAULT_REQUEST_LIMIT

source ·
pub const DEFAULT_REQUEST_LIMIT: usize = 5000;
Expand description

Default request limit.

\ No newline at end of file diff --git a/actix_limitation/constant.DEFAULT_SESSION_KEY.html b/actix_limitation/constant.DEFAULT_SESSION_KEY.html index 579fe81bb..062c1c93b 100644 --- a/actix_limitation/constant.DEFAULT_SESSION_KEY.html +++ b/actix_limitation/constant.DEFAULT_SESSION_KEY.html @@ -1,2 +1,2 @@ -DEFAULT_SESSION_KEY in actix_limitation - Rust

Constant actix_limitation::DEFAULT_SESSION_KEY

source ·
pub const DEFAULT_SESSION_KEY: &str = "rate-api-id";
Expand description

Default session key.

+DEFAULT_SESSION_KEY in actix_limitation - Rust

Constant actix_limitation::DEFAULT_SESSION_KEY

source ·
pub const DEFAULT_SESSION_KEY: &str = "rate-api-id";
Expand description

Default session key.

\ No newline at end of file diff --git a/actix_limitation/enum.Error.html b/actix_limitation/enum.Error.html index 3f815c246..98bbbb62f 100644 --- a/actix_limitation/enum.Error.html +++ b/actix_limitation/enum.Error.html @@ -1,4 +1,4 @@ -Error in actix_limitation - Rust

Enum actix_limitation::Error

source ·
pub enum Error {
+Error in actix_limitation - Rust

Enum actix_limitation::Error

source ·
pub enum Error {
     Client(RedisError),
     LimitExceeded(Status),
     Time(ComponentRange),
@@ -25,4 +25,5 @@
     V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_limitation/index.html b/actix_limitation/index.html index 0ad0b9ce2..12f9ed566 100644 --- a/actix_limitation/index.html +++ b/actix_limitation/index.html @@ -1,4 +1,4 @@ -actix_limitation - Rust

Crate actix_limitation

source ·
Expand description

Rate limiter using a fixed window counter for arbitrary keys, backed by Redis for Actix Web.

+actix_limitation - Rust

Crate actix_limitation

source ·
Expand description

Rate limiter using a fixed window counter for arbitrary keys, backed by Redis for Actix Web.

[dependencies]
 actix-web = "4"
 actix-limitation = "0.5"
diff --git a/actix_limitation/struct.Builder.html b/actix_limitation/struct.Builder.html
index 279a91be4..4e684ccaa 100644
--- a/actix_limitation/struct.Builder.html
+++ b/actix_limitation/struct.Builder.html
@@ -1,4 +1,4 @@
-Builder in actix_limitation - Rust

Struct actix_limitation::Builder

source ·
pub struct Builder { /* private fields */ }
Expand description

Rate limiter builder.

+Builder in actix_limitation - Rust

Struct actix_limitation::Builder

source ·
pub struct Builder { /* private fields */ }
Expand description

Rate limiter builder.

Implementations§

source§

impl Builder

source

pub fn limit(&mut self, limit: usize) -> &mut Self

Set upper limit.

source

pub fn period(&mut self, period: Duration) -> &mut Self

Set limit window/period.

source

pub fn key_by<F>(&mut self, resolver: F) -> &mut Self
where @@ -33,4 +33,5 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_limitation/struct.Limiter.html b/actix_limitation/struct.Limiter.html index 36fbdfb97..560a65f61 100644 --- a/actix_limitation/struct.Limiter.html +++ b/actix_limitation/struct.Limiter.html @@ -1,4 +1,4 @@ -Limiter in actix_limitation - Rust

Struct actix_limitation::Limiter

source ·
pub struct Limiter { /* private fields */ }
Expand description

Rate limiter.

+Limiter in actix_limitation - Rust

Struct actix_limitation::Limiter

source ·
pub struct Limiter { /* private fields */ }
Expand description

Rate limiter.

Implementations§

source§

impl Limiter

source

pub fn builder(redis_url: impl Into<String>) -> Builder

Construct rate limiter builder with defaults.

See redis-rs docs on connection parameters for how to set the Redis URL.

@@ -20,4 +20,5 @@ parameters for how to set the Redis URL.

V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_limitation/struct.RateLimiter.html b/actix_limitation/struct.RateLimiter.html index d197fb2ca..2cf849a40 100644 --- a/actix_limitation/struct.RateLimiter.html +++ b/actix_limitation/struct.RateLimiter.html @@ -1,4 +1,4 @@ -RateLimiter in actix_limitation - Rust

Struct actix_limitation::RateLimiter

source ·
#[non_exhaustive]
pub struct RateLimiter;
Expand description

Rate limit middleware.

+RateLimiter in actix_limitation - Rust

Struct actix_limitation::RateLimiter

source ·
#[non_exhaustive]
pub struct RateLimiter;
Expand description

Rate limit middleware.

Trait Implementations§

source§

impl Debug for RateLimiter

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for RateLimiter

source§

fn default() -> RateLimiter

Returns the “default value” for a type. Read more
source§

impl<S, B> Transform<S, ServiceRequest> for RateLimiter
where S: Service<ServiceRequest, Response = ServiceResponse<B>, Error = Error> + 'static, S::Future: 'static, @@ -18,4 +18,5 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_limitation/struct.Status.html b/actix_limitation/struct.Status.html index e024cc0f3..669cc1be4 100644 --- a/actix_limitation/struct.Status.html +++ b/actix_limitation/struct.Status.html @@ -1,4 +1,4 @@ -Status in actix_limitation - Rust

Struct actix_limitation::Status

source ·
pub struct Status { /* private fields */ }
Expand description

A report for a given key containing the limit status.

+Status in actix_limitation - Rust

Struct actix_limitation::Status

source ·
pub struct Status { /* private fields */ }
Expand description

A report for a given key containing the limit status.

Implementations§

source§

impl Status

source

pub fn limit(&self) -> usize

Returns the maximum number of requests allowed in the current period.

source

pub fn remaining(&self) -> usize

Returns how many requests are left in the current period.

source

pub fn reset_epoch_utc(&self) -> usize

Returns a UNIX timestamp in UTC approximately when the next period will begin.

@@ -19,4 +19,5 @@ V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_protobuf/all.html b/actix_protobuf/all.html index c4ffd6507..919d8c6dd 100644 --- a/actix_protobuf/all.html +++ b/actix_protobuf/all.html @@ -1 +1 @@ -List of all items in this crate
\ No newline at end of file +List of all items in this crate
\ No newline at end of file diff --git a/actix_protobuf/enum.ProtoBufPayloadError.html b/actix_protobuf/enum.ProtoBufPayloadError.html index 038670d6d..8be10daf5 100644 --- a/actix_protobuf/enum.ProtoBufPayloadError.html +++ b/actix_protobuf/enum.ProtoBufPayloadError.html @@ -1,4 +1,4 @@ -ProtoBufPayloadError in actix_protobuf - Rust

Enum actix_protobuf::ProtoBufPayloadError

source ·
pub enum ProtoBufPayloadError {
+ProtoBufPayloadError in actix_protobuf - Rust

Enum actix_protobuf::ProtoBufPayloadError

source ·
pub enum ProtoBufPayloadError {
     Overflow,
     ContentType,
     Serialize(EncodeError),
@@ -26,4 +26,5 @@
     V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_protobuf/index.html b/actix_protobuf/index.html index 5a912dff1..1539a7d5e 100644 --- a/actix_protobuf/index.html +++ b/actix_protobuf/index.html @@ -1,2 +1,2 @@ -actix_protobuf - Rust

Crate actix_protobuf

source ·
Expand description

Protobuf payload extractor for Actix Web.

+actix_protobuf - Rust

Crate actix_protobuf

source ·
Expand description

Protobuf payload extractor for Actix Web.

Structs§

Enums§

Traits§

\ No newline at end of file diff --git a/actix_protobuf/struct.ProtoBuf.html b/actix_protobuf/struct.ProtoBuf.html index 4e042a73a..655f5d138 100644 --- a/actix_protobuf/struct.ProtoBuf.html +++ b/actix_protobuf/struct.ProtoBuf.html @@ -1,6 +1,6 @@ -ProtoBuf in actix_protobuf - Rust

Struct actix_protobuf::ProtoBuf

source ·
pub struct ProtoBuf<T: Message>(pub T);

Tuple Fields§

§0: T

Trait Implementations§

source§

impl<T> Debug for ProtoBuf<T>
where - T: Debug + Message,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<T: Message> Deref for ProtoBuf<T>

§

type Target = T

The resulting type after dereferencing.
source§

fn deref(&self) -> &T

Dereferences the value.
source§

impl<T: Message> DerefMut for ProtoBuf<T>

source§

fn deref_mut(&mut self) -> &mut T

Mutably dereferences the value.
source§

impl<T> Display for ProtoBuf<T>
where - T: Display + Message,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<T> FromRequest for ProtoBuf<T>
where +ProtoBuf in actix_protobuf - Rust

Struct actix_protobuf::ProtoBuf

source ·
pub struct ProtoBuf<T: Message>(pub T);

Tuple Fields§

§0: T

Trait Implementations§

source§

impl<T> Debug for ProtoBuf<T>
where + T: Debug + Message,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<T: Message> Deref for ProtoBuf<T>

§

type Target = T

The resulting type after dereferencing.
source§

fn deref(&self) -> &T

Dereferences the value.
source§

impl<T: Message> DerefMut for ProtoBuf<T>

source§

fn deref_mut(&mut self) -> &mut T

Mutably dereferences the value.
source§

impl<T> Display for ProtoBuf<T>
where + T: Display + Message,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<T> FromRequest for ProtoBuf<T>
where T: Message + Default + 'static,

§

type Error = Error

The associated error which can be returned.
§

type Future = Pin<Box<dyn Future<Output = Result<ProtoBuf<T>, Error>>>>

Future that resolves to a Self. Read more
source§

fn from_request(req: &HttpRequest, payload: &mut Payload) -> Self::Future

Create a Self from request parts asynchronously.
§

fn extract(req: &HttpRequest) -> Self::Future

Create a Self from request head asynchronously. Read more
source§

impl<T: Message + Default> Responder for ProtoBuf<T>

§

type Body = BoxBody

source§

fn respond_to(self, _: &HttpRequest) -> HttpResponse

Convert self to HttpResponse.
§

fn customize(self) -> CustomizeResponder<Self>
where Self: Sized,

Wraps responder to allow alteration of its response. Read more

Auto Trait Implementations§

§

impl<T> Freeze for ProtoBuf<T>
where T: Freeze,

§

impl<T> RefUnwindSafe for ProtoBuf<T>
where @@ -23,8 +23,9 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
§

impl<T> Formattable for T
where +[WithDispatch] wrapper. Read more

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> Formattable for T
where T: Deref, - <T as Deref>::Target: Formattable,

§

impl<T> Parsable for T
where + <T as Deref>::Target: Formattable,

§

impl<T> MaybeSendSync for T

§

impl<T> Parsable for T
where T: Deref, <T as Deref>::Target: Parsable,

\ No newline at end of file diff --git a/actix_protobuf/struct.ProtoBufConfig.html b/actix_protobuf/struct.ProtoBufConfig.html index d6602ce42..69cd54fd3 100644 --- a/actix_protobuf/struct.ProtoBufConfig.html +++ b/actix_protobuf/struct.ProtoBufConfig.html @@ -1,4 +1,4 @@ -ProtoBufConfig in actix_protobuf - Rust

Struct actix_protobuf::ProtoBufConfig

source ·
pub struct ProtoBufConfig { /* private fields */ }

Implementations§

source§

impl ProtoBufConfig

source

pub fn limit(&mut self, limit: usize) -> &mut Self

Change max size of payload. By default max size is 256Kb

+ProtoBufConfig in actix_protobuf - Rust

Struct actix_protobuf::ProtoBufConfig

source ·
pub struct ProtoBufConfig { /* private fields */ }

Implementations§

source§

impl ProtoBufConfig

source

pub fn limit(&mut self, limit: usize) -> &mut Self

Change max size of payload. By default max size is 256Kb

Trait Implementations§

source§

impl Default for ProtoBufConfig

source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where @@ -15,4 +15,5 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_protobuf/struct.ProtoBufMessage.html b/actix_protobuf/struct.ProtoBufMessage.html index e99c7dad1..4a6b62639 100644 --- a/actix_protobuf/struct.ProtoBufMessage.html +++ b/actix_protobuf/struct.ProtoBufMessage.html @@ -1,4 +1,4 @@ -ProtoBufMessage in actix_protobuf - Rust

Struct actix_protobuf::ProtoBufMessage

source ·
pub struct ProtoBufMessage<T: Message + Default> { /* private fields */ }

Implementations§

source§

impl<T: Message + Default> ProtoBufMessage<T>

source

pub fn new(req: &HttpRequest, payload: &mut Payload) -> Self

Create ProtoBufMessage for request.

+ProtoBufMessage in actix_protobuf - Rust

Struct actix_protobuf::ProtoBufMessage

source ·
pub struct ProtoBufMessage<T: Message + Default> { /* private fields */ }

Implementations§

source§

impl<T: Message + Default> ProtoBufMessage<T>

source

pub fn new(req: &HttpRequest, payload: &mut Payload) -> Self

Create ProtoBufMessage for request.

source

pub fn limit(self, limit: usize) -> Self

Change max size of payload. By default max size is 256Kb

Trait Implementations§

source§

impl<T: Message + Default + 'static> Future for ProtoBufMessage<T>

§

type Output = Result<T, ProtoBufPayloadError>

The type of value produced on completion.
source§

fn poll(self: Pin<&mut Self>, task: &mut Context<'_>) -> Poll<Self::Output>

Attempt to resolve the future to a final value, registering the current task for wakeup if the value is not yet available. Read more

Auto Trait Implementations§

§

impl<T> Freeze for ProtoBufMessage<T>

§

impl<T> !RefUnwindSafe for ProtoBufMessage<T>

§

impl<T> !Send for ProtoBufMessage<T>

§

impl<T> !Sync for ProtoBufMessage<T>

§

impl<T> Unpin for ProtoBufMessage<T>

§

impl<T> !UnwindSafe for ProtoBufMessage<T>

Blanket Implementations§

source§

impl<T> Any for T
where @@ -112,4 +112,5 @@ future types.

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_protobuf/trait.ProtoBufResponseBuilder.html b/actix_protobuf/trait.ProtoBufResponseBuilder.html index 3d8f08eae..b2e43f200 100644 --- a/actix_protobuf/trait.ProtoBufResponseBuilder.html +++ b/actix_protobuf/trait.ProtoBufResponseBuilder.html @@ -1,4 +1,4 @@ -ProtoBufResponseBuilder in actix_protobuf - Rust

Trait actix_protobuf::ProtoBufResponseBuilder

source ·
pub trait ProtoBufResponseBuilder {
+ProtoBufResponseBuilder in actix_protobuf - Rust

Trait actix_protobuf::ProtoBufResponseBuilder

source ·
pub trait ProtoBufResponseBuilder {
     // Required method
     fn protobuf<T: Message>(&mut self, value: T) -> Result<HttpResponse, Error>;
 }

Required Methods§

source

fn protobuf<T: Message>(&mut self, value: T) -> Result<HttpResponse, Error>

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl ProtoBufResponseBuilder for HttpResponseBuilder

source§

fn protobuf<T: Message>(&mut self, value: T) -> Result<HttpResponse, Error>

Implementors§

\ No newline at end of file diff --git a/actix_session/all.html b/actix_session/all.html index 35e08b0a4..3c634988e 100644 --- a/actix_session/all.html +++ b/actix_session/all.html @@ -1 +1 @@ -List of all items in this crate
\ No newline at end of file +List of all items in this crate
\ No newline at end of file diff --git a/actix_session/config/enum.CookieContentSecurity.html b/actix_session/config/enum.CookieContentSecurity.html index 070d6c168..763a72493 100644 --- a/actix_session/config/enum.CookieContentSecurity.html +++ b/actix_session/config/enum.CookieContentSecurity.html @@ -1,4 +1,4 @@ -CookieContentSecurity in actix_session::config - Rust

Enum actix_session::config::CookieContentSecurity

source ·
pub enum CookieContentSecurity {
+CookieContentSecurity in actix_session::config - Rust

Enum actix_session::config::CookieContentSecurity

source ·
pub enum CookieContentSecurity {
     Private,
     Signed,
 }
Expand description

Determines how to secure the content of the session cookie.

@@ -26,4 +26,5 @@ tamper with the cookie content, but they can read it.

V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/config/enum.SessionLifecycle.html b/actix_session/config/enum.SessionLifecycle.html index 554a647bc..4469f208e 100644 --- a/actix_session/config/enum.SessionLifecycle.html +++ b/actix_session/config/enum.SessionLifecycle.html @@ -1,4 +1,4 @@ -SessionLifecycle in actix_session::config - Rust

Enum actix_session::config::SessionLifecycle

source ·
#[non_exhaustive]
pub enum SessionLifecycle { +SessionLifecycle in actix_session::config - Rust

Enum actix_session::config::SessionLifecycle

source ·
#[non_exhaustive]
pub enum SessionLifecycle { BrowserSession(BrowserSession), PersistentSession(PersistentSession), }
Expand description

Determines what type of session cookie should be used and how its lifecycle should be managed.

@@ -11,7 +11,7 @@ Check the documentation of the browsers you are targeting for up-to-date informa
§

PersistentSession(PersistentSession)

The session cookie will be a persistent cookie.

Persistent cookies have a pre-determined lifetime, specified via the Max-Age or Expires attribute. They do not disappear when the current browser session ends.

-

Trait Implementations§

source§

impl Clone for SessionLifecycle

source§

fn clone(&self) -> SessionLifecycle

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for SessionLifecycle

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<BrowserSession> for SessionLifecycle

source§

fn from(original: BrowserSession) -> SessionLifecycle

Converts to this type from the input type.
source§

impl From<PersistentSession> for SessionLifecycle

source§

fn from(original: PersistentSession) -> SessionLifecycle

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for SessionLifecycle

source§

fn clone(&self) -> SessionLifecycle

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for SessionLifecycle

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<BrowserSession> for SessionLifecycle

source§

fn from(original: BrowserSession) -> SessionLifecycle

Converts to this type from the input type.
source§

impl From<PersistentSession> for SessionLifecycle

source§

fn from(original: PersistentSession) -> SessionLifecycle

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

@@ -28,4 +28,5 @@ attribute. They do not disappear when the current browser session ends.

V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/config/enum.TtlExtensionPolicy.html b/actix_session/config/enum.TtlExtensionPolicy.html index be95cd98f..f2b0e3846 100644 --- a/actix_session/config/enum.TtlExtensionPolicy.html +++ b/actix_session/config/enum.TtlExtensionPolicy.html @@ -1,4 +1,4 @@ -TtlExtensionPolicy in actix_session::config - Rust

Enum actix_session::config::TtlExtensionPolicy

source ·
#[non_exhaustive]
pub enum TtlExtensionPolicy { +TtlExtensionPolicy in actix_session::config - Rust

Enum actix_session::config::TtlExtensionPolicy

source ·
#[non_exhaustive]
pub enum TtlExtensionPolicy { OnEveryRequest, OnStateChanges, }
Expand description

Configuration for which events should trigger an extension of the time-to-live for your session.

@@ -32,4 +32,5 @@ your server.

V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/config/index.html b/actix_session/config/index.html index a60eb0744..2d7e53278 100644 --- a/actix_session/config/index.html +++ b/actix_session/config/index.html @@ -1,3 +1,3 @@ -actix_session::config - Rust

Module actix_session::config

source ·
Expand description

Configuration options to tune the behaviour of SessionMiddleware.

+actix_session::config - Rust

Module actix_session::config

source ·
Expand description

Configuration options to tune the behaviour of SessionMiddleware.

Structs§

Enums§

  • Determines how to secure the content of the session cookie.
  • Determines what type of session cookie should be used and how its lifecycle should be managed.
  • Configuration for which events should trigger an extension of the time-to-live for your session.
\ No newline at end of file diff --git a/actix_session/config/struct.BrowserSession.html b/actix_session/config/struct.BrowserSession.html index 6a8e8231e..eae340646 100644 --- a/actix_session/config/struct.BrowserSession.html +++ b/actix_session/config/struct.BrowserSession.html @@ -1,4 +1,4 @@ -BrowserSession in actix_session::config - Rust

Struct actix_session::config::BrowserSession

source ·
pub struct BrowserSession { /* private fields */ }
Expand description

A session lifecycle strategy where the session cookie expires when the +BrowserSession in actix_session::config - Rust

Struct actix_session::config::BrowserSession

source ·
pub struct BrowserSession { /* private fields */ }
Expand description

A session lifecycle strategy where the session cookie expires when the browser’s current session ends.

When does a browser session end? It depends on the browser. Chrome, for example, will often continue running in the background when the browser is closed—session cookies are not deleted @@ -45,4 +45,5 @@ specifying a more aggressive state TTL extension policy - check out V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/config/struct.PersistentSession.html b/actix_session/config/struct.PersistentSession.html index c01147c94..7a72b03f3 100644 --- a/actix_session/config/struct.PersistentSession.html +++ b/actix_session/config/struct.PersistentSession.html @@ -1,4 +1,4 @@ -PersistentSession in actix_session::config - Rust

Struct actix_session::config::PersistentSession

source ·
pub struct PersistentSession { /* private fields */ }
Expand description

A session lifecycle strategy where the session cookie will be persistent.

+PersistentSession in actix_session::config - Rust

Struct actix_session::config::PersistentSession

source ·
pub struct PersistentSession { /* private fields */ }
Expand description

A session lifecycle strategy where the session cookie will be persistent.

Persistent cookies have a pre-determined expiration, specified via the Max-Age or Expires attribute. They do not disappear when the current browser session ends.

Due to its Into<SessionLifecycle> implementation, a PersistentSession can be passed directly @@ -45,4 +45,5 @@ See

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/config/struct.SessionMiddlewareBuilder.html b/actix_session/config/struct.SessionMiddlewareBuilder.html index 49e42c864..4aaab6e97 100644 --- a/actix_session/config/struct.SessionMiddlewareBuilder.html +++ b/actix_session/config/struct.SessionMiddlewareBuilder.html @@ -1,4 +1,4 @@ -SessionMiddlewareBuilder in actix_session::config - Rust

Struct actix_session::config::SessionMiddlewareBuilder

source ·
pub struct SessionMiddlewareBuilder<Store: SessionStore> { /* private fields */ }
Expand description

A fluent, customized SessionMiddleware builder.

+SessionMiddlewareBuilder in actix_session::config - Rust

Struct actix_session::config::SessionMiddlewareBuilder

source ·
pub struct SessionMiddlewareBuilder<Store: SessionStore> { /* private fields */ }
Expand description

A fluent, customized SessionMiddleware builder.

Implementations§

source§

impl<Store: SessionStore> SessionMiddlewareBuilder<Store>

source

pub fn cookie_name(self, name: String) -> Self

Set the name of the cookie used to store the session ID.

Defaults to id.

source

pub fn cookie_secure(self, secure: bool) -> Self

Set the Secure attribute for the cookie used to store the session ID.

@@ -75,4 +75,5 @@ running in the browser.

V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/enum.SessionStatus.html b/actix_session/enum.SessionStatus.html index 6fab3135d..1e457bd2b 100644 --- a/actix_session/enum.SessionStatus.html +++ b/actix_session/enum.SessionStatus.html @@ -1,4 +1,4 @@ -SessionStatus in actix_session - Rust

Enum actix_session::SessionStatus

source ·
pub enum SessionStatus {
+SessionStatus in actix_session - Rust

Enum actix_session::SessionStatus

source ·
pub enum SessionStatus {
     Changed,
     Purged,
     Renewed,
@@ -31,4 +31,5 @@ sufficient, and should not be overridden without very good reason.
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/index.html b/actix_session/index.html index b9f9f9138..62567d02b 100644 --- a/actix_session/index.html +++ b/actix_session/index.html @@ -1,4 +1,4 @@ -actix_session - Rust

Crate actix_session

source ·
Expand description

Session management for Actix Web.

+actix_session - Rust

Crate actix_session

source ·
Expand description

Session management for Actix Web.

The HTTP protocol, at a first glance, is stateless: the client sends a request, the server parses its content, performs some processing and returns a response. The outcome is only influenced by the provided inputs (i.e. the request content) and whatever state the server diff --git a/actix_session/storage/enum.LoadError.html b/actix_session/storage/enum.LoadError.html index 33c9a1773..b2beb133f 100644 --- a/actix_session/storage/enum.LoadError.html +++ b/actix_session/storage/enum.LoadError.html @@ -1,10 +1,10 @@ -LoadError in actix_session::storage - Rust

Enum actix_session::storage::LoadError

source ·
pub enum LoadError {
+LoadError in actix_session::storage - Rust

Enum actix_session::storage::LoadError

source ·
pub enum LoadError {
     Deserialization(Error),
     Other(Error),
 }
Expand description

Possible failures modes for SessionStore::load.

Variants§

§

Deserialization(Error)

Failed to deserialize session state.

§

Other(Error)

Something went wrong when retrieving the session state.

-

Trait Implementations§

source§

impl Debug for LoadError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for LoadError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for LoadError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Debug for LoadError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for LoadError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for LoadError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

@@ -21,4 +21,5 @@ V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/storage/enum.SaveError.html b/actix_session/storage/enum.SaveError.html index f7c1b01a6..2b59a7d45 100644 --- a/actix_session/storage/enum.SaveError.html +++ b/actix_session/storage/enum.SaveError.html @@ -1,10 +1,10 @@ -SaveError in actix_session::storage - Rust

Enum actix_session::storage::SaveError

source ·
pub enum SaveError {
+SaveError in actix_session::storage - Rust

Enum actix_session::storage::SaveError

source ·
pub enum SaveError {
     Serialization(Error),
     Other(Error),
 }
Expand description

Possible failures modes for SessionStore::save.

Variants§

§

Serialization(Error)

Failed to serialize session state.

§

Other(Error)

Something went wrong when persisting the session state.

-

Trait Implementations§

source§

impl Debug for SaveError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for SaveError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for SaveError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Debug for SaveError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for SaveError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for SaveError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

@@ -21,4 +21,5 @@ V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/storage/enum.UpdateError.html b/actix_session/storage/enum.UpdateError.html index 7af3bebda..edec16f2b 100644 --- a/actix_session/storage/enum.UpdateError.html +++ b/actix_session/storage/enum.UpdateError.html @@ -1,10 +1,10 @@ -UpdateError in actix_session::storage - Rust

Enum actix_session::storage::UpdateError

source ·
pub enum UpdateError {
+UpdateError in actix_session::storage - Rust

Enum actix_session::storage::UpdateError

source ·
pub enum UpdateError {
     Serialization(Error),
     Other(Error),
 }
Expand description

Possible failures modes for SessionStore::update.

Variants§

§

Serialization(Error)

Failed to serialize session state.

§

Other(Error)

Something went wrong when updating the session state.

-

Trait Implementations§

source§

impl Debug for UpdateError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for UpdateError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for UpdateError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Debug for UpdateError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for UpdateError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for UpdateError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

@@ -21,4 +21,5 @@ V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/storage/index.html b/actix_session/storage/index.html index 6c277ba6d..b80e0adeb 100644 --- a/actix_session/storage/index.html +++ b/actix_session/storage/index.html @@ -1,4 +1,4 @@ -actix_session::storage - Rust

Module actix_session::storage

source ·
Expand description

Pluggable storage backends for session state.

+actix_session::storage - Rust

Module actix_session::storage

source ·
Expand description

Pluggable storage backends for session state.

Structs§

Enums§

Traits§

  • The interface to retrieve and save the current session data from/to the chosen storage backend.
\ No newline at end of file diff --git a/actix_session/storage/struct.CookieSessionStore.html b/actix_session/storage/struct.CookieSessionStore.html index e573674db..7449e24cf 100644 --- a/actix_session/storage/struct.CookieSessionStore.html +++ b/actix_session/storage/struct.CookieSessionStore.html @@ -1,4 +1,4 @@ -CookieSessionStore in actix_session::storage - Rust

Struct actix_session::storage::CookieSessionStore

source ·
#[non_exhaustive]
pub struct CookieSessionStore;
Expand description

Use the session key, stored in the session cookie, as storage backend for the session state.

+CookieSessionStore in actix_session::storage - Rust

Struct actix_session::storage::CookieSessionStore

source ·
#[non_exhaustive]
pub struct CookieSessionStore;
Expand description

Use the session key, stored in the session cookie, as storage backend for the session state.

use actix_web::{cookie::Key, web, App, HttpServer, HttpResponse, Error};
 use actix_session::{SessionMiddleware, storage::CookieSessionStore};
@@ -60,4 +60,5 @@ storage backend.

V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/storage/struct.RedisSessionStore.html b/actix_session/storage/struct.RedisSessionStore.html index 06826eb7f..54f417fab 100644 --- a/actix_session/storage/struct.RedisSessionStore.html +++ b/actix_session/storage/struct.RedisSessionStore.html @@ -1,4 +1,4 @@ -RedisSessionStore in actix_session::storage - Rust

Struct actix_session::storage::RedisSessionStore

source ·
pub struct RedisSessionStore { /* private fields */ }
Expand description

Use Redis as session storage backend.

+RedisSessionStore in actix_session::storage - Rust

Struct actix_session::storage::RedisSessionStore

source ·
pub struct RedisSessionStore { /* private fields */ }
Expand description

Use Redis as session storage backend.

use actix_web::{web, App, HttpServer, HttpResponse, Error};
 use actix_session::{SessionMiddleware, storage::RedisSessionStore};
@@ -79,4 +79,5 @@ connection string for Redis.

V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/storage/struct.RedisSessionStoreBuilder.html b/actix_session/storage/struct.RedisSessionStoreBuilder.html index 9370923fa..3d6501639 100644 --- a/actix_session/storage/struct.RedisSessionStoreBuilder.html +++ b/actix_session/storage/struct.RedisSessionStoreBuilder.html @@ -1,4 +1,4 @@ -RedisSessionStoreBuilder in actix_session::storage - Rust

Struct actix_session::storage::RedisSessionStoreBuilder

source ·
pub struct RedisSessionStoreBuilder { /* private fields */ }
Expand description

A fluent builder to construct a RedisSessionStore instance with custom configuration +RedisSessionStoreBuilder in actix_session::storage - Rust

Struct actix_session::storage::RedisSessionStoreBuilder

source ·
pub struct RedisSessionStoreBuilder { /* private fields */ }
Expand description

A fluent builder to construct a RedisSessionStore instance with custom configuration parameters.

Implementations§

source§

impl RedisSessionStoreBuilder

source

pub fn cache_keygen<F>(self, keygen: F) -> Self
where F: Fn(&str) -> String + 'static + Send + Sync,

Set a custom cache key generation strategy, expecting a session key as input.

@@ -19,4 +19,5 @@ parameters.

V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/storage/struct.SessionKey.html b/actix_session/storage/struct.SessionKey.html index c9d29bd0b..5a082cab6 100644 --- a/actix_session/storage/struct.SessionKey.html +++ b/actix_session/storage/struct.SessionKey.html @@ -1,4 +1,4 @@ -SessionKey in actix_session::storage - Rust

Struct actix_session::storage::SessionKey

source ·
pub struct SessionKey(/* private fields */);
Expand description

A session key, the string stored in a client-side cookie to associate a user with its session +SessionKey in actix_session::storage - Rust

Struct actix_session::storage::SessionKey

source ·
pub struct SessionKey(/* private fields */);
Expand description

A session key, the string stored in a client-side cookie to associate a user with its session state on the backend.

§Validation

Session keys are stored as cookies, therefore they cannot be arbitrary long. Session keys are @@ -27,4 +27,5 @@ sufficient, and should not be overridden without very good reason.

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/storage/trait.SessionStore.html b/actix_session/storage/trait.SessionStore.html index 170e4a813..14a0ce4e7 100644 --- a/actix_session/storage/trait.SessionStore.html +++ b/actix_session/storage/trait.SessionStore.html @@ -1,4 +1,4 @@ -SessionStore in actix_session::storage - Rust

Trait actix_session::storage::SessionStore

source ·
pub trait SessionStore {
+SessionStore in actix_session::storage - Rust

Trait actix_session::storage::SessionStore

source ·
pub trait SessionStore {
     // Required methods
     fn load(
         &self,
diff --git a/actix_session/struct.Session.html b/actix_session/struct.Session.html
index 890217ca0..897a40cae 100644
--- a/actix_session/struct.Session.html
+++ b/actix_session/struct.Session.html
@@ -1,4 +1,4 @@
-Session in actix_session - Rust

Struct actix_session::Session

source ·
pub struct Session(/* private fields */);
Expand description

The primary interface to access and modify session state.

+Session in actix_session - Rust

Struct actix_session::Session

source ·
pub struct Session(/* private fields */);
Expand description

The primary interface to access and modify session state.

Session is an extractor—you can specify it as an input type for your request handlers and it will be automatically extracted from the incoming request.

@@ -76,4 +76,5 @@ otherwise returns un-deserialized JSON string.

V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/struct.SessionGetError.html b/actix_session/struct.SessionGetError.html index e576e486d..ae2a2dd0f 100644 --- a/actix_session/struct.SessionGetError.html +++ b/actix_session/struct.SessionGetError.html @@ -1,5 +1,5 @@ -SessionGetError in actix_session - Rust

Struct actix_session::SessionGetError

source ·
pub struct SessionGetError(/* private fields */);
Expand description

Error returned by Session::get.

-

Trait Implementations§

source§

impl Debug for SessionGetError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for SessionGetError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for SessionGetError

source§

fn source(&self) -> Option<&(dyn StdError + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Error> for SessionGetError

source§

fn from(original: Error) -> SessionGetError

Converts to this type from the input type.
source§

impl ResponseError for SessionGetError

source§

fn error_response(&self) -> HttpResponse<BoxBody>

Creates full response for error. Read more
§

fn status_code(&self) -> StatusCode

Returns appropriate status code for error. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +SessionGetError in actix_session - Rust

Struct actix_session::SessionGetError

source ·
pub struct SessionGetError(/* private fields */);
Expand description

Error returned by Session::get.

+

Trait Implementations§

source§

impl Debug for SessionGetError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for SessionGetError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for SessionGetError

source§

fn source(&self) -> Option<&(dyn StdError + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Error> for SessionGetError

source§

fn from(original: Error) -> SessionGetError

Converts to this type from the input type.
source§

impl ResponseError for SessionGetError

source§

fn error_response(&self) -> HttpResponse<BoxBody>

Creates full response for error. Read more
§

fn status_code(&self) -> StatusCode

Returns appropriate status code for error. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

@@ -16,4 +16,5 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/struct.SessionInsertError.html b/actix_session/struct.SessionInsertError.html index 7c0b90e5d..9231b8bb1 100644 --- a/actix_session/struct.SessionInsertError.html +++ b/actix_session/struct.SessionInsertError.html @@ -1,4 +1,4 @@ -SessionInsertError in actix_session - Rust

Struct actix_session::SessionInsertError

source ·
pub struct SessionInsertError(/* private fields */);
Expand description

Error returned by Session::insert.

+SessionInsertError in actix_session - Rust

Struct actix_session::SessionInsertError

source ·
pub struct SessionInsertError(/* private fields */);
Expand description

Error returned by Session::insert.

Trait Implementations§

source§

impl Debug for SessionInsertError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for SessionInsertError

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for SessionInsertError

source§

fn source(&self) -> Option<&(dyn StdError + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Error> for SessionInsertError

source§

fn from(original: Error) -> SessionInsertError

Converts to this type from the input type.
source§

impl ResponseError for SessionInsertError

source§

fn error_response(&self) -> HttpResponse<BoxBody>

Creates full response for error. Read more
§

fn status_code(&self) -> StatusCode

Returns appropriate status code for error. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where @@ -16,4 +16,5 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/struct.SessionMiddleware.html b/actix_session/struct.SessionMiddleware.html index d8231ec5c..e1ca51c66 100644 --- a/actix_session/struct.SessionMiddleware.html +++ b/actix_session/struct.SessionMiddleware.html @@ -1,4 +1,4 @@ -SessionMiddleware in actix_session - Rust

Struct actix_session::SessionMiddleware

source ·
pub struct SessionMiddleware<Store: SessionStore> { /* private fields */ }
Expand description

A middleware for session management in Actix Web applications.

+SessionMiddleware in actix_session - Rust

Struct actix_session::SessionMiddleware

source ·
pub struct SessionMiddleware<Store: SessionStore> { /* private fields */ }
Expand description

A middleware for session management in Actix Web applications.

SessionMiddleware takes care of a few jobs:

  • Instructs the session storage backend to create/update/delete/retrieve the state attached to @@ -118,4 +118,5 @@ parameters.

    V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_session/trait.SessionExt.html b/actix_session/trait.SessionExt.html index 21fdd3349..bdcfff37f 100644 --- a/actix_session/trait.SessionExt.html +++ b/actix_session/trait.SessionExt.html @@ -1,4 +1,4 @@ -SessionExt in actix_session - Rust

Trait actix_session::SessionExt

source ·
pub trait SessionExt {
+SessionExt in actix_session - Rust

Trait actix_session::SessionExt

source ·
pub trait SessionExt {
     // Required method
     fn get_session(&self) -> Session;
 }
Expand description

Extract a Session object from various actix-web types (e.g. HttpRequest, diff --git a/actix_settings/all.html b/actix_settings/all.html index 9b1d25e76..1dfb9886f 100644 --- a/actix_settings/all.html +++ b/actix_settings/all.html @@ -1 +1 @@ -List of all items in this crate

\ No newline at end of file +List of all items in this crate
\ No newline at end of file diff --git a/actix_settings/enum.Backlog.html b/actix_settings/enum.Backlog.html index b03dc6de2..db755fec1 100644 --- a/actix_settings/enum.Backlog.html +++ b/actix_settings/enum.Backlog.html @@ -1,4 +1,4 @@ -Backlog in actix_settings - Rust

Enum actix_settings::Backlog

source ·
pub enum Backlog {
+Backlog in actix_settings - Rust

Enum actix_settings::Backlog

source ·
pub enum Backlog {
     Default,
     Manual(usize),
 }
Expand description

The maximum number of pending connections.

@@ -36,4 +36,5 @@ sufficient, and should not be overridden without very good reason.
Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

\ No newline at end of file + T: for<'de> Deserialize<'de>,
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_settings/enum.Error.html b/actix_settings/enum.Error.html index f0e69239c..8a4be13b1 100644 --- a/actix_settings/enum.Error.html +++ b/actix_settings/enum.Error.html @@ -1,4 +1,4 @@ -Error in actix_settings - Rust

Enum actix_settings::Error

source ·
pub enum Error {
+Error in actix_settings - Rust

Enum actix_settings::Error

source ·
pub enum Error {
     EnvVarError(VarError),
     FileExists(PathBuf),
     InvalidValue {
@@ -22,7 +22,7 @@
 
§

ParseIntError(ParseIntError)

Value is not an integer.

§

ParseAddressError(String)

Value is not an address.

§

TomlError(Error)

Error deserializing as TOML.

-

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for Error

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Error> for Error

source§

fn from(err: Error) -> Self

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(err: TomlError) -> Self

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(err: Error) -> Self

Converts to this type from the input type.
source§

impl From<ParseBoolError> for Error

source§

fn from(err: ParseBoolError) -> Self

Converts to this type from the input type.
source§

impl From<ParseIntError> for Error

source§

fn from(err: ParseIntError) -> Self

Converts to this type from the input type.
source§

impl From<VarError> for Error

source§

fn from(err: VarError) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl Freeze for Error

§

impl !RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl !UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for Error

source§

fn fmt(&self, _derive_more_display_formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Error> for Error

source§

fn from(err: TomlError) -> Self

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(err: Error) -> Self

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(err: Error) -> Self

Converts to this type from the input type.
source§

impl From<ParseBoolError> for Error

source§

fn from(err: ParseBoolError) -> Self

Converts to this type from the input type.
source§

impl From<ParseIntError> for Error

source§

fn from(err: ParseIntError) -> Self

Converts to this type from the input type.
source§

impl From<VarError> for Error

source§

fn from(err: VarError) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl Freeze for Error

§

impl !RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl !UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

@@ -39,4 +39,5 @@ V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_settings/enum.KeepAlive.html b/actix_settings/enum.KeepAlive.html index 18090fc13..62872944c 100644 --- a/actix_settings/enum.KeepAlive.html +++ b/actix_settings/enum.KeepAlive.html @@ -1,4 +1,4 @@ -KeepAlive in actix_settings - Rust

Enum actix_settings::KeepAlive

source ·
pub enum KeepAlive {
+KeepAlive in actix_settings - Rust

Enum actix_settings::KeepAlive

source ·
pub enum KeepAlive {
     Default,
     Disabled,
     Os,
@@ -38,4 +38,5 @@ sufficient, and should not be overridden without very good reason.
Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

\ No newline at end of file + T: for<'de> Deserialize<'de>,
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_settings/enum.MaxConnectionRate.html b/actix_settings/enum.MaxConnectionRate.html index 6695308fe..6f46789b1 100644 --- a/actix_settings/enum.MaxConnectionRate.html +++ b/actix_settings/enum.MaxConnectionRate.html @@ -1,4 +1,4 @@ -MaxConnectionRate in actix_settings - Rust

Enum actix_settings::MaxConnectionRate

source ·
pub enum MaxConnectionRate {
+MaxConnectionRate in actix_settings - Rust

Enum actix_settings::MaxConnectionRate

source ·
pub enum MaxConnectionRate {
     Default,
     Manual(usize),
 }
Expand description

The maximum per-worker concurrent TLS connection limit.

@@ -34,4 +34,5 @@ sufficient, and should not be overridden without very good reason.
Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

\ No newline at end of file + T: for<'de> Deserialize<'de>,
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_settings/enum.MaxConnections.html b/actix_settings/enum.MaxConnections.html index 94b43bd89..6ddbb858c 100644 --- a/actix_settings/enum.MaxConnections.html +++ b/actix_settings/enum.MaxConnections.html @@ -1,4 +1,4 @@ -MaxConnections in actix_settings - Rust

Enum actix_settings::MaxConnections

source ·
pub enum MaxConnections {
+MaxConnections in actix_settings - Rust

Enum actix_settings::MaxConnections

source ·
pub enum MaxConnections {
     Default,
     Manual(usize),
 }
Expand description

The maximum per-worker number of concurrent connections.

@@ -34,4 +34,5 @@ sufficient, and should not be overridden without very good reason.
Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

\ No newline at end of file + T: for<'de> Deserialize<'de>,
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_settings/enum.Mode.html b/actix_settings/enum.Mode.html index c9a36ce53..8fdd81fa7 100644 --- a/actix_settings/enum.Mode.html +++ b/actix_settings/enum.Mode.html @@ -1,4 +1,4 @@ -Mode in actix_settings - Rust

Enum actix_settings::Mode

source ·
pub enum Mode {
+Mode in actix_settings - Rust

Enum actix_settings::Mode

source ·
pub enum Mode {
     Development,
     Production,
 }
Expand description

Marker of intended deployment environment.

@@ -31,4 +31,5 @@ sufficient, and should not be overridden without very good reason.
Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

\ No newline at end of file + T: for<'de> Deserialize<'de>,
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_settings/enum.NumWorkers.html b/actix_settings/enum.NumWorkers.html index cef3c955f..abae144b7 100644 --- a/actix_settings/enum.NumWorkers.html +++ b/actix_settings/enum.NumWorkers.html @@ -1,4 +1,4 @@ -NumWorkers in actix_settings - Rust

Enum actix_settings::NumWorkers

source ·
pub enum NumWorkers {
+NumWorkers in actix_settings - Rust

Enum actix_settings::NumWorkers

source ·
pub enum NumWorkers {
     Default,
     Manual(usize),
 }
Expand description

The number of workers that the server should start.

@@ -33,4 +33,5 @@ sufficient, and should not be overridden without very good reason.
Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

\ No newline at end of file + T: for<'de> Deserialize<'de>,
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_settings/enum.Timeout.html b/actix_settings/enum.Timeout.html index 16f50b676..95c45e16e 100644 --- a/actix_settings/enum.Timeout.html +++ b/actix_settings/enum.Timeout.html @@ -1,4 +1,4 @@ -Timeout in actix_settings - Rust

Enum actix_settings::Timeout

source ·
pub enum Timeout {
+Timeout in actix_settings - Rust

Enum actix_settings::Timeout

source ·
pub enum Timeout {
     Default,
     Milliseconds(usize),
     Seconds(usize),
@@ -33,4 +33,5 @@ sufficient, and should not be overridden without very good reason.
Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

\ No newline at end of file + T: for<'de> Deserialize<'de>,
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_settings/index.html b/actix_settings/index.html index 80341bf7e..535f3c46a 100644 --- a/actix_settings/index.html +++ b/actix_settings/index.html @@ -1,4 +1,4 @@ -actix_settings - Rust

Crate actix_settings

source ·
Expand description

Easily manage Actix Web’s settings from a TOML file and environment variables.

+actix_settings - Rust

Crate actix_settings

source ·
Expand description

Easily manage Actix Web’s settings from a TOML file and environment variables.

To get started add a Settings::parse_toml("./Server.toml") call to the top of your main function. This will create a template file with descriptions of all the configurable settings. You can change or remove anything in that file and it will be picked up diff --git a/actix_settings/struct.ActixSettings.html b/actix_settings/struct.ActixSettings.html index bc1bc32d3..1462dd987 100644 --- a/actix_settings/struct.ActixSettings.html +++ b/actix_settings/struct.ActixSettings.html @@ -1,4 +1,4 @@ -ActixSettings in actix_settings - Rust

Struct actix_settings::ActixSettings

source ·
pub struct ActixSettings {
Show 13 fields +ActixSettings in actix_settings - Rust

Struct actix_settings::ActixSettings

source ·
pub struct ActixSettings {
Show 13 fields pub hosts: Vec<Address>, pub mode: Mode, pub enable_compression: bool, @@ -61,4 +61,5 @@ sufficient, and should not be overridden without very good reason.
Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

\ No newline at end of file + T: for<'de> Deserialize<'de>,
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_settings/struct.Address.html b/actix_settings/struct.Address.html index 0c01888a7..9f2d6b1ea 100644 --- a/actix_settings/struct.Address.html +++ b/actix_settings/struct.Address.html @@ -1,4 +1,4 @@ -Address in actix_settings - Rust

Struct actix_settings::Address

source ·
pub struct Address {
+Address in actix_settings - Rust

Struct actix_settings::Address

source ·
pub struct Address {
     pub host: String,
     pub port: u16,
 }
Expand description

A host/port pair for the server to bind to.

@@ -31,4 +31,5 @@ sufficient, and should not be overridden without very good reason.
Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

\ No newline at end of file + T: for<'de> Deserialize<'de>,
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_settings/struct.BasicSettings.html b/actix_settings/struct.BasicSettings.html index d1aec0372..33f22792d 100644 --- a/actix_settings/struct.BasicSettings.html +++ b/actix_settings/struct.BasicSettings.html @@ -1,4 +1,4 @@ -BasicSettings in actix_settings - Rust

Struct actix_settings::BasicSettings

source ·
pub struct BasicSettings<A> {
+BasicSettings in actix_settings - Rust

Struct actix_settings::BasicSettings

source ·
pub struct BasicSettings<A> {
     pub actix: ActixSettings,
     pub application: A,
 }
Expand description

Wrapper for server and application-specific settings.

@@ -86,4 +86,5 @@ sufficient, and should not be overridden without very good reason.
Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

\ No newline at end of file + T: for<'de> Deserialize<'de>,
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_settings/struct.NoSettings.html b/actix_settings/struct.NoSettings.html index 2fe0fe5ef..6dd4483f0 100644 --- a/actix_settings/struct.NoSettings.html +++ b/actix_settings/struct.NoSettings.html @@ -1,4 +1,4 @@ -NoSettings in actix_settings - Rust

Struct actix_settings::NoSettings

source ·
#[non_exhaustive]
pub struct NoSettings {}
Expand description

Marker type representing no defined application-specific settings.

+NoSettings in actix_settings - Rust

Struct actix_settings::NoSettings

source ·
#[non_exhaustive]
pub struct NoSettings {}
Expand description

Marker type representing no defined application-specific settings.

Trait Implementations§

source§

impl Clone for NoSettings

source§

fn clone(&self) -> NoSettings

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for NoSettings

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for NoSettings

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Hash for NoSettings

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, @@ -26,4 +26,5 @@ sufficient, and should not be overridden without very good reason.
Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

\ No newline at end of file + T: for<'de> Deserialize<'de>,
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_settings/struct.Tls.html b/actix_settings/struct.Tls.html index 04c3875f5..7d3e304b4 100644 --- a/actix_settings/struct.Tls.html +++ b/actix_settings/struct.Tls.html @@ -1,4 +1,4 @@ -Tls in actix_settings - Rust

Struct actix_settings::Tls

source ·
pub struct Tls {
+Tls in actix_settings - Rust

Struct actix_settings::Tls

source ·
pub struct Tls {
     pub enabled: bool,
     pub certificate: PathBuf,
     pub private_key: PathBuf,
@@ -33,4 +33,5 @@ sufficient, and should not be overridden without very good reason.
Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

\ No newline at end of file + T: for<'de> Deserialize<'de>,
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_settings/trait.ApplySettings.html b/actix_settings/trait.ApplySettings.html index b7f8d2c86..41ab6e9fb 100644 --- a/actix_settings/trait.ApplySettings.html +++ b/actix_settings/trait.ApplySettings.html @@ -1,4 +1,4 @@ -ApplySettings in actix_settings - Rust

Trait actix_settings::ApplySettings

source ·
pub trait ApplySettings<S> {
+ApplySettings in actix_settings - Rust

Trait actix_settings::ApplySettings

source ·
pub trait ApplySettings<S> {
     // Required method
     fn apply_settings(self, settings: &S) -> Self;
 }
Expand description

Extension trait for applying parsed settings to the server object.

diff --git a/actix_settings/trait.Parse.html b/actix_settings/trait.Parse.html index 582ee61af..a437c4ca8 100644 --- a/actix_settings/trait.Parse.html +++ b/actix_settings/trait.Parse.html @@ -1,6 +1,6 @@ -Parse in actix_settings - Rust

Trait actix_settings::Parse

source ·
pub trait Parse: Sized {
+Parse in actix_settings - Rust

Trait actix_settings::Parse

source ·
pub trait Parse: Sized {
     // Required method
     fn parse(string: &str) -> Result<Self, Error>;
 }
Expand description

A specialized FromStr trait that returns Error errors

Required Methods§

source

fn parse(string: &str) -> Result<Self, Error>

Parse Self from string.

-

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl Parse for bool

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for i8

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for i16

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for i32

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for i64

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for i128

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for u8

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for u16

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for u32

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for u64

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for u128

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for String

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for Vec<Address>

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for PathBuf

source§

fn parse(string: &str) -> Result<Self, Error>

Implementors§

\ No newline at end of file +

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl Parse for bool

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for i8

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for i16

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for i32

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for i64

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for i128

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for u8

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for u16

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for u32

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for u64

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for u128

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for String

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for Vec<Address>

source§

fn parse(string: &str) -> Result<Self, Error>

source§

impl Parse for PathBuf

source§

fn parse(string: &str) -> Result<Self, Error>

Implementors§

\ No newline at end of file diff --git a/actix_settings/type.Settings.html b/actix_settings/type.Settings.html index cb22a10b7..a03899eb7 100644 --- a/actix_settings/type.Settings.html +++ b/actix_settings/type.Settings.html @@ -1,4 +1,4 @@ -Settings in actix_settings - Rust

Type Alias actix_settings::Settings

source ·
pub type Settings = BasicSettings<NoSettings>;
Expand description

Convenience type alias for BasicSettings with no defined application-specific settings.

+Settings in actix_settings - Rust

Type Alias actix_settings::Settings

source ·
pub type Settings = BasicSettings<NoSettings>;
Expand description

Convenience type alias for BasicSettings with no defined application-specific settings.

Aliased Type§

struct Settings {
     pub actix: ActixSettings,
     pub application: NoSettings,
diff --git a/actix_web_httpauth/all.html b/actix_web_httpauth/all.html
index a00e8b3af..cb4a589c0 100644
--- a/actix_web_httpauth/all.html
+++ b/actix_web_httpauth/all.html
@@ -1 +1 @@
-List of all items in this crate
\ No newline at end of file +List of all items in this crate
\ No newline at end of file diff --git a/actix_web_httpauth/extractors/basic/index.html b/actix_web_httpauth/extractors/basic/index.html index 092fa4bb8..3b2511e02 100644 --- a/actix_web_httpauth/extractors/basic/index.html +++ b/actix_web_httpauth/extractors/basic/index.html @@ -1,2 +1,2 @@ -actix_web_httpauth::extractors::basic - Rust

Module actix_web_httpauth::extractors::basic

source ·
Expand description

Extractor for the “Basic” HTTP Authentication Scheme.

+actix_web_httpauth::extractors::basic - Rust

Module actix_web_httpauth::extractors::basic

source ·
Expand description

Extractor for the “Basic” HTTP Authentication Scheme.

Structs§

\ No newline at end of file diff --git a/actix_web_httpauth/extractors/basic/struct.BasicAuth.html b/actix_web_httpauth/extractors/basic/struct.BasicAuth.html index baeef90f5..8103372da 100644 --- a/actix_web_httpauth/extractors/basic/struct.BasicAuth.html +++ b/actix_web_httpauth/extractors/basic/struct.BasicAuth.html @@ -1,4 +1,4 @@ -BasicAuth in actix_web_httpauth::extractors::basic - Rust

Struct actix_web_httpauth::extractors::basic::BasicAuth

source ·
pub struct BasicAuth(/* private fields */);
Expand description

Extractor for HTTP Basic auth.

+BasicAuth in actix_web_httpauth::extractors::basic - Rust

Struct actix_web_httpauth::extractors::basic::BasicAuth

source ·
pub struct BasicAuth(/* private fields */);
Expand description

Extractor for HTTP Basic auth.

§Examples

use actix_web_httpauth::extractors::basic::BasicAuth;
 
@@ -40,4 +40,5 @@ App::new()
     V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_web_httpauth/extractors/basic/struct.Config.html b/actix_web_httpauth/extractors/basic/struct.Config.html index 1f95286b0..76abdd94b 100644 --- a/actix_web_httpauth/extractors/basic/struct.Config.html +++ b/actix_web_httpauth/extractors/basic/struct.Config.html @@ -1,4 +1,4 @@ -Config in actix_web_httpauth::extractors::basic - Rust

Struct actix_web_httpauth::extractors::basic::Config

source ·
pub struct Config(/* private fields */);
Expand description

BasicAuth extractor configuration used for WWW-Authenticate header later.

+Config in actix_web_httpauth::extractors::basic - Rust

Struct actix_web_httpauth::extractors::basic::Config

source ·
pub struct Config(/* private fields */);
Expand description

BasicAuth extractor configuration used for WWW-Authenticate header later.

Implementations§

source§

impl Config

source

pub fn realm<T>(self, value: T) -> Config
where T: Into<Cow<'static, str>>,

Set challenge realm attribute.

The “realm” attribute indicates the scope of protection in the manner described in HTTP/1.1 @@ -20,4 +20,5 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_web_httpauth/extractors/bearer/enum.Error.html b/actix_web_httpauth/extractors/bearer/enum.Error.html index 878afe709..793281f68 100644 --- a/actix_web_httpauth/extractors/bearer/enum.Error.html +++ b/actix_web_httpauth/extractors/bearer/enum.Error.html @@ -1,4 +1,4 @@ -Error in actix_web_httpauth::extractors::bearer - Rust

Enum actix_web_httpauth::extractors::bearer::Error

source ·
pub enum Error {
+Error in actix_web_httpauth::extractors::bearer - Rust

Enum actix_web_httpauth::extractors::bearer::Error

source ·
pub enum Error {
     InvalidRequest,
     InvalidToken,
     InsufficientScope,
@@ -36,4 +36,5 @@ operator. 
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_web_httpauth/extractors/bearer/index.html b/actix_web_httpauth/extractors/bearer/index.html index 7579db9e8..a85391e75 100644 --- a/actix_web_httpauth/extractors/bearer/index.html +++ b/actix_web_httpauth/extractors/bearer/index.html @@ -1,2 +1,2 @@ -actix_web_httpauth::extractors::bearer - Rust

Module actix_web_httpauth::extractors::bearer

source ·
Expand description

Extractor for the “Bearer” HTTP Authentication Scheme.

+actix_web_httpauth::extractors::bearer - Rust

Module actix_web_httpauth::extractors::bearer

source ·
Expand description

Extractor for the “Bearer” HTTP Authentication Scheme.

Structs§

Enums§

\ No newline at end of file diff --git a/actix_web_httpauth/extractors/bearer/struct.BearerAuth.html b/actix_web_httpauth/extractors/bearer/struct.BearerAuth.html index 396621a41..d1d12eceb 100644 --- a/actix_web_httpauth/extractors/bearer/struct.BearerAuth.html +++ b/actix_web_httpauth/extractors/bearer/struct.BearerAuth.html @@ -1,4 +1,4 @@ -BearerAuth in actix_web_httpauth::extractors::bearer - Rust

Struct actix_web_httpauth::extractors::bearer::BearerAuth

source ·
pub struct BearerAuth(/* private fields */);
Expand description

Extractor for HTTP Bearer auth

+BearerAuth in actix_web_httpauth::extractors::bearer - Rust

Struct actix_web_httpauth::extractors::bearer::BearerAuth

source ·
pub struct BearerAuth(/* private fields */);
Expand description

Extractor for HTTP Bearer auth

§Examples

use actix_web_httpauth::extractors::bearer::BearerAuth;
 
@@ -44,4 +44,5 @@ App::new()
     V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_web_httpauth/extractors/bearer/struct.Config.html b/actix_web_httpauth/extractors/bearer/struct.Config.html index f17be61cc..20e215252 100644 --- a/actix_web_httpauth/extractors/bearer/struct.Config.html +++ b/actix_web_httpauth/extractors/bearer/struct.Config.html @@ -1,4 +1,4 @@ -Config in actix_web_httpauth::extractors::bearer - Rust

Struct actix_web_httpauth::extractors::bearer::Config

source ·
pub struct Config(/* private fields */);
Expand description

BearerAuth extractor configuration.

+Config in actix_web_httpauth::extractors::bearer - Rust

Struct actix_web_httpauth::extractors::bearer::Config

source ·
pub struct Config(/* private fields */);
Expand description

BearerAuth extractor configuration.

Implementations§

source§

impl Config

source

pub fn scope<T: Into<Cow<'static, str>>>(self, value: T) -> Config

Set challenge scope attribute.

The "scope" attribute is a space-delimited list of case-sensitive scope values indicating the required scope of the access token for @@ -23,4 +23,5 @@ described in HTTP/1.1 V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_web_httpauth/extractors/index.html b/actix_web_httpauth/extractors/index.html index 0a941f9b7..355817584 100644 --- a/actix_web_httpauth/extractors/index.html +++ b/actix_web_httpauth/extractors/index.html @@ -1,3 +1,3 @@ -actix_web_httpauth::extractors - Rust

Module actix_web_httpauth::extractors

source ·
Expand description

Type-safe authentication information extractors.

+actix_web_httpauth::extractors - Rust

Module actix_web_httpauth::extractors

source ·
Expand description

Type-safe authentication information extractors.

Modules§

  • Extractor for the “Basic” HTTP Authentication Scheme.
  • Extractor for the “Bearer” HTTP Authentication Scheme.

Structs§

Traits§

\ No newline at end of file diff --git a/actix_web_httpauth/extractors/struct.AuthenticationError.html b/actix_web_httpauth/extractors/struct.AuthenticationError.html index 7c198af34..0154cf586 100644 --- a/actix_web_httpauth/extractors/struct.AuthenticationError.html +++ b/actix_web_httpauth/extractors/struct.AuthenticationError.html @@ -1,4 +1,4 @@ -AuthenticationError in actix_web_httpauth::extractors - Rust
pub struct AuthenticationError<C: Challenge> { /* private fields */ }
Expand description

Authentication error returned by authentication extractors.

+AuthenticationError in actix_web_httpauth::extractors - Rust
pub struct AuthenticationError<C: Challenge> { /* private fields */ }
Expand description

Authentication error returned by authentication extractors.

Different extractors may extend AuthenticationError implementation in order to provide access inner challenge fields.

Implementations§

source§

impl AuthenticationError<Bearer>

Extended error customization for HTTP Bearer auth.

@@ -38,4 +38,5 @@ RFC, so it might be unreasonable.

V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_web_httpauth/extractors/trait.AuthExtractorConfig.html b/actix_web_httpauth/extractors/trait.AuthExtractorConfig.html index 03c132177..bc0b2d3c0 100644 --- a/actix_web_httpauth/extractors/trait.AuthExtractorConfig.html +++ b/actix_web_httpauth/extractors/trait.AuthExtractorConfig.html @@ -1,4 +1,4 @@ -AuthExtractorConfig in actix_web_httpauth::extractors - Rust
pub trait AuthExtractorConfig {
+AuthExtractorConfig in actix_web_httpauth::extractors - Rust
pub trait AuthExtractorConfig {
     type Inner: Challenge;
 
     // Required method
diff --git a/actix_web_httpauth/headers/authorization/enum.ParseError.html b/actix_web_httpauth/headers/authorization/enum.ParseError.html
index edd4736a2..d1b1b6f6a 100644
--- a/actix_web_httpauth/headers/authorization/enum.ParseError.html
+++ b/actix_web_httpauth/headers/authorization/enum.ParseError.html
@@ -1,4 +1,4 @@
-ParseError in actix_web_httpauth::headers::authorization - Rust
pub enum ParseError {
+ParseError in actix_web_httpauth::headers::authorization - Rust
pub enum ParseError {
     Invalid,
     MissingScheme,
     MissingField(&'static str),
@@ -14,7 +14,7 @@
 
§

ToStrError(ToStrError)

Unable to convert header into the str.

§

Base64DecodeError(DecodeError)

Malformed base64 string.

§

Utf8Error(Utf8Error)

Malformed UTF-8 string.

-

Trait Implementations§

source§

impl Debug for ParseError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for ParseError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for ParseError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<DecodeError> for ParseError

source§

fn from(err: DecodeError) -> Self

Converts to this type from the input type.
source§

impl From<ToStrError> for ParseError

source§

fn from(err: ToStrError) -> Self

Converts to this type from the input type.
source§

impl From<Utf8Error> for ParseError

source§

fn from(err: Utf8Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Debug for ParseError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for ParseError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for ParseError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<DecodeError> for ParseError

source§

fn from(err: DecodeError) -> Self

Converts to this type from the input type.
source§

impl From<ToStrError> for ParseError

source§

fn from(err: ToStrError) -> Self

Converts to this type from the input type.
source§

impl From<Utf8Error> for ParseError

source§

fn from(err: Utf8Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

@@ -31,4 +31,5 @@ V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_web_httpauth/headers/authorization/index.html b/actix_web_httpauth/headers/authorization/index.html index bf6ccfeed..e5edceb00 100644 --- a/actix_web_httpauth/headers/authorization/index.html +++ b/actix_web_httpauth/headers/authorization/index.html @@ -1,2 +1,2 @@ -actix_web_httpauth::headers::authorization - Rust

Module actix_web_httpauth::headers::authorization

source ·
Expand description

Authorization header and various auth schemes.

+actix_web_httpauth::headers::authorization - Rust

Module actix_web_httpauth::headers::authorization

source ·
Expand description

Authorization header and various auth schemes.

Structs§

Enums§

  • Possible errors while parsing Authorization header.

Traits§

\ No newline at end of file diff --git a/actix_web_httpauth/headers/authorization/struct.Authorization.html b/actix_web_httpauth/headers/authorization/struct.Authorization.html index 65a16d0a8..9ee603ec8 100644 --- a/actix_web_httpauth/headers/authorization/struct.Authorization.html +++ b/actix_web_httpauth/headers/authorization/struct.Authorization.html @@ -1,4 +1,4 @@ -Authorization in actix_web_httpauth::headers::authorization - Rust
pub struct Authorization<S: Scheme>(/* private fields */);
Expand description

Authorization header, defined in RFC 7235

+Authorization in actix_web_httpauth::headers::authorization - Rust
pub struct Authorization<S: Scheme>(/* private fields */);
Expand description

Authorization header, defined in RFC 7235

The “Authorization” header field allows a user agent to authenticate itself with an origin server—usually, but not necessarily, after receiving a 401 (Unauthorized) response. Its value consists of credentials containing the authentication information of the user agent for the @@ -45,4 +45,5 @@ operator.

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_web_httpauth/headers/authorization/struct.Basic.html b/actix_web_httpauth/headers/authorization/struct.Basic.html index b4450e4c4..7612dcf2c 100644 --- a/actix_web_httpauth/headers/authorization/struct.Basic.html +++ b/actix_web_httpauth/headers/authorization/struct.Basic.html @@ -1,4 +1,4 @@ -Basic in actix_web_httpauth::headers::authorization - Rust

Struct actix_web_httpauth::headers::authorization::Basic

source ·
pub struct Basic { /* private fields */ }
Expand description

Credentials for Basic authentication scheme, defined in RFC 7617

+Basic in actix_web_httpauth::headers::authorization - Rust

Struct actix_web_httpauth::headers::authorization::Basic

source ·
pub struct Basic { /* private fields */ }
Expand description

Credentials for Basic authentication scheme, defined in RFC 7617

Implementations§

source§

impl Basic

source

pub fn new<U, P>(user_id: U, password: Option<P>) -> Basic
where U: Into<Cow<'static, str>>, P: Into<Cow<'static, str>>,

Creates Basic credentials with provided user_id and optional @@ -32,4 +32,5 @@ operator.

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_web_httpauth/headers/authorization/struct.Bearer.html b/actix_web_httpauth/headers/authorization/struct.Bearer.html index 2add92bdb..83bce0eb4 100644 --- a/actix_web_httpauth/headers/authorization/struct.Bearer.html +++ b/actix_web_httpauth/headers/authorization/struct.Bearer.html @@ -1,4 +1,4 @@ -Bearer in actix_web_httpauth::headers::authorization - Rust

Struct actix_web_httpauth::headers::authorization::Bearer

source ·
pub struct Bearer { /* private fields */ }
Expand description

Credentials for Bearer authentication scheme, defined in RFC 6750.

+Bearer in actix_web_httpauth::headers::authorization - Rust

Struct actix_web_httpauth::headers::authorization::Bearer

source ·
pub struct Bearer { /* private fields */ }
Expand description

Credentials for Bearer authentication scheme, defined in RFC 6750.

Should be used in combination with Authorization header.

Implementations§

source§

impl Bearer

source

pub fn new<T>(token: T) -> Bearer
where T: Into<Cow<'static, str>>,

Creates new Bearer credentials with the token provided.

@@ -30,4 +30,5 @@ operator.
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_web_httpauth/headers/authorization/trait.Scheme.html b/actix_web_httpauth/headers/authorization/trait.Scheme.html index a6259d8a2..99dbd5492 100644 --- a/actix_web_httpauth/headers/authorization/trait.Scheme.html +++ b/actix_web_httpauth/headers/authorization/trait.Scheme.html @@ -1,4 +1,4 @@ -Scheme in actix_web_httpauth::headers::authorization - Rust

Trait actix_web_httpauth::headers::authorization::Scheme

source ·
pub trait Scheme: TryIntoHeaderValue + Debug + Display + Clone + Send + Sync {
+Scheme in actix_web_httpauth::headers::authorization - Rust

Trait actix_web_httpauth::headers::authorization::Scheme

source ·
pub trait Scheme: TryIntoHeaderValue + Debug + Display + Clone + Send + Sync {
     // Required method
     fn parse(header: &HeaderValue) -> Result<Self, ParseError>;
 }
Expand description

Authentication scheme for Authorization header.

diff --git a/actix_web_httpauth/headers/index.html b/actix_web_httpauth/headers/index.html index ec932ba10..1e5ca2929 100644 --- a/actix_web_httpauth/headers/index.html +++ b/actix_web_httpauth/headers/index.html @@ -1,2 +1,2 @@ -actix_web_httpauth::headers - Rust

Module actix_web_httpauth::headers

source ·
Expand description

Typed HTTP headers.

+actix_web_httpauth::headers - Rust

Module actix_web_httpauth::headers

source ·
Expand description

Typed HTTP headers.

Modules§

\ No newline at end of file diff --git a/actix_web_httpauth/headers/www_authenticate/basic/index.html b/actix_web_httpauth/headers/www_authenticate/basic/index.html index f5a4c1734..c7f734186 100644 --- a/actix_web_httpauth/headers/www_authenticate/basic/index.html +++ b/actix_web_httpauth/headers/www_authenticate/basic/index.html @@ -1,3 +1,3 @@ -actix_web_httpauth::headers::www_authenticate::basic - Rust

Module actix_web_httpauth::headers::www_authenticate::basic

source ·
Expand description

Challenge for the “Basic” HTTP Authentication Scheme.

+actix_web_httpauth::headers::www_authenticate::basic - Rust

Module actix_web_httpauth::headers::www_authenticate::basic

source ·
Expand description

Challenge for the “Basic” HTTP Authentication Scheme.

Structs§

\ No newline at end of file diff --git a/actix_web_httpauth/headers/www_authenticate/basic/struct.Basic.html b/actix_web_httpauth/headers/www_authenticate/basic/struct.Basic.html index c40ed0de5..d103ff8b1 100644 --- a/actix_web_httpauth/headers/www_authenticate/basic/struct.Basic.html +++ b/actix_web_httpauth/headers/www_authenticate/basic/struct.Basic.html @@ -1,4 +1,4 @@ -Basic in actix_web_httpauth::headers::www_authenticate::basic - Rust

Struct actix_web_httpauth::headers::www_authenticate::basic::Basic

source ·
pub struct Basic { /* private fields */ }
Expand description

Challenge for WWW-Authenticate header with HTTP Basic auth scheme, +Basic in actix_web_httpauth::headers::www_authenticate::basic - Rust

Struct actix_web_httpauth::headers::www_authenticate::basic::Basic

source ·
pub struct Basic { /* private fields */ }
Expand description

Challenge for WWW-Authenticate header with HTTP Basic auth scheme, described in RFC 7617

§Examples

use actix_web_httpauth::headers::www_authenticate::basic::Basic;
@@ -48,4 +48,5 @@ operator. 
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_web_httpauth/headers/www_authenticate/bearer/enum.Error.html b/actix_web_httpauth/headers/www_authenticate/bearer/enum.Error.html index 08c59ac74..140a4d0f5 100644 --- a/actix_web_httpauth/headers/www_authenticate/bearer/enum.Error.html +++ b/actix_web_httpauth/headers/www_authenticate/bearer/enum.Error.html @@ -1,4 +1,4 @@ -Error in actix_web_httpauth::headers::www_authenticate::bearer - Rust
pub enum Error {
+Error in actix_web_httpauth::headers::www_authenticate::bearer - Rust
pub enum Error {
     InvalidRequest,
     InvalidToken,
     InsufficientScope,
@@ -36,4 +36,5 @@ operator. 
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_web_httpauth/headers/www_authenticate/bearer/index.html b/actix_web_httpauth/headers/www_authenticate/bearer/index.html index a12ae4d85..b053f61c2 100644 --- a/actix_web_httpauth/headers/www_authenticate/bearer/index.html +++ b/actix_web_httpauth/headers/www_authenticate/bearer/index.html @@ -1,2 +1,2 @@ -actix_web_httpauth::headers::www_authenticate::bearer - Rust

Module actix_web_httpauth::headers::www_authenticate::bearer

source ·
Expand description

Challenge for the “Bearer” HTTP Authentication Scheme.

+actix_web_httpauth::headers::www_authenticate::bearer - Rust

Module actix_web_httpauth::headers::www_authenticate::bearer

source ·
Expand description

Challenge for the “Bearer” HTTP Authentication Scheme.

Structs§

Enums§

\ No newline at end of file diff --git a/actix_web_httpauth/headers/www_authenticate/bearer/struct.Bearer.html b/actix_web_httpauth/headers/www_authenticate/bearer/struct.Bearer.html index 093e3d047..8aac42510 100644 --- a/actix_web_httpauth/headers/www_authenticate/bearer/struct.Bearer.html +++ b/actix_web_httpauth/headers/www_authenticate/bearer/struct.Bearer.html @@ -1,4 +1,4 @@ -Bearer in actix_web_httpauth::headers::www_authenticate::bearer - Rust
pub struct Bearer { /* private fields */ }
Expand description

Challenge for WWW-Authenticate header with HTTP Bearer auth scheme, described in RFC 6750.

+Bearer in actix_web_httpauth::headers::www_authenticate::bearer - Rust
pub struct Bearer { /* private fields */ }
Expand description

Challenge for WWW-Authenticate header with HTTP Bearer auth scheme, described in RFC 6750.

§Examples

use actix_web_httpauth::headers::www_authenticate::bearer::{
     Bearer, Error,
@@ -51,4 +51,5 @@ operator. 
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_web_httpauth/headers/www_authenticate/bearer/struct.BearerBuilder.html b/actix_web_httpauth/headers/www_authenticate/bearer/struct.BearerBuilder.html index d8a0f02cc..24bdde2eb 100644 --- a/actix_web_httpauth/headers/www_authenticate/bearer/struct.BearerBuilder.html +++ b/actix_web_httpauth/headers/www_authenticate/bearer/struct.BearerBuilder.html @@ -1,4 +1,4 @@ -BearerBuilder in actix_web_httpauth::headers::www_authenticate::bearer - Rust
pub struct BearerBuilder(/* private fields */);
Expand description

Builder for the Bearer challenge.

+BearerBuilder in actix_web_httpauth::headers::www_authenticate::bearer - Rust
pub struct BearerBuilder(/* private fields */);
Expand description

Builder for the Bearer challenge.

It is up to implementor to fill all required fields, neither this Builder nor Bearer provide any validation.

Implementations§

source§

impl BearerBuilder

source

pub fn scope<T>(self, value: T) -> Self
where @@ -29,4 +29,5 @@ provide any validation.

V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_web_httpauth/headers/www_authenticate/index.html b/actix_web_httpauth/headers/www_authenticate/index.html index 1e84fb7a0..d02687675 100644 --- a/actix_web_httpauth/headers/www_authenticate/index.html +++ b/actix_web_httpauth/headers/www_authenticate/index.html @@ -1,2 +1,2 @@ -actix_web_httpauth::headers::www_authenticate - Rust

Module actix_web_httpauth::headers::www_authenticate

source ·
Expand description

WWW-Authenticate header and various auth challenges.

+actix_web_httpauth::headers::www_authenticate - Rust

Module actix_web_httpauth::headers::www_authenticate

source ·
Expand description

WWW-Authenticate header and various auth challenges.

Modules§

  • Challenge for the “Basic” HTTP Authentication Scheme.
  • Challenge for the “Bearer” HTTP Authentication Scheme.

Structs§

Traits§

  • Authentication challenge for WWW-Authenticate header.
\ No newline at end of file diff --git a/actix_web_httpauth/headers/www_authenticate/struct.WwwAuthenticate.html b/actix_web_httpauth/headers/www_authenticate/struct.WwwAuthenticate.html index 2ce06e953..ca30ecd5c 100644 --- a/actix_web_httpauth/headers/www_authenticate/struct.WwwAuthenticate.html +++ b/actix_web_httpauth/headers/www_authenticate/struct.WwwAuthenticate.html @@ -1,4 +1,4 @@ -WwwAuthenticate in actix_web_httpauth::headers::www_authenticate - Rust
pub struct WwwAuthenticate<C: Challenge>(pub C);
Expand description

WWW-Authenticate header, described in RFC 7235.

+WwwAuthenticate in actix_web_httpauth::headers::www_authenticate - Rust
pub struct WwwAuthenticate<C: Challenge>(pub C);
Expand description

WWW-Authenticate header, described in RFC 7235.

This header is generic over the Challenge trait, see Basic and Bearer challenges for details.

Tuple Fields§

§0: C

Trait Implementations§

source§

impl<C: Clone + Challenge> Clone for WwwAuthenticate<C>

source§

fn clone(&self) -> WwwAuthenticate<C>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<C: Debug + Challenge> Debug for WwwAuthenticate<C>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<C: Default + Challenge> Default for WwwAuthenticate<C>

source§

fn default() -> WwwAuthenticate<C>

Returns the “default value” for a type. Read more
source§

impl<C: Hash + Challenge> Hash for WwwAuthenticate<C>

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where @@ -34,4 +34,5 @@ operator.
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_web_httpauth/headers/www_authenticate/trait.Challenge.html b/actix_web_httpauth/headers/www_authenticate/trait.Challenge.html index c7be50895..7e69d9438 100644 --- a/actix_web_httpauth/headers/www_authenticate/trait.Challenge.html +++ b/actix_web_httpauth/headers/www_authenticate/trait.Challenge.html @@ -1,4 +1,4 @@ -Challenge in actix_web_httpauth::headers::www_authenticate - Rust
pub trait Challenge: TryIntoHeaderValue + Debug + Display + Clone + Send + Sync {
+Challenge in actix_web_httpauth::headers::www_authenticate - Rust
pub trait Challenge: TryIntoHeaderValue + Debug + Display + Clone + Send + Sync {
     // Required method
     fn to_bytes(&self) -> Bytes;
 }
Expand description

Authentication challenge for WWW-Authenticate header.

diff --git a/actix_web_httpauth/index.html b/actix_web_httpauth/index.html index 443b97a94..4ce68efcd 100644 --- a/actix_web_httpauth/index.html +++ b/actix_web_httpauth/index.html @@ -1,4 +1,4 @@ -actix_web_httpauth - Rust

Crate actix_web_httpauth

source ·
Expand description

HTTP authentication schemes for Actix Web.

+actix_web_httpauth - Rust

Crate actix_web_httpauth

source ·
Expand description

HTTP authentication schemes for Actix Web.

Provides:

\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_ws/all.html b/actix_ws/all.html index ba0671d83..110114081 100644 --- a/actix_ws/all.html +++ b/actix_ws/all.html @@ -1 +1 @@ -List of all items in this crate
\ No newline at end of file +List of all items in this crate
\ No newline at end of file diff --git a/actix_ws/enum.CloseCode.html b/actix_ws/enum.CloseCode.html index 3cce4cad7..2812ed8e3 100644 --- a/actix_ws/enum.CloseCode.html +++ b/actix_ws/enum.CloseCode.html @@ -1,4 +1,4 @@ -CloseCode in actix_ws - Rust

Enum actix_ws::CloseCode

pub enum CloseCode {
+CloseCode in actix_ws - Rust

Enum actix_ws::CloseCode

pub enum CloseCode {
     Normal,
     Away,
     Protocol,
@@ -46,7 +46,7 @@ it should use a randomized delay of 5-30 seconds between attempts.

§

Again

Indicates that the server is overloaded and the client should either connect to a different IP (when multiple targets exist), or reconnect to the same IP when a user has performed an action.

-

Trait Implementations§

§

impl Clone for CloseCode

§

fn clone(&self) -> CloseCode

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
§

impl Debug for CloseCode

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl From<CloseCode> for CloseReason

§

fn from(code: CloseCode) -> CloseReason

Converts to this type from the input type.
§

impl From<u16> for CloseCode

§

fn from(code: u16) -> CloseCode

Converts to this type from the input type.
§

impl PartialEq for CloseCode

§

fn eq(&self, other: &CloseCode) -> bool

This method tests for self and other values to be equal, and is used +

Trait Implementations§

§

impl Clone for CloseCode

§

fn clone(&self) -> CloseCode

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
§

impl Debug for CloseCode

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl From<CloseCode> for CloseReason

§

fn from(code: CloseCode) -> CloseReason

Converts to this type from the input type.
§

impl From<u16> for CloseCode

§

fn from(code: u16) -> CloseCode

Converts to this type from the input type.
§

impl PartialEq for CloseCode

§

fn eq(&self, other: &CloseCode) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
§

impl Copy for CloseCode

§

impl Eq for CloseCode

§

impl StructuralPartialEq for CloseCode

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where @@ -65,4 +65,5 @@ sufficient, and should not be overridden without very good reason.

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_ws/enum.Item.html b/actix_ws/enum.Item.html index a183ca47b..160537150 100644 --- a/actix_ws/enum.Item.html +++ b/actix_ws/enum.Item.html @@ -1,4 +1,4 @@ -Item in actix_ws - Rust

Enum actix_ws::Item

pub enum Item {
+Item in actix_ws - Rust

Enum actix_ws::Item

pub enum Item {
     FirstText(Bytes),
     FirstBinary(Bytes),
     Continue(Bytes),
@@ -22,4 +22,5 @@ sufficient, and should not be overridden without very good reason.
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_ws/enum.Message.html b/actix_ws/enum.Message.html index 813d3d43f..a6da46eb8 100644 --- a/actix_ws/enum.Message.html +++ b/actix_ws/enum.Message.html @@ -1,4 +1,4 @@ -Message in actix_ws - Rust

Enum actix_ws::Message

pub enum Message {
+Message in actix_ws - Rust

Enum actix_ws::Message

pub enum Message {
     Text(ByteString),
     Binary(Bytes),
     Continuation(Item),
@@ -32,4 +32,5 @@ sufficient, and should not be overridden without very good reason.
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_ws/enum.ProtocolError.html b/actix_ws/enum.ProtocolError.html index f67eb34eb..923bbdcdd 100644 --- a/actix_ws/enum.ProtocolError.html +++ b/actix_ws/enum.ProtocolError.html @@ -1,4 +1,4 @@ -ProtocolError in actix_ws - Rust

Enum actix_ws::ProtocolError

pub enum ProtocolError {
+ProtocolError in actix_ws - Rust

Enum actix_ws::ProtocolError

pub enum ProtocolError {
     UnmaskedFrame,
     MaskedFrame,
     InvalidOpcode(u8),
@@ -23,7 +23,7 @@
 

Trait Implementations§

§

impl Debug for ProtocolError

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl Display for ProtocolError

§

fn fmt( &self, _derive_more_display_formatter: &mut Formatter<'_>, -) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl Error for ProtocolError

§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
§

impl From<Error> for ProtocolError

§

fn from(original: Error) -> ProtocolError

Converts to this type from the input type.
§

impl From<OpCode> for ProtocolError

§

fn from(original: OpCode) -> ProtocolError

Converts to this type from the input type.
§

impl From<u8> for ProtocolError

§

fn from(original: u8) -> ProtocolError

Converts to this type from the input type.
§

impl From<usize> for ProtocolError

§

fn from(original: usize) -> ProtocolError

Converts to this type from the input type.
§

impl ResponseError for ProtocolError

§

fn status_code(&self) -> StatusCode

Returns appropriate status code for error. Read more
§

fn error_response(&self) -> HttpResponse

Creates full response for error. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl Error for ProtocolError

§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
§

impl From<Error> for ProtocolError

§

fn from(original: Error) -> ProtocolError

Converts to this type from the input type.
§

impl From<OpCode> for ProtocolError

§

fn from(original: OpCode) -> ProtocolError

Converts to this type from the input type.
§

impl From<u8> for ProtocolError

§

fn from(original: u8) -> ProtocolError

Converts to this type from the input type.
§

impl From<usize> for ProtocolError

§

fn from(original: usize) -> ProtocolError

Converts to this type from the input type.
§

impl ResponseError for ProtocolError

§

fn status_code(&self) -> StatusCode

Returns appropriate status code for error. Read more
§

fn error_response(&self) -> HttpResponse

Creates full response for error. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

@@ -40,4 +40,5 @@ V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_ws/fn.handle.html b/actix_ws/fn.handle.html index 8c335439e..d13e03f74 100644 --- a/actix_ws/fn.handle.html +++ b/actix_ws/fn.handle.html @@ -1,4 +1,4 @@ -handle in actix_ws - Rust

Function actix_ws::handle

source ·
pub fn handle(
+handle in actix_ws - Rust

Function actix_ws::handle

source ·
pub fn handle(
     req: &HttpRequest,
     body: Payload,
 ) -> Result<(HttpResponse, Session, MessageStream), Error>
Expand description

Begin handling websocket traffic

diff --git a/actix_ws/index.html b/actix_ws/index.html index 0548973d1..b6ddd662d 100644 --- a/actix_ws/index.html +++ b/actix_ws/index.html @@ -1,3 +1,3 @@ -actix_ws - Rust

Crate actix_ws

source ·
Expand description

WebSockets for Actix Web, without actors.

+actix_ws - Rust

Crate actix_ws

source ·
Expand description

WebSockets for Actix Web, without actors.

For usage, see documentation on handle().

Structs§

  • Reason for closing the connection
  • The error representing a closed websocket session
  • A stream of Messages from a websocket client
  • A handle into the websocket session.
  • A response body for Websocket HTTP Requests

Enums§

  • Status code used to indicate why an endpoint is closing the WebSocket connection.
  • A WebSocket continuation item.
  • A WebSocket message.
  • WebSocket protocol errors.

Functions§

  • Begin handling websocket traffic
\ No newline at end of file diff --git a/actix_ws/struct.CloseReason.html b/actix_ws/struct.CloseReason.html index 0d9c4ff58..b006cbe7a 100644 --- a/actix_ws/struct.CloseReason.html +++ b/actix_ws/struct.CloseReason.html @@ -1,11 +1,11 @@ -CloseReason in actix_ws - Rust

Struct actix_ws::CloseReason

pub struct CloseReason {
+CloseReason in actix_ws - Rust

Struct actix_ws::CloseReason

pub struct CloseReason {
     pub code: CloseCode,
     pub description: Option<String>,
 }
Expand description

Reason for closing the connection

Fields§

§code: CloseCode

Exit code

§description: Option<String>

Optional description of the exit code

Trait Implementations§

§

impl Clone for CloseReason

§

fn clone(&self) -> CloseReason

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
§

impl Debug for CloseReason

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl<T> From<(CloseCode, T)> for CloseReason
where - T: Into<String>,

§

fn from(info: (CloseCode, T)) -> CloseReason

Converts to this type from the input type.
§

impl From<CloseCode> for CloseReason

§

fn from(code: CloseCode) -> CloseReason

Converts to this type from the input type.
§

impl PartialEq for CloseReason

§

fn eq(&self, other: &CloseReason) -> bool

This method tests for self and other values to be equal, and is used + T: Into<String>,
§

fn from(info: (CloseCode, T)) -> CloseReason

Converts to this type from the input type.
§

impl From<CloseCode> for CloseReason

§

fn from(code: CloseCode) -> CloseReason

Converts to this type from the input type.
§

impl PartialEq for CloseReason

§

fn eq(&self, other: &CloseReason) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
§

impl Eq for CloseReason

§

impl StructuralPartialEq for CloseReason

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where @@ -24,4 +24,5 @@ sufficient, and should not be overridden without very good reason.

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_ws/struct.Closed.html b/actix_ws/struct.Closed.html index 3d78879f2..56f5d2b96 100644 --- a/actix_ws/struct.Closed.html +++ b/actix_ws/struct.Closed.html @@ -1,4 +1,4 @@ -Closed in actix_ws - Rust

Struct actix_ws::Closed

source ·
pub struct Closed;
Expand description

The error representing a closed websocket session

+Closed in actix_ws - Rust

Struct actix_ws::Closed

source ·
pub struct Closed;
Expand description

The error representing a closed websocket session

Trait Implementations§

source§

impl Debug for Closed

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for Closed

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Closed

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more

Auto Trait Implementations§

§

impl Freeze for Closed

§

impl RefUnwindSafe for Closed

§

impl Send for Closed

§

impl Sync for Closed

§

impl Unpin for Closed

§

impl UnwindSafe for Closed

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where @@ -16,4 +16,5 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_ws/struct.MessageStream.html b/actix_ws/struct.MessageStream.html index 11414daf1..24ce2fb9b 100644 --- a/actix_ws/struct.MessageStream.html +++ b/actix_ws/struct.MessageStream.html @@ -1,4 +1,4 @@ -MessageStream in actix_ws - Rust

Struct actix_ws::MessageStream

source ·
pub struct MessageStream { /* private fields */ }
Expand description

A stream of Messages from a websocket client

+MessageStream in actix_ws - Rust

Struct actix_ws::MessageStream

source ·
pub struct MessageStream { /* private fields */ }
Expand description

A stream of Messages from a websocket client

Messages can be accessed via the stream’s .next() method

Implementations§

source§

impl MessageStream

source

pub async fn recv(&mut self) -> Option<Result<Message, ProtocolError>>

Wait for the next item from the message stream

@@ -258,4 +258,5 @@ that satisfies the predicate. Read more
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_ws/struct.Session.html b/actix_ws/struct.Session.html index d332dd5b8..925fdae62 100644 --- a/actix_ws/struct.Session.html +++ b/actix_ws/struct.Session.html @@ -1,4 +1,4 @@ -Session in actix_ws - Rust

Struct actix_ws::Session

source ·
pub struct Session { /* private fields */ }
Expand description

A handle into the websocket session.

+Session in actix_ws - Rust

Struct actix_ws::Session

source ·
pub struct Session { /* private fields */ }
Expand description

A handle into the websocket session.

This type can be used to send messages into the websocket.

Implementations§

source§

impl Session

source

pub async fn text(&mut self, msg: impl Into<ByteString>) -> Result<(), Closed>

Send text into the websocket

@@ -58,4 +58,5 @@ session.continuation(Item::Last(b"!"[..].into())).
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/actix_ws/struct.StreamingBody.html b/actix_ws/struct.StreamingBody.html index 2a8dad8d2..973105726 100644 --- a/actix_ws/struct.StreamingBody.html +++ b/actix_ws/struct.StreamingBody.html @@ -1,4 +1,4 @@ -StreamingBody in actix_ws - Rust

Struct actix_ws::StreamingBody

source ·
pub struct StreamingBody { /* private fields */ }
Expand description

A response body for Websocket HTTP Requests

+StreamingBody in actix_ws - Rust

Struct actix_ws::StreamingBody

source ·
pub struct StreamingBody { /* private fields */ }
Expand description

A response body for Websocket HTTP Requests

Trait Implementations§

source§

impl Stream for StreamingBody

§

type Item = Result<Bytes, Error>

Values yielded by the stream.
source§

fn poll_next( self: Pin<&mut Self>, cx: &mut Context<'_>, @@ -252,4 +252,5 @@ that satisfies the predicate. Read more

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/help.html b/help.html index e458d41a4..d07dbff81 100644 --- a/help.html +++ b/help.html @@ -1 +1 @@ -Help

Rustdoc help

Back
\ No newline at end of file +Help

Rustdoc help

Back
\ No newline at end of file diff --git a/search-index.js b/search-index.js index d06a6cea2..53f2022ae 100644 --- a/search-index.js +++ b/search-index.js @@ -1,12 +1,12 @@ var searchIndex = new Map(JSON.parse('[\ ["actix_cors",{"t":"PPFGEPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["BadRequestHeaders","BadRequestMethod","Cors","CorsError","CorsMiddleware","HeadersNotAllowed","MethodNotAllowed","MissingOrigin","MissingRequestMethod","OriginNotAllowed","WildcardOrigin","allow_any_header","allow_any_method","allow_any_origin","allow_private_network_access","allowed_header","allowed_headers","allowed_methods","allowed_origin","allowed_origin_fn","block_on_origin_mismatch","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","default","disable_preflight","disable_vary_header","error_response","expose_any_header","expose_headers","fmt","fmt","fmt","from","from","into","into","max_age","new_transform","permissive","send_wildcard","status_code","supports_credentials","to_owned","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"actix_cors"],[56,"actix_cors::builder"],[57,"http::header::name"],[58,"core::convert"],[59,"core::iter::traits::collect"],[60,"http::method"],[61,"http::header::value"],[62,"actix_http::requests::head"],[63,"core::ops::function"],[64,"actix_cors::error"],[65,"actix_web::response::response"],[66,"core::fmt"],[67,"core::option"],[68,"actix_http::body::message_body"],[69,"actix_web::service"],[70,"actix_web::error::error"],[71,"actix_service"],[72,"http::status"],[73,"alloc::string"],[74,"core::result"],[75,"core::any"],[76,"actix_cors::middleware"]],"i":[15,15,0,0,0,15,15,15,15,15,15,1,1,1,1,1,1,1,1,1,1,1,15,1,15,15,15,1,1,1,15,1,1,1,15,15,1,15,1,15,1,1,1,1,15,1,15,15,1,15,1,15,1,15,1,15],"f":"```````````{bb}000{{bc}b{{f{d}}}}{{be}b{{f{d}}}{{j{}{{h{c}}}}}}{{be}b{{f{l}}}{{j{}{{h{c}}}}}}{{b{A`{n}}}b}{{bc}b{{Aj{{A`{Ab}}{A`{Ad}}}{{Af{Ah}}}}}}{{bAh}b}{{{A`{c}}}{{A`{e}}}{}{}}0{{{A`{Alc}}}{{A`{Ale}}}{}{}}0{{{A`{An}}}An}{{{A`{c}}{A`{Ale}}}B`{}{}}{{}b};;{{{A`{An}}}Bb}<:{{{A`{b}}{A`{AlBd}}}Bf}{{{A`{An}}{A`{AlBd}}}Bf}0{cc{}}0{ce{}{}}0{{bc}b{{Bl{{Bj{Bh}}}}}}{{{A`{b}}e}gBn{{Cj{C`}{{Cb{{Cd{c}}}}{Cf{Ch}}}}}{}}7{bb}{{{A`{An}}}Cl}1{{{A`{c}}}e{}{}}{{{A`{c}}}Cn{}}{c{{D`{e}}}{}{}}000{{{A`{c}}}Db{}}088","D":"Dd","p":[[5,"Cors",0,56],[5,"HeaderName",57],[10,"TryInto",58],[17,"Item"],[10,"IntoIterator",59],[5,"Method",60],[1,"str"],[1,"reference"],[5,"HeaderValue",61],[5,"RequestHead",62],[17,"Output"],[1,"bool"],[10,"Fn",63],[0,"mut"],[6,"CorsError",0,64],[1,"unit"],[5,"HttpResponse",65],[5,"Formatter",66],[8,"Result",66],[1,"usize"],[6,"Option",67],[10,"Into",58],[10,"MessageBody",68],[5,"ServiceRequest",69],[17,"Response"],[5,"ServiceResponse",69],[17,"Error"],[5,"Error",70],[10,"Service",71],[5,"StatusCode",72],[5,"String",73],[6,"Result",74],[5,"TypeId",75]],"r":[[2,56],[3,64],[4,76]],"b":[[34,"impl-Display-for-CorsError"],[35,"impl-Debug-for-CorsError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABYABwAFAAAAFgAFAB8AAAAiAAIAKgAAAC0AAAAvAAkA"}],\ -["actix_identity",{"t":"FKFNNNNNNNCNCNNNMNNNNNNNNNNNNNNNPFGPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNGFFPFPFPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Identity","IdentityExt","IdentityMiddleware","borrow","borrow","borrow_mut","borrow_mut","builder","clone","clone_into","config","default","error","from","from","from_request","get_identity","id","into","into","login","logout","new_transform","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","DeleteIdentityKeys","IdentityMiddlewareBuilder","LogoutBehaviour","PurgeSession","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone","clone_into","clone_into","fmt","fmt","from","from","id_key","into","into","last_visit_unix_timestamp_key","login_deadline","login_unix_timestamp_key","logout_behaviour","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","visit_deadline","vzip","vzip","GetIdentityError","LoginError","LostIdentityError","LostIdentityError","MissingIdentityError","MissingIdentityError","SessionExpiryError","SessionExpiryError","SessionGetError","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","into","into","into","into","into","source","source","status_code","status_code","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip"],"q":[[0,"actix_identity"],[32,"actix_identity::config"],[67,"actix_identity::error"],[140,"actix_identity::middleware"],[141,"actix_web::request"],[142,"actix_http::payload"],[143,"actix_identity::identity_ext"],[144,"actix_identity::identity"],[145,"core::result"],[146,"alloc::string"],[147,"actix_http::extensions"],[148,"actix_http::body::message_body"],[149,"actix_web::service"],[150,"actix_web::error::error"],[151,"actix_service"],[152,"core::any"],[153,"core::fmt"],[154,"core::time"],[155,"core::option"],[156,"actix_session::session"],[157,"core::error"],[158,"http::status"]],"i":[0,0,0,9,4,9,4,4,4,4,0,4,0,9,4,9,8,9,9,4,9,9,4,4,9,4,9,4,9,4,9,4,23,0,0,23,23,3,23,3,3,23,3,23,3,23,3,23,3,3,23,3,3,3,3,3,23,3,23,3,23,3,23,3,3,23,3,0,0,0,10,0,10,0,10,10,14,29,30,31,10,14,29,30,31,10,14,14,29,29,30,30,31,31,10,10,14,14,29,30,31,10,10,10,10,10,14,29,30,31,10,14,10,14,10,14,29,30,31,10,14,29,30,31,10,14,29,30,31,10,14,29,30,31,10,14,29,30,31,10],"f":"```{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}f}{{{b{h}}}h}{{{b{c}}{b{de}}}j{}{}}`{{}h}`{cc{}}0{{{b{l}}{b{dn}}}c{}}{{{b{A`}}}{{Af{AbAd}}}}{{{b{Ab}}}{{Af{AhAd}}}}{ce{}{}}0{{{b{Aj}}Ah}{{Af{AbAl}}}}{Abj}{{{b{h}}e}gAn{{Bj{B`}{{Bb{{Bd{c}}}}{Bf{Bh}}}}}{}}{{{b{c}}}e{}{}}{c{{Af{e}}}{}{}}000{{{b{c}}}Bl{}}066````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{fh}{{{b{Bn}}}Bn}{{{b{f}}}f}{{{b{c}}{b{de}}}j{}{}}0{{{b{Bn}}{b{dC`}}}Cb}{{{b{f}}{b{dC`}}}Cb}{cc{}}0{{f{b{Cd}}}f}{ce{}{}}01{{f{Ch{Cf}}}f}2{{fBn}f}??>>>>==122`````````<<<<<;;;;;{{{b{Al}}{b{dC`}}}Cb}0{{{b{Cj}}{b{dC`}}}Cb}0{{{b{Cl}}{b{dC`}}}Cb}0{{{b{Cn}}{b{dC`}}}Cb}0{{{b{Ad}}{b{dC`}}}Cb}09{D`Al}:::{ClAd}{DbAd}{CjAd}{CnAd}><<<<<{{{b{Al}}}{{Ch{{b{Dd}}}}}}{{{b{Ad}}}{{Ch{{b{Dd}}}}}}{{{b{Al}}}Df}{{{b{Ad}}}Df}{{{b{c}}}Ah{}}0000{c{{Af{e}}}{}{}}000000000{{{b{c}}}Bl{}}0000{ce{}{}}0000","D":"Fb","p":[[1,"reference"],[0,"mut"],[5,"IdentityMiddlewareBuilder",32],[5,"IdentityMiddleware",0,140],[1,"unit"],[5,"HttpRequest",141],[6,"Payload",142],[10,"IdentityExt",0,143],[5,"Identity",0,144],[6,"GetIdentityError",67],[6,"Result",145],[5,"String",146],[5,"Extensions",147],[5,"LoginError",67],[10,"MessageBody",148],[5,"ServiceRequest",149],[17,"Response"],[5,"ServiceResponse",149],[17,"Error"],[5,"Error",150],[10,"Service",151],[5,"TypeId",152],[6,"LogoutBehaviour",32],[5,"Formatter",153],[8,"Result",153],[1,"str"],[5,"Duration",154],[6,"Option",155],[5,"SessionExpiryError",67],[5,"LostIdentityError",67],[5,"MissingIdentityError",67],[5,"SessionInsertError",156],[5,"SessionGetError",156],[10,"Error",157],[5,"StatusCode",158]],"r":[[0,144],[1,143],[2,140]],"b":[[86,"impl-Debug-for-LoginError"],[87,"impl-Display-for-LoginError"],[88,"impl-Display-for-SessionExpiryError"],[89,"impl-Debug-for-SessionExpiryError"],[90,"impl-Display-for-LostIdentityError"],[91,"impl-Debug-for-LostIdentityError"],[92,"impl-Debug-for-MissingIdentityError"],[93,"impl-Display-for-MissingIdentityError"],[94,"impl-Display-for-GetIdentityError"],[95,"impl-Debug-for-GetIdentityError"],[101,"impl-From%3CLostIdentityError%3E-for-GetIdentityError"],[102,"impl-From%3CSessionGetError%3E-for-GetIdentityError"],[103,"impl-From%3CSessionExpiryError%3E-for-GetIdentityError"],[104,"impl-From%3CMissingIdentityError%3E-for-GetIdentityError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAFsADQAEAAMACQABAAwAAAAQAAAAFwAJACUAAwAqAAUAOQAHAEIAAQBNABMAYgAAAGYAAwBwABwA"}],\ -["actix_limitation",{"t":"FPSSSSGPFPFFPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Builder","Client","DEFAULT_COOKIE_NAME","DEFAULT_PERIOD_SECS","DEFAULT_REQUEST_LIMIT","DEFAULT_SESSION_KEY","Error","LimitExceeded","Limiter","Other","RateLimiter","Status","Time","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","builder","clone","clone","clone_into","clone_into","cookie_name","count","default","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","into","into","into","into","into","key_by","limit","limit","new_transform","period","remaining","reset_epoch_utc","session_key","source","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip"],"q":[[0,"actix_limitation"],[82,"actix_limitation::builder"],[83,"actix_limitation::errors"],[84,"core::result"],[85,"alloc::string"],[86,"core::convert"],[87,"actix_limitation::status"],[88,"alloc::borrow"],[89,"actix_limitation::middleware"],[90,"core::fmt"],[91,"redis::types"],[92,"time::error::component_range"],[93,"actix_web::service"],[94,"core::option"],[95,"core::ops::function"],[96,"core::marker"],[97,"actix_web::error::error"],[98,"actix_service"],[99,"core::time"],[100,"core::error"],[101,"core::any"]],"i":[0,5,0,0,0,0,0,5,0,5,0,0,5,3,5,13,9,4,3,5,13,9,4,3,4,9,4,9,4,3,4,13,3,5,5,13,9,4,3,5,5,5,13,9,4,3,5,13,9,4,3,3,9,13,3,9,9,3,5,9,4,5,3,5,13,9,4,3,5,13,9,4,3,5,13,9,4,3,5,13,9,4],"f":"`````````````{{{b{c}}}{{b{e}}}{}{}}0000{{{b{dc}}}{{b{de}}}{}{}}0000{{{b{df}}}{{l{hj}}}}{cf{{A`{n}}}}{{{b{Ab}}}Ab}{{{b{h}}}h}{{{b{c}}{b{de}}}Ad{}{}}0{{{b{df}}c}{{b{df}}}{{A`{{Ah{Af}}}}}}{{{b{h}}c}{{l{Abj}}}{{A`{n}}}}{{}Aj}{{{b{f}}{b{dAl}}}An}{{{b{j}}{b{dAl}}}An}0{{{b{Aj}}{b{dAl}}}An}{{{b{Ab}}{b{dAl}}}An}{{{b{h}}{b{dAl}}}An}{cc{}}{B`j}{Bbj}2222{ce{}{}}0000{{{b{df}}c}{{b{df}}}{{Bj{{b{Bd}}}{{Bf{{Bh{n}}}}}}BlBn}}{{{b{df}}C`}{{b{df}}}}{{{b{Ab}}}C`}{{{b{Aj}}e}g{}{{Cj{Bd}{{Cb{{Cd{c}}}}{Cf{Ch}}}}}{}}{{{b{df}}Cl}{{b{df}}}}22{{{b{df}}c}{{b{df}}}{{A`{{Ah{Af}}}}}}{{{b{j}}}{{Bh{{b{Cn}}}}}}{{{b{c}}}e{}{}}0{{{b{c}}}n{}}{c{{l{e}}}{}{}}000000000{{{b{c}}}D`{}}0000;;;;;","D":"Df","p":[[1,"reference"],[0,"mut"],[5,"Builder",0,82],[5,"Limiter",0],[6,"Error",0,83],[6,"Result",84],[5,"String",85],[10,"Into",86],[5,"Status",0,87],[1,"unit"],[1,"str"],[6,"Cow",88],[5,"RateLimiter",0,89],[5,"Formatter",90],[8,"Result",90],[5,"RedisError",91],[5,"ComponentRange",92],[5,"ServiceRequest",93],[17,"Output"],[6,"Option",94],[10,"Fn",95],[10,"Send",96],[10,"Sync",96],[1,"usize"],[17,"Response"],[5,"ServiceResponse",93],[17,"Error"],[5,"Error",97],[10,"Service",98],[5,"Duration",99],[10,"Error",100],[5,"TypeId",101]],"r":[[0,82],[6,83],[10,89],[11,87]],"b":[[33,"impl-Display-for-Error"],[34,"impl-Debug-for-Error"],[39,"impl-From%3CRedisError%3E-for-Error"],[40,"impl-From%3CComponentRange%3E-for-Error"]],"c":"OjAAAAEAAAAAAAEAEAAAAB4AOgA=","e":"OzAAAAEAAC8ABgAOAAkAGgADACAABgAoAAEANgAAADsAFwA="}],\ -["actix_protobuf",{"t":"PPPPFFFGKPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNN","n":["ContentType","Deserialize","Overflow","Payload","ProtoBuf","ProtoBufConfig","ProtoBufMessage","ProtoBufPayloadError","ProtoBufResponseBuilder","Serialize","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","default","deref","deref_mut","error_response","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from_request","into","into","into","into","into_future","limit","limit","new","poll","protobuf","respond_to","to_string","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_poll","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip"],"q":[[0,"actix_protobuf"],[63,"prost::message"],[64,"actix_web::response::response"],[65,"core::fmt"],[66,"actix_http::error"],[67,"prost::error"],[68,"actix_web::request"],[69,"actix_http::payload"],[70,"core::default"],[71,"core::pin"],[72,"core::task::wake"],[73,"core::task::poll"],[74,"actix_web::error::error"],[75,"core::result"],[76,"alloc::string"],[77,"core::any"]],"i":[6,6,6,6,0,0,0,0,0,6,4,3,17,6,4,3,17,6,3,4,4,6,4,4,6,6,4,3,17,6,6,6,4,4,3,17,6,17,3,17,17,17,22,4,4,6,4,3,17,6,4,3,17,6,17,4,3,17,6,4,3,17,6],"f":"``````````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000{{}f}{{{b{{h{c}}}}}{{b{c}}}j}{{{b{d{h{c}}}}}{{b{dc}}}j}{{{b{l}}}n}{{{b{{h{c}}}}{b{dA`}}}Ab{Adj}}{{{b{{h{c}}}}{b{dA`}}}Ab{Afj}}{{{b{l}}{b{dA`}}}Ab}0{cc{}}00{Ahl}{Ajl}2{{{b{Al}}{b{dAn}}}c{}}{ce{}{}}000{c{}{}}{{{b{df}}B`}{{b{df}}}}{{{Bb{c}}B`}{{Bb{c}}}{jBd}}{{{b{Al}}{b{dAn}}}{{Bb{c}}}{jBd}}{{{Bf{{b{d{Bb{c}}}}}}{b{dBh}}}{{Bj{e}}}{jBd}{}}{{{b{dBl}}c}{{C`{nBn}}}j}{{{h{c}}{b{Al}}}n{jBd}}{{{b{c}}}Cb{}}0{c{{C`{e}}}{}{}}0000000{{{Bf{{b{dc}}}}{b{dBh}}}Bj{}}{{{b{c}}}Cd{}}000;;;;","D":"Bb","p":[[1,"reference"],[0,"mut"],[5,"ProtoBufConfig",0],[5,"ProtoBuf",0],[10,"Message",63],[6,"ProtoBufPayloadError",0],[5,"HttpResponse",64],[5,"Formatter",65],[8,"Result",65],[10,"Debug",65],[10,"Display",65],[6,"PayloadError",66],[5,"DecodeError",67],[5,"HttpRequest",68],[6,"Payload",69],[1,"usize"],[5,"ProtoBufMessage",0],[10,"Default",70],[5,"Pin",71],[5,"Context",72],[6,"Poll",73],[10,"ProtoBufResponseBuilder",0],[5,"Error",74],[6,"Result",75],[5,"String",76],[5,"TypeId",77]],"r":[],"b":[[22,"impl-Debug-for-ProtoBuf%3CT%3E"],[23,"impl-Display-for-ProtoBuf%3CT%3E"],[24,"impl-Display-for-ProtoBufPayloadError"],[25,"impl-Debug-for-ProtoBufPayloadError"],[29,"impl-From%3CPayloadError%3E-for-ProtoBufPayloadError"],[30,"impl-From%3CDecodeError%3E-for-ProtoBufPayloadError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABgAFAAQACwAPAB4AAQAhAAAAJgAAACoAFQA="}],\ -["actix_session",{"t":"PPPFKFFFGPNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNFPGPPFPPGFPGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFPGPPPFFGPPFKGNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNMNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNMNNNNNNNNN","n":["Changed","Purged","Renewed","Session","SessionExt","SessionGetError","SessionInsertError","SessionMiddleware","SessionStatus","Unchanged","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","clear","clone","clone","clone","clone_into","clone_into","clone_into","config","default","entries","eq","error_response","error_response","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from_request","get","get_session","insert","into","into","into","into","into","new","new_transform","purge","remove","remove_as","renew","source","source","status","storage","to_owned","to_owned","to_owned","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","BrowserSession","BrowserSession","CookieContentSecurity","OnEveryRequest","OnStateChanges","PersistentSession","PersistentSession","Private","SessionLifecycle","SessionMiddlewareBuilder","Signed","TtlExtensionPolicy","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cookie_content_security","cookie_domain","cookie_http_only","cookie_name","cookie_path","cookie_same_site","cookie_secure","default","default","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","into","into","into","into","into","into","session_lifecycle","session_ttl","session_ttl_extension_policy","state_ttl","state_ttl_extension_policy","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","CookieSessionStore","Deserialization","LoadError","Other","Other","Other","RedisSessionStore","RedisSessionStoreBuilder","SaveError","Serialization","Serialization","SessionKey","SessionStore","UpdateError","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_keygen","clone","clone_into","default","delete","delete","delete","eq","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","into","into","into","into","into","into","into","load","load","load","new","save","save","save","source","source","source","to_owned","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update","update","update","update_ttl","update_ttl","update_ttl","vzip","vzip","vzip","vzip","vzip","vzip","vzip"],"q":[[0,"actix_session"],[90,"actix_session::config"],[187,"actix_session::storage"],[296,"cookie::secure::key"],[297,"actix_session::storage::interface"],[298,"actix_session::session"],[299,"actix_session::middleware"],[300,"core::clone"],[301,"alloc::string"],[302,"std::collections::hash::map"],[303,"core::cell"],[304,"actix_http::body::boxed"],[305,"actix_web::response::response"],[306,"core::fmt"],[307,"anyhow"],[308,"actix_web::request"],[309,"actix_http::payload"],[310,"core::option"],[311,"core::result"],[312,"serde::de"],[313,"actix_session::session_ext"],[314,"core::convert"],[315,"serde::ser"],[316,"actix_http::body::message_body"],[317,"actix_web::service"],[318,"actix_web::error::error"],[319,"actix_service"],[320,"core::error"],[321,"core::any"],[322,"cookie::draft"],[323,"time::duration"],[324,"actix_session::storage::session_key"],[325,"actix_session::storage::redis_rs"],[326,"core::ops::function"],[327,"core::marker"],[328,"actix_session::storage::cookie"],[329,"core::future::future"]],"i":[10,10,10,0,0,0,0,0,0,10,8,6,10,15,18,8,6,10,15,18,8,6,8,6,10,8,6,10,0,10,6,10,15,18,10,15,15,18,18,8,6,10,15,15,18,18,6,6,28,6,8,6,10,15,18,8,8,6,6,6,6,15,18,6,0,8,6,10,15,18,8,6,10,15,18,8,6,10,15,18,8,6,10,15,18,8,6,10,15,18,0,40,0,43,43,0,40,44,0,0,44,0,4,40,41,42,43,44,4,40,41,42,43,44,4,40,41,42,43,44,40,41,42,43,44,4,4,4,4,4,4,4,41,42,40,41,42,43,44,4,40,40,40,41,42,43,44,4,40,41,42,43,44,4,42,42,41,41,40,41,42,43,44,4,40,41,42,43,44,4,40,41,42,43,44,4,40,41,42,43,44,4,40,41,42,43,44,0,56,0,56,57,58,0,0,0,57,58,0,0,0,47,48,56,57,58,47,54,49,48,56,57,58,47,54,49,48,49,48,49,49,54,5,54,49,47,56,56,57,57,58,58,47,48,56,57,58,47,54,49,48,56,57,58,47,54,49,5,54,49,49,5,54,49,56,57,58,49,56,57,58,48,56,57,58,47,47,54,49,48,56,57,58,47,54,49,48,56,57,58,47,54,49,5,54,49,5,54,49,48,56,57,58,47,54,49],"f":"``````````{{{b{c}}}{{b{e}}}{}{}}0000{{{b{dc}}}{{b{de}}}{}{}}0000{{cf}{{h{c}}}j}{{{b{l}}}n}{{{b{{A`{c}}}}}{{A`{c}}}{Abj}}{{{b{l}}}l}{{{b{Ad}}}Ad}{{{b{c}}{b{de}}}n{}{}}00`{{}Ad}{{{b{l}}}{{Aj{{Ah{AfAf}}}}}}{{{b{Ad}}{b{Ad}}}Al}{{{b{An}}}{{Bb{B`}}}}{{{b{Bd}}}{{Bb{B`}}}}{{{b{Ad}}{b{dBf}}}Bh}{{{b{An}}{b{dBf}}}Bh}0{{{b{Bd}}{b{dBf}}}Bh}0{cc{}}00{BjAn}1{BjBd}2{{{b{Bl}}{b{dBn}}}c{}}{{{b{l}}{b{C`}}}{{Cd{{Cb{c}}An}}}Cf}{{{b{Ch}}}l}{{{b{l}}ce}{{Cd{nBd}}}{{Cj{Af}}}Cl}{ce{}{}}0000{{cf}{{A`{c}}}j}{{{b{{A`{c}}}}g}ijCn{{Dj{D`}{{Db{{Dd{e}}}}{Df{Dh}}}}}{}}{{{b{l}}}n}{{{b{l}}{b{C`}}}{{Cb{Af}}}}{{{b{l}}{b{C`}}}{{Cb{{Cd{cAf}}}}}Cf}2{{{b{An}}}{{Cb{{b{Dl}}}}}}{{{b{Bd}}}{{Cb{{b{Dl}}}}}}{{{b{l}}}Ad}`{{{b{c}}}e{}{}}00{{{b{c}}}Af{}}0{c{{Cd{e}}}{}{}}000000000{{{b{c}}}Dn{}}0000<<<<<````````````{{{b{c}}}{{b{e}}}{}{}}00000{{{b{dc}}}{{b{de}}}{}{}}00000{{{h{c}}}{{A`{c}}}j}{{{b{E`}}}E`}{{{b{Eb}}}Eb}{{{b{Ed}}}Ed}{{{b{Ef}}}Ef}{{{b{Eh}}}Eh}{{{b{c}}{b{de}}}n{}{}}0000{{{h{c}}Eh}{{h{c}}}j}{{{h{c}}{Cb{Af}}}{{h{c}}}j}{{{h{c}}Al}{{h{c}}}j}{{{h{c}}Af}{{h{c}}}j}0{{{h{c}}Ej}{{h{c}}}j}2{{}Eb}{{}Ed}{{{b{E`}}{b{dBf}}}Bh}{{{b{Eb}}{b{dBf}}}Bh}{{{b{Ed}}{b{dBf}}}Bh}{{{b{Ef}}{b{dBf}}}Bh}{{{b{Eh}}{b{dBf}}}Bh}{cc{}}{EdE`}{EbE`}22222{ce{}{}}00000{{{h{c}}e}{{h{c}}}j{{Cj{E`}}}}{{EdEl}Ed}{{EdEf}Ed}{{EbEl}Eb}{{EbEf}Eb}{{{b{c}}}e{}{}}0000{c{{Cd{e}}}{}{}}00000000000{{{b{c}}}Dn{}}00000888888``````````````{{{b{En}}}{{b{C`}}}}{{{b{c}}}{{b{e}}}{}{}}000000{{{b{dc}}}{{b{de}}}{}{}}000000{F`{{Cd{FbBj}}}}{cF`{{Cj{Af}}}}{{F`c}F`{{Ff{{b{C`}}}{{Fd{Af}}}}FhFj}}{{{b{Fb}}}Fb}{{{b{c}}{b{de}}}n{}{}}{{}Fl}{{{b{j}}{b{En}}}{{`{{Fn{}{{Fd{{Cd{nBj}}}}}}}}}}{{{b{Fl}}{b{En}}}{{Cd{nBj}}}}{{{b{Fb}}{b{En}}}{{Cd{nBj}}}}{{{b{En}}{b{En}}}Al}{{{b{G`}}{b{dBf}}}Bh}0{{{b{Gb}}{b{dBf}}}Bh}0{{{b{Gd}}{b{dBf}}}Bh}0{{{b{En}}{b{dBf}}}Bh}{cc{}}000000{ce{}{}}000000{{{b{j}}{b{En}}}{{`{{Fn{}{{Fd{{Cd{{Cb{{Ah{AfAf}}}}G`}}}}}}}}}}{{{b{Fl}}{b{En}}}{{Cd{{Cb{{Ah{AfAf}}}}G`}}}}{{{b{Fb}}{b{En}}}{{Cd{{Cb{{Ah{AfAf}}}}G`}}}}{c{{Cd{FbBj}}}{{Cj{Af}}}}{{{b{j}}{Ah{AfAf}}{b{El}}}{{`{{Fn{}{{Fd{{Cd{EnGb}}}}}}}}}}{{{b{Fl}}{Ah{AfAf}}{b{El}}}{{Cd{EnGb}}}}{{{b{Fb}}{Ah{AfAf}}{b{El}}}{{Cd{EnGb}}}}{{{b{G`}}}{{Cb{{b{Dl}}}}}}{{{b{Gb}}}{{Cb{{b{Dl}}}}}}{{{b{Gd}}}{{Cb{{b{Dl}}}}}}{{{b{c}}}e{}{}}{{{b{c}}}Af{}}00{c{{Cd{e}}}{}{}}0000{Af{{Cd{Enc}}}{}}111111111{{{b{c}}}Dn{}}000000{{{b{j}}En{Ah{AfAf}}{b{El}}}{{`{{Fn{}{{Fd{{Cd{EnGd}}}}}}}}}}{{{b{Fl}}En{Ah{AfAf}}{b{El}}}{{Cd{EnGd}}}}{{{b{Fb}}En{Ah{AfAf}}{b{El}}}{{Cd{EnGd}}}}{{{b{j}}{b{En}}{b{El}}}{{`{{Fn{}{{Fd{{Cd{nBj}}}}}}}}}}{{{b{Fl}}{b{En}}{b{El}}}{{Cd{nBj}}}}{{{b{Fb}}{b{En}}{b{El}}}{{Cd{nBj}}}}{ce{}{}}000000","D":"Mj","p":[[1,"reference"],[0,"mut"],[5,"Key",296],[5,"SessionMiddlewareBuilder",90],[10,"SessionStore",187,297],[5,"Session",0,298],[1,"unit"],[5,"SessionMiddleware",0,299],[10,"Clone",300],[6,"SessionStatus",0,298],[5,"String",301],[5,"HashMap",302],[5,"Ref",303],[1,"bool"],[5,"SessionGetError",0,298],[5,"BoxBody",304],[5,"HttpResponse",305],[5,"SessionInsertError",0,298],[5,"Formatter",306],[8,"Result",306],[5,"Error",307],[5,"HttpRequest",308],[6,"Payload",309],[1,"str"],[6,"Option",310],[6,"Result",311],[10,"DeserializeOwned",312],[10,"SessionExt",0,313],[10,"Into",314],[10,"Serialize",315],[10,"MessageBody",316],[5,"ServiceRequest",317],[17,"Response"],[5,"ServiceResponse",317],[17,"Error"],[5,"Error",318],[10,"Service",319],[10,"Error",320],[5,"TypeId",321],[6,"SessionLifecycle",90],[5,"BrowserSession",90],[5,"PersistentSession",90],[6,"TtlExtensionPolicy",90],[6,"CookieContentSecurity",90],[6,"SameSite",322],[5,"Duration",323],[5,"SessionKey",187,324],[5,"RedisSessionStoreBuilder",187,325],[5,"RedisSessionStore",187,325],[17,"Output"],[10,"Fn",326],[10,"Send",327],[10,"Sync",327],[5,"CookieSessionStore",187,328],[10,"Future",329],[6,"LoadError",187,297],[6,"SaveError",187,297],[6,"UpdateError",187,297]],"r":[[3,298],[4,313],[5,298],[6,298],[7,299],[8,298],[187,328],[189,297],[193,325],[194,325],[195,297],[198,324],[199,297],[200,297]],"b":[[35,"impl-Debug-for-SessionGetError"],[36,"impl-Display-for-SessionGetError"],[37,"impl-Display-for-SessionInsertError"],[38,"impl-Debug-for-SessionInsertError"],[140,"impl-From%3CPersistentSession%3E-for-SessionLifecycle"],[141,"impl-From%3CBrowserSession%3E-for-SessionLifecycle"],[226,"impl-Debug-for-LoadError"],[227,"impl-Display-for-LoadError"],[228,"impl-Display-for-SaveError"],[229,"impl-Debug-for-SaveError"],[230,"impl-Display-for-UpdateError"],[231,"impl-Debug-for-UpdateError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAALsAFgALAAkAFwAFAB4AAAAgAAcAKwAAAC0AAAAvAAAAOQAAAD4AAQBCABgAZwALAHQACQCFAAYAjQABAJ8AHADKAA4A3AACAOAACQD5AAEA/QAeAB0BAQAgAQgA","a":{"expires":[154],"max age":[154],"max_age":[154]}}],\ -["actix_settings",{"t":"FFKGFPPPPPPPPPGPPPGPPPPGGPGFGPKPPPPPPIGFPOOOOMONNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNOOOOONNMNNNNNNNNNOOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOO","n":["ActixSettings","Address","ApplySettings","Backlog","BasicSettings","Default","Default","Default","Default","Default","Default","Development","Disabled","EnvVarError","Error","FileExists","InvalidValue","IoError","KeepAlive","Manual","Manual","Manual","Manual","MaxConnectionRate","MaxConnections","Milliseconds","Mode","NoSettings","NumWorkers","Os","Parse","ParseAddressError","ParseBoolError","ParseIntError","Production","Seconds","Seconds","Settings","Timeout","Tls","TomlError","actix","actix","application","application","apply_settings","backlog","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","certificate","client_shutdown","client_timeout","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","enable_compression","enable_log","enabled","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_default_template","from_template","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","host","hosts","into","into","into","into","into","into","into","into","into","into","into","into","into","keep_alive","max_connection_rate","max_connections","mode","num_workers","override_field","override_field_with_env_var","parse","parse","parse","parse","parse","parse","parse","parse","parse","parse_toml","port","private_key","shutdown_timeout","source","tls","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","write_toml_file","column","expected","file","got","line"],"q":[[0,"actix_settings"],[312,"actix_settings::Error"],[317,"actix_settings::settings::address"],[318,"actix_settings::settings::backlog"],[319,"actix_settings::settings::keep_alive"],[320,"actix_settings::settings::max_connection_rate"],[321,"actix_settings::settings::max_connections"],[322,"actix_settings::settings::mode"],[323,"actix_settings::settings::num_workers"],[324,"actix_settings::settings::timeout"],[325,"actix_settings::settings::tls"],[326,"actix_settings::settings"],[327,"core::clone"],[328,"core::result"],[329,"serde::de"],[330,"core::cmp"],[331,"actix_settings::error"],[332,"core::fmt"],[333,"core::str::error"],[334,"toml::de"],[335,"std::env"],[336,"std::io::error"],[337,"core::num::error"],[338,"core::hash"],[339,"actix_settings::parse"],[340,"core::convert"],[341,"std::path"],[342,"core::error"],[343,"core::option"],[344,"alloc::string"],[345,"core::any"]],"i":[0,0,0,0,0,5,6,7,8,10,11,9,6,23,0,23,23,23,0,5,7,8,10,0,0,11,0,0,0,6,0,23,23,23,9,6,11,0,0,0,23,43,14,43,14,1,13,23,4,5,6,7,8,9,10,11,12,13,14,16,23,4,5,6,7,8,9,10,11,12,13,14,16,12,13,13,4,5,6,7,8,9,10,11,12,13,14,16,4,5,6,7,8,9,10,11,12,13,14,16,4,5,6,7,8,9,10,11,12,13,14,16,13,13,12,4,5,6,7,8,9,10,11,12,13,14,16,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8,9,9,9,10,10,10,11,11,11,12,12,12,13,13,13,14,14,14,16,16,16,23,23,4,5,6,7,8,9,10,11,12,13,14,16,23,23,23,23,23,23,4,5,6,7,8,9,10,11,12,13,14,16,14,14,4,5,6,7,8,9,10,11,12,13,14,16,4,13,23,4,5,6,7,8,9,10,11,12,13,14,16,13,13,13,13,13,14,14,36,4,5,6,7,8,9,10,11,14,4,12,13,23,13,4,5,6,7,8,9,10,11,12,13,14,16,23,23,4,5,6,7,8,9,10,11,12,13,14,16,23,4,5,6,7,8,9,10,11,12,13,14,16,23,4,5,6,7,8,9,10,11,12,13,14,16,23,4,5,6,7,8,9,10,11,12,13,14,16,14,44,44,44,44,44],"f":"`````````````````````````````````````````````{{b{d{c}}}b{}}`{{{d{c}}}{{d{e}}}{}{}}000000000000{{{d{fc}}}{{d{fe}}}{}{}}000000000000```{{{d{h}}}h}{{{d{j}}}j}{{{d{l}}}l}{{{d{n}}}n}{{{d{A`}}}A`}{{{d{Ab}}}Ab}{{{d{Ad}}}Ad}{{{d{Af}}}Af}{{{d{Ah}}}Ah}{{{d{Aj}}}Aj}{{{d{{Al{c}}}}}{{Al{c}}}An}{{{d{B`}}}B`}{{{d{c}}{d{fe}}}Bb{}{}}00000000000{c{{Bd{h}}}Bf}{c{{Bd{j}}}Bf}{c{{Bd{l}}}Bf}{c{{Bd{n}}}Bf}{c{{Bd{A`}}}Bf}{c{{Bd{Ab}}}Bf}{c{{Bd{Ad}}}Bf}{c{{Bd{Af}}}Bf}{c{{Bd{Ah}}}Bf}{c{{Bd{Aj}}}Bf}{c{{Bd{{Al{e}}}}}BfBh}{c{{Bd{B`}}}Bf}```{{{d{h}}{d{h}}}Bj}{{{d{j}}{d{j}}}Bj}{{{d{l}}{d{l}}}Bj}{{{d{n}}{d{n}}}Bj}{{{d{A`}}{d{A`}}}Bj}{{{d{Ab}}{d{Ab}}}Bj}{{{d{Ad}}{d{Ad}}}Bj}{{{d{Af}}{d{Af}}}Bj}{{{d{Ah}}{d{Ah}}}Bj}{{{d{Aj}}{d{Aj}}}Bj}{{{d{{Al{c}}}}{d{{Al{c}}}}}BjBl}{{{d{B`}}{d{B`}}}Bj}{{{d{c}}{d{e}}}Bj{}{}}00000000000000000000000000000000000{{{d{Bn}}{d{fC`}}}Cb}0{{{d{h}}{d{fC`}}}Cb}{{{d{j}}{d{fC`}}}Cb}{{{d{l}}{d{fC`}}}Cb}{{{d{n}}{d{fC`}}}Cb}{{{d{A`}}{d{fC`}}}Cb}{{{d{Ab}}{d{fC`}}}Cb}{{{d{Ad}}{d{fC`}}}Cb}{{{d{Af}}{d{fC`}}}Cb}{{{d{Ah}}{d{fC`}}}Cb}{{{d{Aj}}{d{fC`}}}Cb}{{{d{{Al{c}}}}{d{fC`}}}CbCd}{{{d{B`}}{d{fC`}}}Cb}{CfBn}{ChBn}{CjBn}{ClBn}{CnBn}{cc{}}000000000000{{}{{Al{c}}}D`}{{{d{Db}}}{{Bd{{Al{c}}Bn}}}D`}{{{d{h}}{d{fc}}}BbDd}{{{d{j}}{d{fc}}}BbDd}{{{d{l}}{d{fc}}}BbDd}{{{d{n}}{d{fc}}}BbDd}{{{d{A`}}{d{fc}}}BbDd}{{{d{Ab}}{d{fc}}}BbDd}{{{d{Ad}}{d{fc}}}BbDd}{{{d{Af}}{d{fc}}}BbDd}{{{d{Ah}}{d{fc}}}BbDd}{{{d{Aj}}{d{fc}}}BbDd}{{{d{{Al{c}}}}{d{fe}}}BbDfDd}{{{d{B`}}{d{fc}}}BbDd}``{ce{}{}}000000000000`````{{{d{fc}}e}{{Bd{BbBn}}}Dh{{Dj{Db}}}}0{{{d{Db}}}{{Bd{DhBn}}}}{{{d{Db}}}{{Bd{hBn}}}}{{{d{Db}}}{{Bd{jBn}}}}{{{d{Db}}}{{Bd{lBn}}}}{{{d{Db}}}{{Bd{nBn}}}}{{{d{Db}}}{{Bd{A`Bn}}}}{{{d{Db}}}{{Bd{AbBn}}}}{{{d{Db}}}{{Bd{AdBn}}}}{{{d{Db}}}{{Bd{AfBn}}}}{c{{Bd{{Al{e}}Bn}}}{{Dj{Dl}}}D`}```{{{d{Bn}}}{{E`{{d{Dn}}}}}}`{{{d{c}}}e{}{}}00000000000{{{d{c}}}Eb{}}{c{{Bd{e}}}{}{}}0000000000000000000000000{{{d{c}}}Ed{}}000000000000{ce{}{}}000000000000{c{{Bd{BbBn}}}{{Dj{Dl}}}}`````","D":"Ld","p":[[10,"ApplySettings",0],[1,"reference"],[0,"mut"],[5,"Address",0,317],[6,"Backlog",0,318],[6,"KeepAlive",0,319],[6,"MaxConnectionRate",0,320],[6,"MaxConnections",0,321],[6,"Mode",0,322],[6,"NumWorkers",0,323],[6,"Timeout",0,324],[5,"Tls",0,325],[5,"ActixSettings",0,326],[5,"BasicSettings",0],[10,"Clone",327],[5,"NoSettings",0],[1,"unit"],[6,"Result",328],[10,"Deserializer",329],[10,"Deserialize",329],[1,"bool"],[10,"PartialEq",330],[6,"Error",0,331],[5,"Formatter",332],[8,"Result",332],[10,"Debug",332],[5,"ParseBoolError",333],[5,"Error",334],[6,"VarError",335],[5,"Error",336],[5,"ParseIntError",337],[10,"DeserializeOwned",329],[1,"str"],[10,"Hasher",338],[10,"Hash",338],[10,"Parse",0,339],[10,"AsRef",340],[5,"Path",341],[10,"Error",342],[6,"Option",343],[5,"String",344],[5,"TypeId",345],[8,"Settings",0],[15,"InvalidValue",312]],"r":[[0,326],[1,317],[3,318],[14,331],[18,319],[23,320],[24,321],[26,322],[28,323],[30,339],[38,324],[39,325]],"b":[[163,"impl-Display-for-Error"],[164,"impl-Debug-for-Error"],[177,"impl-From%3CParseBoolError%3E-for-Error"],[178,"impl-From%3CError%3E-for-Error"],[179,"impl-From%3CVarError%3E-for-Error"],[180,"impl-From%3CError%3E-for-Error"],[181,"impl-From%3CParseIntError%3E-for-Error"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAANsACAAwABkATQAjAHQAQgDGAAsA6QAHAPUAAAD3AEAAOQEEAA==","a":{"https":[39],"ssl":[39]}}],\ -["actix_web_httpauth",{"t":"CCCKFRCCNNNNNNNNNMNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFGPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCCFPFFPPPGKPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKFCCNNNNNNNNNNNNNNMNNNNNNNFNNNNNNNNNNNNNNNNNNNNNNFFGPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNN","n":["extractors","headers","middleware","AuthExtractorConfig","AuthenticationError","Inner","basic","bearer","borrow","borrow_mut","challenge_mut","error_response","fmt","fmt","from","from","into","into_inner","new","status_code","status_code_mut","to_string","try_from","try_into","type_id","vzip","with_error","with_error_description","with_error_uri","BasicAuth","Config","as_ref","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","default","fmt","fmt","from","from","from","from_request","into","into","into_inner","password","realm","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","user_id","vzip","vzip","BearerAuth","Config","Error","InsufficientScope","InvalidRequest","InvalidToken","as_ref","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","cmp","default","eq","fmt","fmt","fmt","fmt","from","from","from","from_request","hash","into","into","into","into_inner","partial_cmp","realm","scope","status_code","to_owned","to_owned","to_owned","to_string","token","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","authorization","www_authenticate","Authorization","Base64DecodeError","Basic","Bearer","Invalid","MissingField","MissingScheme","ParseError","Scheme","ToStrError","Utf8Error","as_mut","as_ref","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","cmp","cmp","cmp","default","eq","eq","eq","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","hash","into","into","into","into","into_scheme","name","new","new","parse","parse","parse","parse","partial_cmp","partial_cmp","partial_cmp","password","source","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","token","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into_pair","try_into_value","try_into_value","try_into_value","type_id","type_id","type_id","type_id","user_id","vzip","vzip","vzip","vzip","Challenge","WwwAuthenticate","basic","bearer","borrow","borrow_mut","clone","clone_into","cmp","default","eq","fmt","from","hash","into","name","parse","partial_cmp","to_bytes","to_owned","try_from","try_into","try_into_pair","try_into_value","type_id","vzip","Basic","borrow","borrow_mut","clone","clone_into","cmp","default","eq","fmt","fmt","from","hash","into","new","partial_cmp","to_owned","to_string","try_from","try_into","try_into_value","type_id","vzip","with_realm","Bearer","BearerBuilder","Error","InsufficientScope","InvalidRequest","InvalidToken","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","cmp","default","default","eq","error","error_description","error_uri","finish","fmt","fmt","fmt","from","from","hash","into","into","partial_cmp","realm","scope","to_owned","to_string","try_from","try_from","try_into","try_into","try_into_value","type_id","type_id","vzip","vzip","HttpAuthentication","basic","bearer","borrow","borrow_mut","clone","clone_into","fmt","from","into","new_transform","to_owned","try_from","try_into","type_id","vzip","with_fn"],"q":[[0,"actix_web_httpauth"],[3,"actix_web_httpauth::extractors"],[29,"actix_web_httpauth::extractors::basic"],[63,"actix_web_httpauth::extractors::bearer"],[119,"actix_web_httpauth::headers"],[121,"actix_web_httpauth::headers::authorization"],[218,"actix_web_httpauth::headers::www_authenticate"],[244,"actix_web_httpauth::headers::www_authenticate::basic"],[267,"actix_web_httpauth::headers::www_authenticate::bearer"],[310,"actix_web_httpauth::middleware"],[327,"actix_web_httpauth::extractors::errors"],[328,"actix_web_httpauth::headers::www_authenticate::challenge"],[329,"actix_web::response::response"],[330,"core::fmt"],[331,"actix_web_httpauth::extractors::config"],[332,"http::status"],[333,"alloc::string"],[334,"core::result"],[335,"core::any"],[336,"actix_web_httpauth::headers::www_authenticate::challenge::bearer::challenge"],[337,"actix_web_httpauth::headers::www_authenticate::challenge::bearer::errors"],[338,"alloc::borrow"],[339,"core::convert"],[340,"actix_web_httpauth::headers::www_authenticate::challenge::basic"],[341,"actix_web_httpauth::headers::authorization::scheme::basic"],[342,"actix_web::request"],[343,"actix_http::payload"],[344,"core::option"],[345,"core::cmp"],[346,"core::hash"],[347,"actix_web_httpauth::headers::authorization::header"],[348,"actix_web_httpauth::headers::authorization::scheme"],[349,"core::clone"],[350,"actix_web_httpauth::headers::authorization::scheme::bearer"],[351,"core::default"],[352,"actix_web_httpauth::headers::authorization::errors"],[353,"base64::decode"],[354,"http::header::value"],[355,"core::str::error"],[356,"http::header::name"],[357,"actix_http::error"],[358,"actix_http::http_message"],[359,"core::error"],[360,"actix_web_httpauth::headers::www_authenticate::header"],[361,"bytes::bytes"],[362,"actix_web_httpauth::headers::www_authenticate::challenge::bearer::builder"],[363,"actix_web::service"],[364,"actix_web::error::error"],[365,"core::future::future"],[366,"core::ops::function"],[367,"actix_web::extract"],[368,"actix_http::body::message_body"],[369,"actix_service"]],"i":[0,0,0,0,0,9,0,0,3,3,3,3,3,3,3,3,3,9,3,3,3,3,3,3,3,3,3,3,3,0,0,20,20,22,20,22,20,22,20,22,20,20,22,20,22,22,22,20,22,20,22,20,20,22,20,22,20,22,20,22,22,20,22,0,0,0,16,16,16,28,28,29,16,28,29,16,28,29,16,28,29,16,16,28,16,28,29,16,16,28,29,16,29,16,28,29,16,28,16,28,28,16,28,29,16,16,29,28,29,16,28,29,16,28,29,16,28,29,16,0,0,0,40,0,0,40,40,40,0,0,40,40,33,33,40,33,24,36,40,33,24,36,33,24,36,33,24,36,33,24,36,33,33,24,36,40,40,33,33,24,24,36,36,40,40,40,40,33,33,24,36,33,40,33,24,36,33,33,24,36,34,33,24,36,33,24,36,24,40,33,24,36,40,33,24,36,36,40,33,24,36,40,33,24,36,33,33,24,36,40,33,24,36,24,40,33,24,36,0,0,0,0,52,52,52,52,52,52,52,52,52,52,52,52,52,52,4,52,52,52,52,52,52,52,0,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,0,0,0,16,16,16,55,15,55,15,15,15,15,15,55,15,15,55,55,55,55,55,15,15,55,15,15,55,15,15,55,55,15,15,55,15,55,15,15,55,15,55,15,0,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56],"f":"````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{d{f{c}}}}}{{b{dc}}}h}{{{b{{f{c}}}}}jh}{{{b{{f{c}}}}{b{dl}}}n{A`h}}{{{b{{f{c}}}}{b{dl}}}nh}{cc{}}{cfAb}{ce{}{}}{{{Ab{}{{Ad{c}}}}}ch}{c{{f{c}}}h}{{{b{{f{c}}}}}Afh}{{{b{d{f{c}}}}}{{b{dAf}}}h}{{{b{c}}}Ah{}}{c{{Aj{e}}}{}{}}0{{{b{c}}}Al{}}7{{{f{An}}B`}{{f{An}}}}{{{f{An}}c}{{f{An}}}{{Bf{{Bd{Bb}}}}}}0``{{{b{Bh}}}{{b{Bj}}}}{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{{b{Bh}}}Bh}{{{b{Bl}}}Bl}{{{b{c}}{b{de}}}Bn{}{}}0{{}Bh}{{{b{Bh}}{b{dl}}}n}{{{b{Bl}}{b{dl}}}n}{cc{}}0{C`Bl}{{{b{Cb}}{b{dCd}}}c{}}{ce{}{}}0{Bhc{}}{{{b{Bl}}}{{Cf{{b{Bb}}}}}}{{Bhc}Bh{{Bf{{Bd{Bb}}}}}}{{{b{c}}}e{}{}}0{c{{Aj{e}}}{}{}}000{{{b{c}}}Al{}}0{{{b{Bl}}}{{b{Bb}}}}77``````{{{b{Ch}}}{{b{An}}}}{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{Ch}}}Ch}{{{b{Cj}}}Cj}{{{b{B`}}}B`}{{{b{c}}{b{de}}}Bn{}{}}00{{{b{B`}}{b{B`}}}Cl}{{}Ch}{{{b{B`}}{b{B`}}}Cn}{{{b{Ch}}{b{dl}}}n}{{{b{Cj}}{b{dl}}}n}{{{b{B`}}{b{dl}}}n}0{cc{}}00{{{b{Cb}}{b{dCd}}}c{}}{{{b{B`}}{b{dc}}}BnD`}{ce{}{}}00{Chc{}}{{{b{B`}}{b{B`}}}{{Cf{Cl}}}}{{Chc}Ch{{Bf{{Bd{Bb}}}}}}0{{{b{B`}}}Af}{{{b{c}}}e{}{}}00{{{b{c}}}Ah{}}{{{b{Cj}}}{{b{Bb}}}}{c{{Aj{e}}}{}{}}00000{{{b{c}}}Al{}}00999`````````````{{{b{d{Db{c}}}}}{{b{dc}}}Dd}{{{b{{Db{c}}}}}{{b{c}}}Dd}{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000{{{b{{Db{c}}}}}{{Db{c}}}{DfDd}}{{{b{C`}}}C`}{{{b{Dh}}}Dh}{{{b{c}}{b{de}}}Bn{}{}}00{{{b{{Db{c}}}}{b{{Db{c}}}}}Cl{DjDd}}{{{b{C`}}{b{C`}}}Cl}{{{b{Dh}}{b{Dh}}}Cl}{{}{{Db{c}}}{DlDd}}{{{b{{Db{c}}}}{b{{Db{c}}}}}Cn{DnDd}}{{{b{C`}}{b{C`}}}Cn}{{{b{Dh}}{b{Dh}}}Cn}{{{b{E`}}{b{dl}}}n}0{{{b{{Db{c}}}}{b{dl}}}n{A`Dd}}{{{b{{Db{c}}}}{b{dl}}}nDd}{{{b{C`}}{b{dl}}}n}0{{{b{Dh}}{b{dl}}}n}0{EbE`}{cc{}}{EdE`}{EfE`}{c{{Db{c}}}Dd}333{{{b{{Db{c}}}}{b{de}}}Bn{EhDd}D`}{ce{}{}}000{{{Db{c}}}cDd}{{}Ej}{{c{Cf{e}}}C`{{Bf{{Bd{Bb}}}}}{{Bf{{Bd{Bb}}}}}}{cDh{{Bf{{Bd{Bb}}}}}}{{{b{El}}}{{Aj{DdE`}}}}{{{b{c}}}{{Aj{{Db{e}}En}}}F`Dd}{{{b{El}}}{{Aj{C`E`}}}}{{{b{El}}}{{Aj{DhE`}}}}{{{b{{Db{c}}}}{b{{Db{c}}}}}{{Cf{Cl}}}{FbDd}}{{{b{C`}}{b{C`}}}{{Cf{Cl}}}}{{{b{Dh}}{b{Dh}}}{{Cf{Cl}}}}{{{b{C`}}}{{Cf{{b{Bb}}}}}}{{{b{E`}}}{{Cf{{b{Fd}}}}}}{{{b{c}}}e{}{}}00{{{b{c}}}Ah{}}000{{{b{Dh}}}{{b{Bb}}}}{c{{Aj{e}}}{}{}}0000000{c{{Aj{{Ff{EjEl}}}}}{}}{{{Db{c}}}{{Aj{Ele}}}Dd{}}{C`{{Aj{Elc}}}{}}{Dh{{Aj{Elc}}}{}}{{{b{c}}}Al{}}000{{{b{C`}}}{{b{Bb}}}}{ce{}{}}000````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{{Fh{c}}}}}{{Fh{c}}}{Dfh}}{{{b{c}}{b{de}}}Bn{}{}}{{{b{{Fh{c}}}}{b{{Fh{c}}}}}Cl{Djh}}{{}{{Fh{c}}}{Dlh}}{{{b{{Fh{c}}}}{b{{Fh{c}}}}}Cn{Dnh}}{{{b{{Fh{c}}}}{b{dl}}}n{A`h}}{cc{}}{{{b{{Fh{c}}}}{b{de}}}Bn{Ehh}D`}:{{}Ej}{{{b{c}}}{{Aj{{Fh{e}}En}}}F`h}{{{b{{Fh{c}}}}{b{{Fh{c}}}}}{{Cf{Cl}}}{Fbh}}{{{b{h}}}Fj}{{{b{c}}}e{}{}}{c{{Aj{e}}}{}{}}0{c{{Aj{{Ff{EjEl}}}}}{}}{{{Fh{c}}}{{Aj{Ele}}}h{}}{{{b{c}}}Al{}}{ce{}{}}`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{Bj}}}Bj}{{{b{c}}{b{de}}}Bn{}{}}{{{b{Bj}}{b{Bj}}}Cl}{{}Bj}{{{b{Bj}}{b{Bj}}}Cn}{{{b{Bj}}{b{dl}}}{{Aj{BnFl}}}}{{{b{Bj}}{b{dl}}}n}{cc{}}{{{b{Bj}}{b{dc}}}BnD`};5{{{b{Bj}}{b{Bj}}}{{Cf{Cl}}}}{{{b{c}}}e{}{}}{{{b{c}}}Ah{}}{c{{Aj{e}}}{}{}}0{Bj{{Aj{Elc}}}{}}{{{b{c}}}Al{}}{ce{}{}}{cBj{{Bf{{Bd{Bb}}}}}}``````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}Fn}{{{b{An}}}An}{{{b{c}}{b{de}}}Bn{}{}}{{{b{An}}{b{An}}}Cl}3{{}An}{{{b{An}}{b{An}}}Cn}{{FnB`}Fn}{{Fnc}Fn{{Bf{{Bd{Bb}}}}}}0{FnAn}{{{b{Fn}}{b{dl}}}n}{{{b{An}}{b{dl}}}{{Aj{BnFl}}}}{{{b{An}}{b{dl}}}n}{cc{}}0{{{b{An}}{b{dc}}}BnD`}{ce{}{}}0{{{b{An}}{b{An}}}{{Cf{Cl}}}}88{{{b{c}}}e{}{}}{{{b{c}}}Ah{}}{c{{Aj{e}}}{}{}}000{An{{Aj{Elc}}}{}}{{{b{c}}}Al{}}066`{e{{G`{Ble}}}{{Gh{}{{Gb{{Aj{Gd{Ff{GfGd}}}}}}}}}{{Gj{GdBl}{{Gb{c}}}}}}{e{{G`{Cje}}}{{Gh{}{{Gb{{Aj{Gd{Ff{GfGd}}}}}}}}}{{Gj{GdCj}{{Gb{c}}}}}}{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{{G`{ce}}}}}{{G`{ce}}}{GlDf}Df}{{{b{c}}{b{de}}}Bn{}{}}{{{b{{G`{ce}}}}{b{dl}}}n{GlA`}A`}?={{{b{{G`{cg}}}}k}mGl{{Gh{}{{Gb{{Aj{GdFf}}}}}}}{{Gj{Gdc}{{Gb{e}}}}}Gn{{Hf{Gd}{{H`{{Hb{i}}}}{Hd{Gf}}}}}{}}<::8>{g{{G`{cg}}}Gl{{Gh{}{{Gb{{Aj{Gd{Ff{GfGd}}}}}}}}}{{Gj{Gdc}{{Gb{e}}}}}}","D":"Md","p":[[1,"reference"],[0,"mut"],[5,"AuthenticationError",3,327],[10,"Challenge",218,328],[5,"HttpResponse",329],[5,"Formatter",330],[8,"Result",330],[10,"Debug",330],[10,"AuthExtractorConfig",3,331],[17,"Inner"],[5,"StatusCode",332],[5,"String",333],[6,"Result",334],[5,"TypeId",335],[5,"Bearer",267,336],[6,"Error",63,337],[1,"str"],[6,"Cow",338],[10,"Into",339],[5,"Config",29],[5,"Basic",244,340],[5,"BasicAuth",29],[1,"unit"],[5,"Basic",121,341],[5,"HttpRequest",342],[6,"Payload",343],[6,"Option",344],[5,"Config",63],[5,"BearerAuth",63],[6,"Ordering",345],[1,"bool"],[10,"Hasher",346],[5,"Authorization",121,347],[10,"Scheme",121,348],[10,"Clone",349],[5,"Bearer",121,350],[10,"Ord",345],[10,"Default",351],[10,"PartialEq",345],[6,"ParseError",121,352],[6,"DecodeError",353],[5,"ToStrError",354],[5,"Utf8Error",355],[10,"Hash",346],[5,"HeaderName",356],[5,"HeaderValue",354],[6,"ParseError",357],[10,"HttpMessage",358],[10,"PartialOrd",345],[10,"Error",359],[1,"tuple"],[5,"WwwAuthenticate",218,360],[5,"Bytes",361],[5,"Error",330],[5,"BearerBuilder",267,362],[5,"HttpAuthentication",310],[17,"Output"],[5,"ServiceRequest",363],[5,"Error",364],[10,"Future",365],[10,"Fn",366],[10,"FromRequest",367],[10,"MessageBody",368],[17,"Response"],[5,"ServiceResponse",363],[17,"Error"],[10,"Service",369]],"r":[[3,331],[4,327],[65,337],[121,347],[123,341],[124,350],[128,352],[129,348],[218,328],[219,360],[220,328],[221,328],[244,340],[267,336],[268,362],[269,337]],"b":[[12,"impl-Debug-for-AuthenticationError%3CC%3E"],[13,"impl-Display-for-AuthenticationError%3CC%3E"],[87,"impl-Debug-for-Error"],[88,"impl-Display-for-Error"],[155,"impl-Debug-for-ParseError"],[156,"impl-Display-for-ParseError"],[157,"impl-Debug-for-Authorization%3CS%3E"],[158,"impl-Display-for-Authorization%3CS%3E"],[159,"impl-Display-for-Basic"],[160,"impl-Debug-for-Basic"],[161,"impl-Display-for-Bearer"],[162,"impl-Debug-for-Bearer"],[163,"impl-From%3CDecodeError%3E-for-ParseError"],[165,"impl-From%3CToStrError%3E-for-ParseError"],[166,"impl-From%3CUtf8Error%3E-for-ParseError"],[252,"impl-Display-for-Basic"],[253,"impl-Debug-for-Basic"],[289,"impl-Display-for-Bearer"],[290,"impl-Debug-for-Bearer"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAN0AJgAJAAEADAACABAAAAAUAAAAFgAEACAACwAuAAEAMgAAADUABwA+AAEARgATAF0AAQBiAAEAZwADAGwACwCFAB8ApgACAKwAAACyAAAAtgAFAL0ABwDGAA8A1wADAN8ABwDoAAAA6gACAO4ABgD2AAgAAAEAAAMBBwASAQMAFwEFACEBAgAmAQAAKQEAACwBCgA6AQQAQQEFAA=="}],\ -["actix_ws",{"t":"PPPPPPGFFPPPPPPPPPPPPPGPPGFPPPPPPPGPFPFPPPNNNNNNNNNNNNNNNNNNNNNNNNNNONONNNNNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Abnormal","Again","Away","BadOpCode","Binary","Close","CloseCode","CloseReason","Closed","Continuation","ContinuationFragment","ContinuationNotStarted","ContinuationStarted","Continue","Error","Extension","FirstBinary","FirstText","Invalid","InvalidLength","InvalidOpcode","Io","Item","Last","MaskedFrame","Message","MessageStream","Nop","Normal","Overflow","Ping","Policy","Pong","Protocol","ProtocolError","Restart","Session","Size","StreamingBody","Text","UnmaskedFrame","Unsupported","binary","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","close","code","continuation","description","eq","eq","eq","eq","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","handle","into","into","into","into","into","into","into","into","into","ping","poll_next","poll_next","pong","recv","source","text","to_owned","to_owned","to_owned","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_poll_next","try_poll_next","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip"],"q":[[0,"actix_ws"],[159,"actix_ws::session"],[160,"core::result"],[161,"bytes::bytes"],[162,"core::convert"],[163,"actix_http::ws::proto"],[164,"core::option"],[165,"actix_http::ws::codec"],[166,"core::fmt"],[167,"actix_http::ws"],[168,"alloc::string"],[169,"std::io::error"],[170,"actix_web::request"],[171,"actix_web::types::payload"],[172,"actix_web::response::response"],[173,"actix_ws::fut"],[174,"actix_web::error::error"],[175,"core::pin"],[176,"core::task::wake"],[177,"core::task::poll"],[178,"core::error"],[179,"bytestring"],[180,"core::any"]],"i":[9,9,9,18,13,13,0,0,0,13,18,18,18,12,9,9,12,12,9,18,18,18,0,12,18,0,0,13,9,18,13,9,13,9,0,9,0,9,0,13,18,9,2,32,29,2,5,13,12,9,10,18,32,29,2,5,13,12,9,10,18,2,9,10,2,9,10,2,10,2,10,13,12,9,10,5,5,13,12,9,10,18,18,32,29,2,5,13,12,9,9,10,10,10,18,18,18,18,18,0,32,29,2,5,13,12,9,10,18,2,32,29,2,29,18,2,2,9,10,5,18,32,29,2,5,13,12,9,10,18,32,29,2,5,13,12,9,10,18,32,29,32,29,2,5,13,12,9,10,18,32,29,2,5,13,12,9,10,18],"f":"``````````````````````````````````````````{{{f{bd}}c}{{l{hj}}}{{A`{n}}}}{{{f{c}}}{{f{e}}}{}{}}00000000{{{f{bc}}}{{f{be}}}{}{}}00000000{{{f{d}}}d}{{{f{Ab}}}Ab}{{{f{Ad}}}Ad}{{{f{c}}{f{be}}}h{}{}}00{{d{Af{Ad}}}{{l{hj}}}}`{{{f{bd}}Ah}{{l{hj}}}}`{{{f{Aj}}{f{Aj}}}Al}{{{f{Ah}}{f{Ah}}}Al}{{{f{Ab}}{f{Ab}}}Al}{{{f{Ad}}{f{Ad}}}Al}{{{f{j}}{f{bAn}}}B`}0{{{f{Aj}}{f{bAn}}}{{l{hBb}}}}{{{f{Ah}}{f{bAn}}}{{l{hBb}}}}{{{f{Ab}}{f{bAn}}}{{l{hBb}}}}{{{f{Ad}}{f{bAn}}}{{l{hBb}}}}{{{f{Bd}}{f{bAn}}}{{l{hBb}}}}0{cc{}}000000{BfAb}{AbAd}{{{Bh{Abc}}}Ad{{A`{Bj}}}}3{BlBd}{BnBd}{C`Bd}{CbBd}7{{{f{Cd}}Cf}{{l{{Bh{ChdCj}}Cl}}}}{ce{}{}}00000000{{{f{bd}}{f{{Cn{C`}}}}}{{l{hj}}}}{{{Db{{f{bD`}}}}{f{bDd}}}{{Df{{Af{c}}}}}{}}{{{Db{{f{bCj}}}}{f{bDd}}}{{Df{{Af{c}}}}}{}}2{{{f{bCj}}}{{Af{{l{AjBd}}}}}}{{{f{Bd}}}{{Af{{f{Dh}}}}}}{{{f{bd}}c}{{l{hj}}}{{A`{Dj}}}}{{{f{c}}}e{}{}}00{{{f{c}}}Bj{}}0{c{{l{e}}}{}{}}00000000000000000{{{Db{{f{bc}}}}{f{bDd}}}{{Df{{Af{l}}}}}{}}0{{{f{c}}}Dl{}}00000000;;;;;;;;;","D":"Hf","p":[[0,"mut"],[5,"Session",0,159],[1,"reference"],[1,"unit"],[5,"Closed",0,159],[6,"Result",160],[5,"Bytes",161],[10,"Into",162],[6,"CloseCode",0,163],[5,"CloseReason",0,163],[6,"Option",164],[6,"Item",0,165],[6,"Message",0,165],[1,"bool"],[5,"Formatter",166],[8,"Result",166],[5,"Error",166],[6,"ProtocolError",0,167],[1,"u16"],[1,"tuple"],[5,"String",168],[6,"OpCode",163],[1,"usize"],[1,"u8"],[5,"Error",169],[5,"HttpRequest",170],[5,"Payload",171],[5,"HttpResponse",172],[5,"MessageStream",0,173],[5,"Error",174],[1,"slice"],[5,"StreamingBody",0,173],[5,"Pin",175],[5,"Context",176],[6,"Poll",177],[10,"Error",178],[5,"ByteString",179],[5,"TypeId",180]],"r":[[6,163],[7,163],[8,159],[22,165],[25,165],[26,173],[34,167],[36,159],[38,173]],"b":[[75,"impl-Display-for-Closed"],[76,"impl-Debug-for-Closed"],[81,"impl-Debug-for-ProtocolError"],[82,"impl-Display-for-ProtocolError"],[91,"impl-From%3CCloseCode%3E-for-CloseReason"],[92,"impl-From%3C(CloseCode,+T)%3E-for-CloseReason"],[94,"impl-From%3COpCode%3E-for-ProtocolError"],[95,"impl-From%3Cusize%3E-for-ProtocolError"],[96,"impl-From%3Cu8%3E-for-ProtocolError"],[97,"impl-From%3CError%3E-for-ProtocolError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAFwACgAOAAAAEQABABgAAAAsABcASAALAFsAAgBfAAMAbwABAHMAAAB1ACoA"}]\ +["actix_identity",{"t":"FKFNNNNNNNCNCNNNMNNNNNNNNNNNNNNNPFGPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNGFFPFPFPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Identity","IdentityExt","IdentityMiddleware","borrow","borrow","borrow_mut","borrow_mut","builder","clone","clone_into","config","default","error","from","from","from_request","get_identity","id","into","into","login","logout","new_transform","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","DeleteIdentityKeys","IdentityMiddlewareBuilder","LogoutBehaviour","PurgeSession","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone","clone_into","clone_into","fmt","fmt","from","from","id_key","into","into","last_visit_unix_timestamp_key","login_deadline","login_unix_timestamp_key","logout_behaviour","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","visit_deadline","vzip","vzip","GetIdentityError","LoginError","LostIdentityError","LostIdentityError","MissingIdentityError","MissingIdentityError","SessionExpiryError","SessionExpiryError","SessionGetError","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","into","into","into","into","into","source","source","status_code","status_code","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip"],"q":[[0,"actix_identity"],[32,"actix_identity::config"],[67,"actix_identity::error"],[140,"actix_identity::middleware"],[141,"actix_web::request"],[142,"actix_http::payload"],[143,"actix_identity::identity_ext"],[144,"actix_identity::identity"],[145,"core::result"],[146,"alloc::string"],[147,"actix_http::extensions"],[148,"actix_http::body::message_body"],[149,"actix_web::service"],[150,"actix_web::error::error"],[151,"actix_service"],[152,"core::any"],[153,"core::fmt"],[154,"core::time"],[155,"core::option"],[156,"actix_session::session"],[157,"core::error"],[158,"http::status"]],"i":[0,0,0,9,4,9,4,4,4,4,0,4,0,9,4,9,8,9,9,4,9,9,4,4,9,4,9,4,9,4,9,4,23,0,0,23,23,3,23,3,3,23,3,23,3,23,3,23,3,3,23,3,3,3,3,3,23,3,23,3,23,3,23,3,3,23,3,0,0,0,10,0,10,0,10,10,14,29,30,31,10,14,29,30,31,10,14,14,29,29,30,30,31,31,10,10,14,14,29,30,31,10,10,10,10,10,14,29,30,31,10,14,10,14,10,14,29,30,31,10,14,29,30,31,10,14,29,30,31,10,14,29,30,31,10,14,29,30,31,10],"f":"```{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}f}{{{b{h}}}h}{{{b{c}}{b{de}}}j{}{}}`{{}h}`{cc{}}0{{{b{l}}{b{dn}}}c{}}{{{b{A`}}}{{Af{AbAd}}}}{{{b{Ab}}}{{Af{AhAd}}}}{ce{}{}}0{{{b{Aj}}Ah}{{Af{AbAl}}}}{Abj}{{{b{h}}e}gAn{{Bj{B`}{{Bb{{Bd{c}}}}{Bf{Bh}}}}}{}}{{{b{c}}}e{}{}}{c{{Af{e}}}{}{}}000{{{b{c}}}Bl{}}066````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{fh}{{{b{Bn}}}Bn}{{{b{f}}}f}{{{b{c}}{b{de}}}j{}{}}0{{{b{Bn}}{b{dC`}}}Cb}{{{b{f}}{b{dC`}}}Cb}{cc{}}0{{f{b{Cd}}}f}{ce{}{}}01{{f{Ch{Cf}}}f}2{{fBn}f}??>>>>==122`````````<<<<<;;;;;{{{b{Al}}{b{dC`}}}Cb}0{{{b{Cj}}{b{dC`}}}Cb}0{{{b{Cl}}{b{dC`}}}Cb}0{{{b{Cn}}{b{dC`}}}Cb}0{{{b{Ad}}{b{dC`}}}Cb}09{D`Al}:::{DbAd}{CjAd}<{ClAd}{CnAd}<<<<<{{{b{Al}}}{{Ch{{b{Dd}}}}}}{{{b{Ad}}}{{Ch{{b{Dd}}}}}}{{{b{Al}}}Df}{{{b{Ad}}}Df}{{{b{c}}}Ah{}}0000{c{{Af{e}}}{}{}}000000000{{{b{c}}}Bl{}}0000{ce{}{}}0000","D":"Fb","p":[[1,"reference"],[0,"mut"],[5,"IdentityMiddlewareBuilder",32],[5,"IdentityMiddleware",0,140],[1,"unit"],[5,"HttpRequest",141],[6,"Payload",142],[10,"IdentityExt",0,143],[5,"Identity",0,144],[6,"GetIdentityError",67],[6,"Result",145],[5,"String",146],[5,"Extensions",147],[5,"LoginError",67],[10,"MessageBody",148],[5,"ServiceRequest",149],[17,"Response"],[5,"ServiceResponse",149],[17,"Error"],[5,"Error",150],[10,"Service",151],[5,"TypeId",152],[6,"LogoutBehaviour",32],[5,"Formatter",153],[8,"Result",153],[1,"str"],[5,"Duration",154],[6,"Option",155],[5,"SessionExpiryError",67],[5,"LostIdentityError",67],[5,"MissingIdentityError",67],[5,"SessionInsertError",156],[5,"SessionGetError",156],[10,"Error",157],[5,"StatusCode",158]],"r":[[0,144],[1,143],[2,140]],"b":[[86,"impl-Debug-for-LoginError"],[87,"impl-Display-for-LoginError"],[88,"impl-Display-for-SessionExpiryError"],[89,"impl-Debug-for-SessionExpiryError"],[90,"impl-Debug-for-LostIdentityError"],[91,"impl-Display-for-LostIdentityError"],[92,"impl-Debug-for-MissingIdentityError"],[93,"impl-Display-for-MissingIdentityError"],[94,"impl-Debug-for-GetIdentityError"],[95,"impl-Display-for-GetIdentityError"],[101,"impl-From%3CSessionGetError%3E-for-GetIdentityError"],[102,"impl-From%3CSessionExpiryError%3E-for-GetIdentityError"],[104,"impl-From%3CLostIdentityError%3E-for-GetIdentityError"],[105,"impl-From%3CMissingIdentityError%3E-for-GetIdentityError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAFsADgAEAAMACQABAAwAAAAQAAAAFwAJACUAAwAqAAUAOQAHAEIAAQBNABMAYgAAAGYAAQBpAAEAcAAcAA=="}],\ +["actix_limitation",{"t":"FPSSSSGPFPFFPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Builder","Client","DEFAULT_COOKIE_NAME","DEFAULT_PERIOD_SECS","DEFAULT_REQUEST_LIMIT","DEFAULT_SESSION_KEY","Error","LimitExceeded","Limiter","Other","RateLimiter","Status","Time","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","builder","clone","clone","clone_into","clone_into","cookie_name","count","default","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","into","into","into","into","into","key_by","limit","limit","new_transform","period","remaining","reset_epoch_utc","session_key","source","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip"],"q":[[0,"actix_limitation"],[82,"actix_limitation::builder"],[83,"actix_limitation::errors"],[84,"core::result"],[85,"alloc::string"],[86,"core::convert"],[87,"actix_limitation::status"],[88,"alloc::borrow"],[89,"actix_limitation::middleware"],[90,"core::fmt"],[91,"redis::types"],[92,"time::error::component_range"],[93,"actix_web::service"],[94,"core::option"],[95,"core::ops::function"],[96,"core::marker"],[97,"actix_web::error::error"],[98,"actix_service"],[99,"core::time"],[100,"core::error"],[101,"core::any"]],"i":[0,5,0,0,0,0,0,5,0,5,0,0,5,3,5,13,9,4,3,5,13,9,4,3,4,9,4,9,4,3,4,13,3,5,5,13,9,4,3,5,5,5,13,9,4,3,5,13,9,4,3,3,9,13,3,9,9,3,5,9,4,5,3,5,13,9,4,3,5,13,9,4,3,5,13,9,4,3,5,13,9,4],"f":"`````````````{{{b{c}}}{{b{e}}}{}{}}0000{{{b{dc}}}{{b{de}}}{}{}}0000{{{b{df}}}{{l{hj}}}}{cf{{A`{n}}}}{{{b{Ab}}}Ab}{{{b{h}}}h}{{{b{c}}{b{de}}}Ad{}{}}0{{{b{df}}c}{{b{df}}}{{A`{{Ah{Af}}}}}}{{{b{h}}c}{{l{Abj}}}{{A`{n}}}}{{}Aj}{{{b{f}}{b{dAl}}}An}{{{b{j}}{b{dAl}}}An}0{{{b{Aj}}{b{dAl}}}An}{{{b{Ab}}{b{dAl}}}An}{{{b{h}}{b{dAl}}}An}{cc{}}{B`j}1{Bbj}222{ce{}{}}0000{{{b{df}}c}{{b{df}}}{{Bj{{b{Bd}}}{{Bf{{Bh{n}}}}}}BlBn}}{{{b{df}}C`}{{b{df}}}}{{{b{Ab}}}C`}{{{b{Aj}}e}g{}{{Cj{Bd}{{Cb{{Cd{c}}}}{Cf{Ch}}}}}{}}{{{b{df}}Cl}{{b{df}}}}22{{{b{df}}c}{{b{df}}}{{A`{{Ah{Af}}}}}}{{{b{j}}}{{Bh{{b{Cn}}}}}}{{{b{c}}}e{}{}}0{{{b{c}}}n{}}{c{{l{e}}}{}{}}000000000{{{b{c}}}D`{}}0000;;;;;","D":"Df","p":[[1,"reference"],[0,"mut"],[5,"Builder",0,82],[5,"Limiter",0],[6,"Error",0,83],[6,"Result",84],[5,"String",85],[10,"Into",86],[5,"Status",0,87],[1,"unit"],[1,"str"],[6,"Cow",88],[5,"RateLimiter",0,89],[5,"Formatter",90],[8,"Result",90],[5,"RedisError",91],[5,"ComponentRange",92],[5,"ServiceRequest",93],[17,"Output"],[6,"Option",94],[10,"Fn",95],[10,"Send",96],[10,"Sync",96],[1,"usize"],[17,"Response"],[5,"ServiceResponse",93],[17,"Error"],[5,"Error",97],[10,"Service",98],[5,"Duration",99],[10,"Error",100],[5,"TypeId",101]],"r":[[0,82],[6,83],[10,89],[11,87]],"b":[[33,"impl-Display-for-Error"],[34,"impl-Debug-for-Error"],[39,"impl-From%3CRedisError%3E-for-Error"],[41,"impl-From%3CComponentRange%3E-for-Error"]],"c":"OjAAAAEAAAAAAAEAEAAAAB4AOgA=","e":"OzAAAAEAAC8ABwAOAAkAGgADACAABgAoAAAAKgAAADYAAAA7ABcA"}],\ +["actix_protobuf",{"t":"PPPPFFFGKPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNN","n":["ContentType","Deserialize","Overflow","Payload","ProtoBuf","ProtoBufConfig","ProtoBufMessage","ProtoBufPayloadError","ProtoBufResponseBuilder","Serialize","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","default","deref","deref_mut","error_response","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from_request","into","into","into","into","into_future","limit","limit","new","poll","protobuf","respond_to","to_string","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_poll","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip"],"q":[[0,"actix_protobuf"],[63,"prost::message"],[64,"actix_web::response::response"],[65,"core::fmt"],[66,"actix_http::error"],[67,"prost::error"],[68,"actix_web::request"],[69,"actix_http::payload"],[70,"core::default"],[71,"core::pin"],[72,"core::task::wake"],[73,"core::task::poll"],[74,"actix_web::error::error"],[75,"core::result"],[76,"alloc::string"],[77,"core::any"]],"i":[6,6,6,6,0,0,0,0,0,6,4,3,17,6,4,3,17,6,3,4,4,6,4,4,6,6,4,3,17,6,6,6,4,4,3,17,6,17,3,17,17,17,22,4,4,6,4,3,17,6,4,3,17,6,17,4,3,17,6,4,3,17,6],"f":"``````````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000{{}f}{{{b{{h{c}}}}}{{b{c}}}j}{{{b{d{h{c}}}}}{{b{dc}}}j}{{{b{l}}}n}{{{b{{h{c}}}}{b{dA`}}}Ab{Adj}}{{{b{{h{c}}}}{b{dA`}}}Ab{Afj}}{{{b{l}}{b{dA`}}}Ab}0{cc{}}00{Ahl}{Ajl}2{{{b{Al}}{b{dAn}}}c{}}{ce{}{}}000{c{}{}}{{{b{df}}B`}{{b{df}}}}{{{Bb{c}}B`}{{Bb{c}}}{jBd}}{{{b{Al}}{b{dAn}}}{{Bb{c}}}{jBd}}{{{Bf{{b{d{Bb{c}}}}}}{b{dBh}}}{{Bj{e}}}{jBd}{}}{{{b{dBl}}c}{{C`{nBn}}}j}{{{h{c}}{b{Al}}}n{jBd}}{{{b{c}}}Cb{}}0{c{{C`{e}}}{}{}}0000000{{{Bf{{b{dc}}}}{b{dBh}}}Bj{}}{{{b{c}}}Cd{}}000;;;;","D":"Bb","p":[[1,"reference"],[0,"mut"],[5,"ProtoBufConfig",0],[5,"ProtoBuf",0],[10,"Message",63],[6,"ProtoBufPayloadError",0],[5,"HttpResponse",64],[5,"Formatter",65],[8,"Result",65],[10,"Display",65],[10,"Debug",65],[6,"PayloadError",66],[5,"DecodeError",67],[5,"HttpRequest",68],[6,"Payload",69],[1,"usize"],[5,"ProtoBufMessage",0],[10,"Default",70],[5,"Pin",71],[5,"Context",72],[6,"Poll",73],[10,"ProtoBufResponseBuilder",0],[5,"Error",74],[6,"Result",75],[5,"String",76],[5,"TypeId",77]],"r":[],"b":[[22,"impl-Display-for-ProtoBuf%3CT%3E"],[23,"impl-Debug-for-ProtoBuf%3CT%3E"],[24,"impl-Debug-for-ProtoBufPayloadError"],[25,"impl-Display-for-ProtoBufPayloadError"],[29,"impl-From%3CPayloadError%3E-for-ProtoBufPayloadError"],[30,"impl-From%3CDecodeError%3E-for-ProtoBufPayloadError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABgAFAAQACwAPAB4AAQAhAAAAJgAAACoAFQA="}],\ +["actix_session",{"t":"PPPFKFFFGPNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNFPGPPFPPGFPGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFPGPPPFFGPPFKGNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNMNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNMNNNNNNNNN","n":["Changed","Purged","Renewed","Session","SessionExt","SessionGetError","SessionInsertError","SessionMiddleware","SessionStatus","Unchanged","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","clear","clone","clone","clone","clone_into","clone_into","clone_into","config","default","entries","eq","error_response","error_response","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from_request","get","get_session","insert","into","into","into","into","into","new","new_transform","purge","remove","remove_as","renew","source","source","status","storage","to_owned","to_owned","to_owned","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","BrowserSession","BrowserSession","CookieContentSecurity","OnEveryRequest","OnStateChanges","PersistentSession","PersistentSession","Private","SessionLifecycle","SessionMiddlewareBuilder","Signed","TtlExtensionPolicy","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cookie_content_security","cookie_domain","cookie_http_only","cookie_name","cookie_path","cookie_same_site","cookie_secure","default","default","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","into","into","into","into","into","into","session_lifecycle","session_ttl","session_ttl_extension_policy","state_ttl","state_ttl_extension_policy","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","CookieSessionStore","Deserialization","LoadError","Other","Other","Other","RedisSessionStore","RedisSessionStoreBuilder","SaveError","Serialization","Serialization","SessionKey","SessionStore","UpdateError","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_keygen","clone","clone_into","default","delete","delete","delete","eq","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","into","into","into","into","into","into","into","load","load","load","new","save","save","save","source","source","source","to_owned","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update","update","update","update_ttl","update_ttl","update_ttl","vzip","vzip","vzip","vzip","vzip","vzip","vzip"],"q":[[0,"actix_session"],[90,"actix_session::config"],[187,"actix_session::storage"],[296,"cookie::secure::key"],[297,"actix_session::storage::interface"],[298,"actix_session::session"],[299,"actix_session::middleware"],[300,"core::clone"],[301,"alloc::string"],[302,"std::collections::hash::map"],[303,"core::cell"],[304,"actix_http::body::boxed"],[305,"actix_web::response::response"],[306,"core::fmt"],[307,"anyhow"],[308,"actix_web::request"],[309,"actix_http::payload"],[310,"core::option"],[311,"core::result"],[312,"serde::de"],[313,"actix_session::session_ext"],[314,"core::convert"],[315,"serde::ser"],[316,"actix_http::body::message_body"],[317,"actix_web::service"],[318,"actix_web::error::error"],[319,"actix_service"],[320,"core::error"],[321,"core::any"],[322,"cookie::draft"],[323,"time::duration"],[324,"actix_session::storage::session_key"],[325,"actix_session::storage::redis_rs"],[326,"core::ops::function"],[327,"core::marker"],[328,"actix_session::storage::cookie"],[329,"core::future::future"]],"i":[10,10,10,0,0,0,0,0,0,10,8,6,10,15,18,8,6,10,15,18,8,6,8,6,10,8,6,10,0,10,6,10,15,18,10,15,15,18,18,8,6,10,15,15,18,18,6,6,28,6,8,6,10,15,18,8,8,6,6,6,6,15,18,6,0,8,6,10,15,18,8,6,10,15,18,8,6,10,15,18,8,6,10,15,18,8,6,10,15,18,0,40,0,43,43,0,40,44,0,0,44,0,4,40,41,42,43,44,4,40,41,42,43,44,4,40,41,42,43,44,40,41,42,43,44,4,4,4,4,4,4,4,41,42,40,41,42,43,44,4,40,40,40,41,42,43,44,4,40,41,42,43,44,4,42,42,41,41,40,41,42,43,44,4,40,41,42,43,44,4,40,41,42,43,44,4,40,41,42,43,44,4,40,41,42,43,44,0,56,0,56,57,58,0,0,0,57,58,0,0,0,47,48,56,57,58,47,54,49,48,56,57,58,47,54,49,48,49,48,49,49,54,5,54,49,47,56,56,57,57,58,58,47,48,56,57,58,47,54,49,48,56,57,58,47,54,49,5,54,49,49,5,54,49,56,57,58,49,56,57,58,48,56,57,58,47,47,54,49,48,56,57,58,47,54,49,48,56,57,58,47,54,49,5,54,49,5,54,49,48,56,57,58,47,54,49],"f":"``````````{{{b{c}}}{{b{e}}}{}{}}0000{{{b{dc}}}{{b{de}}}{}{}}0000{{cf}{{h{c}}}j}{{{b{l}}}n}{{{b{{A`{c}}}}}{{A`{c}}}{Abj}}{{{b{l}}}l}{{{b{Ad}}}Ad}{{{b{c}}{b{de}}}n{}{}}00`{{}Ad}{{{b{l}}}{{Aj{{Ah{AfAf}}}}}}{{{b{Ad}}{b{Ad}}}Al}{{{b{An}}}{{Bb{B`}}}}{{{b{Bd}}}{{Bb{B`}}}}{{{b{Ad}}{b{dBf}}}Bh}{{{b{An}}{b{dBf}}}Bh}0{{{b{Bd}}{b{dBf}}}Bh}0{cc{}}000{BjAn}{BjBd}2{{{b{Bl}}{b{dBn}}}c{}}{{{b{l}}{b{C`}}}{{Cd{{Cb{c}}An}}}Cf}{{{b{Ch}}}l}{{{b{l}}ce}{{Cd{nBd}}}{{Cj{Af}}}Cl}{ce{}{}}0000{{cf}{{A`{c}}}j}{{{b{{A`{c}}}}g}ijCn{{Dj{D`}{{Db{{Dd{e}}}}{Df{Dh}}}}}{}}{{{b{l}}}n}{{{b{l}}{b{C`}}}{{Cb{Af}}}}{{{b{l}}{b{C`}}}{{Cb{{Cd{cAf}}}}}Cf}2{{{b{An}}}{{Cb{{b{Dl}}}}}}{{{b{Bd}}}{{Cb{{b{Dl}}}}}}{{{b{l}}}Ad}`{{{b{c}}}e{}{}}00{{{b{c}}}Af{}}0{c{{Cd{e}}}{}{}}000000000{{{b{c}}}Dn{}}0000<<<<<````````````{{{b{c}}}{{b{e}}}{}{}}00000{{{b{dc}}}{{b{de}}}{}{}}00000{{{h{c}}}{{A`{c}}}j}{{{b{E`}}}E`}{{{b{Eb}}}Eb}{{{b{Ed}}}Ed}{{{b{Ef}}}Ef}{{{b{Eh}}}Eh}{{{b{c}}{b{de}}}n{}{}}0000{{{h{c}}Eh}{{h{c}}}j}{{{h{c}}{Cb{Af}}}{{h{c}}}j}{{{h{c}}Al}{{h{c}}}j}{{{h{c}}Af}{{h{c}}}j}0{{{h{c}}Ej}{{h{c}}}j}2{{}Eb}{{}Ed}{{{b{E`}}{b{dBf}}}Bh}{{{b{Eb}}{b{dBf}}}Bh}{{{b{Ed}}{b{dBf}}}Bh}{{{b{Ef}}{b{dBf}}}Bh}{{{b{Eh}}{b{dBf}}}Bh}{cc{}}{EbE`}1{EdE`}2222{ce{}{}}00000{{{h{c}}e}{{h{c}}}j{{Cj{E`}}}}{{EdEl}Ed}{{EdEf}Ed}{{EbEl}Eb}{{EbEf}Eb}{{{b{c}}}e{}{}}0000{c{{Cd{e}}}{}{}}00000000000{{{b{c}}}Dn{}}00000888888``````````````{{{b{En}}}{{b{C`}}}}{{{b{c}}}{{b{e}}}{}{}}000000{{{b{dc}}}{{b{de}}}{}{}}000000{F`{{Cd{FbBj}}}}{cF`{{Cj{Af}}}}{{F`c}F`{{Ff{{b{C`}}}{{Fd{Af}}}}FhFj}}{{{b{Fb}}}Fb}{{{b{c}}{b{de}}}n{}{}}{{}Fl}{{{b{j}}{b{En}}}{{`{{Fn{}{{Fd{{Cd{nBj}}}}}}}}}}{{{b{Fl}}{b{En}}}{{Cd{nBj}}}}{{{b{Fb}}{b{En}}}{{Cd{nBj}}}}{{{b{En}}{b{En}}}Al}{{{b{G`}}{b{dBf}}}Bh}0{{{b{Gb}}{b{dBf}}}Bh}0{{{b{Gd}}{b{dBf}}}Bh}0{{{b{En}}{b{dBf}}}Bh}{cc{}}000000{ce{}{}}000000{{{b{j}}{b{En}}}{{`{{Fn{}{{Fd{{Cd{{Cb{{Ah{AfAf}}}}G`}}}}}}}}}}{{{b{Fl}}{b{En}}}{{Cd{{Cb{{Ah{AfAf}}}}G`}}}}{{{b{Fb}}{b{En}}}{{Cd{{Cb{{Ah{AfAf}}}}G`}}}}{c{{Cd{FbBj}}}{{Cj{Af}}}}{{{b{j}}{Ah{AfAf}}{b{El}}}{{`{{Fn{}{{Fd{{Cd{EnGb}}}}}}}}}}{{{b{Fl}}{Ah{AfAf}}{b{El}}}{{Cd{EnGb}}}}{{{b{Fb}}{Ah{AfAf}}{b{El}}}{{Cd{EnGb}}}}{{{b{G`}}}{{Cb{{b{Dl}}}}}}{{{b{Gb}}}{{Cb{{b{Dl}}}}}}{{{b{Gd}}}{{Cb{{b{Dl}}}}}}{{{b{c}}}e{}{}}{{{b{c}}}Af{}}00{c{{Cd{e}}}{}{}}0000{Af{{Cd{Enc}}}{}}111111111{{{b{c}}}Dn{}}000000{{{b{j}}En{Ah{AfAf}}{b{El}}}{{`{{Fn{}{{Fd{{Cd{EnGd}}}}}}}}}}{{{b{Fl}}En{Ah{AfAf}}{b{El}}}{{Cd{EnGd}}}}{{{b{Fb}}En{Ah{AfAf}}{b{El}}}{{Cd{EnGd}}}}{{{b{j}}{b{En}}{b{El}}}{{`{{Fn{}{{Fd{{Cd{nBj}}}}}}}}}}{{{b{Fl}}{b{En}}{b{El}}}{{Cd{nBj}}}}{{{b{Fb}}{b{En}}{b{El}}}{{Cd{nBj}}}}{ce{}{}}000000","D":"Mj","p":[[1,"reference"],[0,"mut"],[5,"Key",296],[5,"SessionMiddlewareBuilder",90],[10,"SessionStore",187,297],[5,"Session",0,298],[1,"unit"],[5,"SessionMiddleware",0,299],[10,"Clone",300],[6,"SessionStatus",0,298],[5,"String",301],[5,"HashMap",302],[5,"Ref",303],[1,"bool"],[5,"SessionGetError",0,298],[5,"BoxBody",304],[5,"HttpResponse",305],[5,"SessionInsertError",0,298],[5,"Formatter",306],[8,"Result",306],[5,"Error",307],[5,"HttpRequest",308],[6,"Payload",309],[1,"str"],[6,"Option",310],[6,"Result",311],[10,"DeserializeOwned",312],[10,"SessionExt",0,313],[10,"Into",314],[10,"Serialize",315],[10,"MessageBody",316],[5,"ServiceRequest",317],[17,"Response"],[5,"ServiceResponse",317],[17,"Error"],[5,"Error",318],[10,"Service",319],[10,"Error",320],[5,"TypeId",321],[6,"SessionLifecycle",90],[5,"BrowserSession",90],[5,"PersistentSession",90],[6,"TtlExtensionPolicy",90],[6,"CookieContentSecurity",90],[6,"SameSite",322],[5,"Duration",323],[5,"SessionKey",187,324],[5,"RedisSessionStoreBuilder",187,325],[5,"RedisSessionStore",187,325],[17,"Output"],[10,"Fn",326],[10,"Send",327],[10,"Sync",327],[5,"CookieSessionStore",187,328],[10,"Future",329],[6,"LoadError",187,297],[6,"SaveError",187,297],[6,"UpdateError",187,297]],"r":[[3,298],[4,313],[5,298],[6,298],[7,299],[8,298],[187,328],[189,297],[193,325],[194,325],[195,297],[198,324],[199,297],[200,297]],"b":[[35,"impl-Display-for-SessionGetError"],[36,"impl-Debug-for-SessionGetError"],[37,"impl-Debug-for-SessionInsertError"],[38,"impl-Display-for-SessionInsertError"],[140,"impl-From%3CBrowserSession%3E-for-SessionLifecycle"],[142,"impl-From%3CPersistentSession%3E-for-SessionLifecycle"],[226,"impl-Display-for-LoadError"],[227,"impl-Debug-for-LoadError"],[228,"impl-Debug-for-SaveError"],[229,"impl-Display-for-SaveError"],[230,"impl-Display-for-UpdateError"],[231,"impl-Debug-for-UpdateError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAALsAFgALAAkAFwAFAB4AAAAgAAcALAABAC8AAAA5AAAAPgABAEIAGABnAAsAdAAJAIUABgCNAAAAjwAAAJ8AHADKAA4A3AACAOAACQD5AAEA/QAeAB0BAQAgAQgA","a":{"expires":[154],"max age":[154],"max_age":[154]}}],\ +["actix_settings",{"t":"FFKGFPPPPPPPPPGPPPGPPPPGGPGFGPKPPPPPPIGFPOOOOMONNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNOOOOONNMNNNNNNNNNOOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOO","n":["ActixSettings","Address","ApplySettings","Backlog","BasicSettings","Default","Default","Default","Default","Default","Default","Development","Disabled","EnvVarError","Error","FileExists","InvalidValue","IoError","KeepAlive","Manual","Manual","Manual","Manual","MaxConnectionRate","MaxConnections","Milliseconds","Mode","NoSettings","NumWorkers","Os","Parse","ParseAddressError","ParseBoolError","ParseIntError","Production","Seconds","Seconds","Settings","Timeout","Tls","TomlError","actix","actix","application","application","apply_settings","backlog","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","certificate","client_shutdown","client_timeout","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","enable_compression","enable_log","enabled","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_default_template","from_template","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","host","hosts","into","into","into","into","into","into","into","into","into","into","into","into","into","keep_alive","max_connection_rate","max_connections","mode","num_workers","override_field","override_field_with_env_var","parse","parse","parse","parse","parse","parse","parse","parse","parse","parse_toml","port","private_key","shutdown_timeout","source","tls","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","write_toml_file","column","expected","file","got","line"],"q":[[0,"actix_settings"],[312,"actix_settings::Error"],[317,"actix_settings::settings::address"],[318,"actix_settings::settings::backlog"],[319,"actix_settings::settings::keep_alive"],[320,"actix_settings::settings::max_connection_rate"],[321,"actix_settings::settings::max_connections"],[322,"actix_settings::settings::mode"],[323,"actix_settings::settings::num_workers"],[324,"actix_settings::settings::timeout"],[325,"actix_settings::settings::tls"],[326,"actix_settings::settings"],[327,"core::clone"],[328,"core::result"],[329,"serde::de"],[330,"core::cmp"],[331,"actix_settings::error"],[332,"core::fmt"],[333,"core::str::error"],[334,"std::env"],[335,"core::num::error"],[336,"toml::de"],[337,"std::io::error"],[338,"core::hash"],[339,"actix_settings::parse"],[340,"core::convert"],[341,"std::path"],[342,"core::error"],[343,"core::option"],[344,"alloc::string"],[345,"core::any"]],"i":[0,0,0,0,0,5,6,7,8,10,11,9,6,23,0,23,23,23,0,5,7,8,10,0,0,11,0,0,0,6,0,23,23,23,9,6,11,0,0,0,23,43,14,43,14,1,13,23,4,5,6,7,8,9,10,11,12,13,14,16,23,4,5,6,7,8,9,10,11,12,13,14,16,12,13,13,4,5,6,7,8,9,10,11,12,13,14,16,4,5,6,7,8,9,10,11,12,13,14,16,4,5,6,7,8,9,10,11,12,13,14,16,13,13,12,4,5,6,7,8,9,10,11,12,13,14,16,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8,9,9,9,10,10,10,11,11,11,12,12,12,13,13,13,14,14,14,16,16,16,23,23,4,5,6,7,8,9,10,11,12,13,14,16,23,23,23,23,23,23,4,5,6,7,8,9,10,11,12,13,14,16,14,14,4,5,6,7,8,9,10,11,12,13,14,16,4,13,23,4,5,6,7,8,9,10,11,12,13,14,16,13,13,13,13,13,14,14,36,4,5,6,7,8,9,10,11,14,4,12,13,23,13,4,5,6,7,8,9,10,11,12,13,14,16,23,23,4,5,6,7,8,9,10,11,12,13,14,16,23,4,5,6,7,8,9,10,11,12,13,14,16,23,4,5,6,7,8,9,10,11,12,13,14,16,23,4,5,6,7,8,9,10,11,12,13,14,16,14,44,44,44,44,44],"f":"`````````````````````````````````````````````{{b{d{c}}}b{}}`{{{d{c}}}{{d{e}}}{}{}}000000000000{{{d{fc}}}{{d{fe}}}{}{}}000000000000```{{{d{h}}}h}{{{d{j}}}j}{{{d{l}}}l}{{{d{n}}}n}{{{d{A`}}}A`}{{{d{Ab}}}Ab}{{{d{Ad}}}Ad}{{{d{Af}}}Af}{{{d{Ah}}}Ah}{{{d{Aj}}}Aj}{{{d{{Al{c}}}}}{{Al{c}}}An}{{{d{B`}}}B`}{{{d{c}}{d{fe}}}Bb{}{}}00000000000{c{{Bd{h}}}Bf}{c{{Bd{j}}}Bf}{c{{Bd{l}}}Bf}{c{{Bd{n}}}Bf}{c{{Bd{A`}}}Bf}{c{{Bd{Ab}}}Bf}{c{{Bd{Ad}}}Bf}{c{{Bd{Af}}}Bf}{c{{Bd{Ah}}}Bf}{c{{Bd{Aj}}}Bf}{c{{Bd{{Al{e}}}}}BfBh}{c{{Bd{B`}}}Bf}```{{{d{h}}{d{h}}}Bj}{{{d{j}}{d{j}}}Bj}{{{d{l}}{d{l}}}Bj}{{{d{n}}{d{n}}}Bj}{{{d{A`}}{d{A`}}}Bj}{{{d{Ab}}{d{Ab}}}Bj}{{{d{Ad}}{d{Ad}}}Bj}{{{d{Af}}{d{Af}}}Bj}{{{d{Ah}}{d{Ah}}}Bj}{{{d{Aj}}{d{Aj}}}Bj}{{{d{{Al{c}}}}{d{{Al{c}}}}}BjBl}{{{d{B`}}{d{B`}}}Bj}{{{d{c}}{d{e}}}Bj{}{}}00000000000000000000000000000000000{{{d{Bn}}{d{fC`}}}Cb}0{{{d{h}}{d{fC`}}}Cb}{{{d{j}}{d{fC`}}}Cb}{{{d{l}}{d{fC`}}}Cb}{{{d{n}}{d{fC`}}}Cb}{{{d{A`}}{d{fC`}}}Cb}{{{d{Ab}}{d{fC`}}}Cb}{{{d{Ad}}{d{fC`}}}Cb}{{{d{Af}}{d{fC`}}}Cb}{{{d{Ah}}{d{fC`}}}Cb}{{{d{Aj}}{d{fC`}}}Cb}{{{d{{Al{c}}}}{d{fC`}}}CbCd}{{{d{B`}}{d{fC`}}}Cb}{CfBn}{ChBn}{cc{}}{CjBn}{ClBn}{CnBn}333333333333{{}{{Al{c}}}D`}{{{d{Db}}}{{Bd{{Al{c}}Bn}}}D`}{{{d{h}}{d{fc}}}BbDd}{{{d{j}}{d{fc}}}BbDd}{{{d{l}}{d{fc}}}BbDd}{{{d{n}}{d{fc}}}BbDd}{{{d{A`}}{d{fc}}}BbDd}{{{d{Ab}}{d{fc}}}BbDd}{{{d{Ad}}{d{fc}}}BbDd}{{{d{Af}}{d{fc}}}BbDd}{{{d{Ah}}{d{fc}}}BbDd}{{{d{Aj}}{d{fc}}}BbDd}{{{d{{Al{c}}}}{d{fe}}}BbDfDd}{{{d{B`}}{d{fc}}}BbDd}``{ce{}{}}000000000000`````{{{d{fc}}e}{{Bd{BbBn}}}Dh{{Dj{Db}}}}0{{{d{Db}}}{{Bd{DhBn}}}}{{{d{Db}}}{{Bd{hBn}}}}{{{d{Db}}}{{Bd{jBn}}}}{{{d{Db}}}{{Bd{lBn}}}}{{{d{Db}}}{{Bd{nBn}}}}{{{d{Db}}}{{Bd{A`Bn}}}}{{{d{Db}}}{{Bd{AbBn}}}}{{{d{Db}}}{{Bd{AdBn}}}}{{{d{Db}}}{{Bd{AfBn}}}}{c{{Bd{{Al{e}}Bn}}}{{Dj{Dl}}}D`}```{{{d{Bn}}}{{E`{{d{Dn}}}}}}`{{{d{c}}}e{}{}}00000000000{{{d{c}}}Eb{}}{c{{Bd{e}}}{}{}}0000000000000000000000000{{{d{c}}}Ed{}}000000000000{ce{}{}}000000000000{c{{Bd{BbBn}}}{{Dj{Dl}}}}`````","D":"Ld","p":[[10,"ApplySettings",0],[1,"reference"],[0,"mut"],[5,"Address",0,317],[6,"Backlog",0,318],[6,"KeepAlive",0,319],[6,"MaxConnectionRate",0,320],[6,"MaxConnections",0,321],[6,"Mode",0,322],[6,"NumWorkers",0,323],[6,"Timeout",0,324],[5,"Tls",0,325],[5,"ActixSettings",0,326],[5,"BasicSettings",0],[10,"Clone",327],[5,"NoSettings",0],[1,"unit"],[6,"Result",328],[10,"Deserializer",329],[10,"Deserialize",329],[1,"bool"],[10,"PartialEq",330],[6,"Error",0,331],[5,"Formatter",332],[8,"Result",332],[10,"Debug",332],[5,"ParseBoolError",333],[6,"VarError",334],[5,"ParseIntError",335],[5,"Error",336],[5,"Error",337],[10,"DeserializeOwned",329],[1,"str"],[10,"Hasher",338],[10,"Hash",338],[10,"Parse",0,339],[10,"AsRef",340],[5,"Path",341],[10,"Error",342],[6,"Option",343],[5,"String",344],[5,"TypeId",345],[8,"Settings",0],[15,"InvalidValue",312]],"r":[[0,326],[1,317],[3,318],[14,331],[18,319],[23,320],[24,321],[26,322],[28,323],[30,339],[38,324],[39,325]],"b":[[163,"impl-Display-for-Error"],[164,"impl-Debug-for-Error"],[177,"impl-From%3CParseBoolError%3E-for-Error"],[178,"impl-From%3CVarError%3E-for-Error"],[180,"impl-From%3CParseIntError%3E-for-Error"],[181,"impl-From%3CError%3E-for-Error"],[182,"impl-From%3CError%3E-for-Error"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAANsACQAwABkATQAjAHQAPwC1AAIAxgALAOkABwD1AAAA9wBAADkBBAA=","a":{"https":[39],"ssl":[39]}}],\ +["actix_web_httpauth",{"t":"CCCKFRCCNNNNNNNNNMNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFGPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCCFPFFPPPGKPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKFCCNNNNNNNNNNNNNNMNNNNNNNFNNNNNNNNNNNNNNNNNNNNNNFFGPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNN","n":["extractors","headers","middleware","AuthExtractorConfig","AuthenticationError","Inner","basic","bearer","borrow","borrow_mut","challenge_mut","error_response","fmt","fmt","from","from","into","into_inner","new","status_code","status_code_mut","to_string","try_from","try_into","type_id","vzip","with_error","with_error_description","with_error_uri","BasicAuth","Config","as_ref","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","default","fmt","fmt","from","from","from","from_request","into","into","into_inner","password","realm","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","user_id","vzip","vzip","BearerAuth","Config","Error","InsufficientScope","InvalidRequest","InvalidToken","as_ref","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","cmp","default","eq","fmt","fmt","fmt","fmt","from","from","from","from_request","hash","into","into","into","into_inner","partial_cmp","realm","scope","status_code","to_owned","to_owned","to_owned","to_string","token","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","authorization","www_authenticate","Authorization","Base64DecodeError","Basic","Bearer","Invalid","MissingField","MissingScheme","ParseError","Scheme","ToStrError","Utf8Error","as_mut","as_ref","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","cmp","cmp","cmp","default","eq","eq","eq","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","hash","into","into","into","into","into_scheme","name","new","new","parse","parse","parse","parse","partial_cmp","partial_cmp","partial_cmp","password","source","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","token","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into_pair","try_into_value","try_into_value","try_into_value","type_id","type_id","type_id","type_id","user_id","vzip","vzip","vzip","vzip","Challenge","WwwAuthenticate","basic","bearer","borrow","borrow_mut","clone","clone_into","cmp","default","eq","fmt","from","hash","into","name","parse","partial_cmp","to_bytes","to_owned","try_from","try_into","try_into_pair","try_into_value","type_id","vzip","Basic","borrow","borrow_mut","clone","clone_into","cmp","default","eq","fmt","fmt","from","hash","into","new","partial_cmp","to_owned","to_string","try_from","try_into","try_into_value","type_id","vzip","with_realm","Bearer","BearerBuilder","Error","InsufficientScope","InvalidRequest","InvalidToken","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","cmp","default","default","eq","error","error_description","error_uri","finish","fmt","fmt","fmt","from","from","hash","into","into","partial_cmp","realm","scope","to_owned","to_string","try_from","try_from","try_into","try_into","try_into_value","type_id","type_id","vzip","vzip","HttpAuthentication","basic","bearer","borrow","borrow_mut","clone","clone_into","fmt","from","into","new_transform","to_owned","try_from","try_into","type_id","vzip","with_fn"],"q":[[0,"actix_web_httpauth"],[3,"actix_web_httpauth::extractors"],[29,"actix_web_httpauth::extractors::basic"],[63,"actix_web_httpauth::extractors::bearer"],[119,"actix_web_httpauth::headers"],[121,"actix_web_httpauth::headers::authorization"],[218,"actix_web_httpauth::headers::www_authenticate"],[244,"actix_web_httpauth::headers::www_authenticate::basic"],[267,"actix_web_httpauth::headers::www_authenticate::bearer"],[310,"actix_web_httpauth::middleware"],[327,"actix_web_httpauth::extractors::errors"],[328,"actix_web_httpauth::headers::www_authenticate::challenge"],[329,"actix_web::response::response"],[330,"core::fmt"],[331,"actix_web_httpauth::extractors::config"],[332,"http::status"],[333,"alloc::string"],[334,"core::result"],[335,"core::any"],[336,"actix_web_httpauth::headers::www_authenticate::challenge::bearer::challenge"],[337,"actix_web_httpauth::headers::www_authenticate::challenge::bearer::errors"],[338,"alloc::borrow"],[339,"core::convert"],[340,"actix_web_httpauth::headers::www_authenticate::challenge::basic"],[341,"actix_web_httpauth::headers::authorization::scheme::basic"],[342,"actix_web::request"],[343,"actix_http::payload"],[344,"core::option"],[345,"core::cmp"],[346,"core::hash"],[347,"actix_web_httpauth::headers::authorization::header"],[348,"actix_web_httpauth::headers::authorization::scheme"],[349,"core::clone"],[350,"actix_web_httpauth::headers::authorization::scheme::bearer"],[351,"core::default"],[352,"actix_web_httpauth::headers::authorization::errors"],[353,"http::header::value"],[354,"core::str::error"],[355,"base64::decode"],[356,"http::header::name"],[357,"actix_http::error"],[358,"actix_http::http_message"],[359,"core::error"],[360,"actix_web_httpauth::headers::www_authenticate::header"],[361,"bytes::bytes"],[362,"actix_web_httpauth::headers::www_authenticate::challenge::bearer::builder"],[363,"actix_web::service"],[364,"actix_web::error::error"],[365,"core::future::future"],[366,"core::ops::function"],[367,"actix_web::extract"],[368,"actix_http::body::message_body"],[369,"actix_service"]],"i":[0,0,0,0,0,9,0,0,3,3,3,3,3,3,3,3,3,9,3,3,3,3,3,3,3,3,3,3,3,0,0,20,20,22,20,22,20,22,20,22,20,20,22,20,22,22,22,20,22,20,22,20,20,22,20,22,20,22,20,22,22,20,22,0,0,0,16,16,16,28,28,29,16,28,29,16,28,29,16,28,29,16,16,28,16,28,29,16,16,28,29,16,29,16,28,29,16,28,16,28,28,16,28,29,16,16,29,28,29,16,28,29,16,28,29,16,28,29,16,0,0,0,40,0,0,40,40,40,0,0,40,40,33,33,40,33,24,36,40,33,24,36,33,24,36,33,24,36,33,24,36,33,33,24,36,40,40,33,33,24,24,36,36,40,40,40,40,33,33,24,36,33,40,33,24,36,33,33,24,36,34,33,24,36,33,24,36,24,40,33,24,36,40,33,24,36,36,40,33,24,36,40,33,24,36,33,33,24,36,40,33,24,36,24,40,33,24,36,0,0,0,0,52,52,52,52,52,52,52,52,52,52,52,52,52,52,4,52,52,52,52,52,52,52,0,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,0,0,0,16,16,16,55,15,55,15,15,15,15,15,55,15,15,55,55,55,55,55,15,15,55,15,15,55,15,15,55,55,15,15,55,15,55,15,15,55,15,55,15,0,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56],"f":"````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{d{f{c}}}}}{{b{dc}}}h}{{{b{{f{c}}}}}jh}{{{b{{f{c}}}}{b{dl}}}n{A`h}}{{{b{{f{c}}}}{b{dl}}}nh}{cfAb}{cc{}}{ce{}{}}{{{Ab{}{{Ad{c}}}}}ch}{c{{f{c}}}h}{{{b{{f{c}}}}}Afh}{{{b{d{f{c}}}}}{{b{dAf}}}h}{{{b{c}}}Ah{}}{c{{Aj{e}}}{}{}}0{{{b{c}}}Al{}}7{{{f{An}}B`}{{f{An}}}}{{{f{An}}c}{{f{An}}}{{Bf{{Bd{Bb}}}}}}0``{{{b{Bh}}}{{b{Bj}}}}{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{{b{Bh}}}Bh}{{{b{Bl}}}Bl}{{{b{c}}{b{de}}}Bn{}{}}0{{}Bh}{{{b{Bh}}{b{dl}}}n}{{{b{Bl}}{b{dl}}}n}{cc{}}0{C`Bl}{{{b{Cb}}{b{dCd}}}c{}}{ce{}{}}0{Bhc{}}{{{b{Bl}}}{{Cf{{b{Bb}}}}}}{{Bhc}Bh{{Bf{{Bd{Bb}}}}}}{{{b{c}}}e{}{}}0{c{{Aj{e}}}{}{}}000{{{b{c}}}Al{}}0{{{b{Bl}}}{{b{Bb}}}}77``````{{{b{Ch}}}{{b{An}}}}{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{Ch}}}Ch}{{{b{Cj}}}Cj}{{{b{B`}}}B`}{{{b{c}}{b{de}}}Bn{}{}}00{{{b{B`}}{b{B`}}}Cl}{{}Ch}{{{b{B`}}{b{B`}}}Cn}{{{b{Ch}}{b{dl}}}n}{{{b{Cj}}{b{dl}}}n}{{{b{B`}}{b{dl}}}n}0{cc{}}00{{{b{Cb}}{b{dCd}}}c{}}{{{b{B`}}{b{dc}}}BnD`}{ce{}{}}00{Chc{}}{{{b{B`}}{b{B`}}}{{Cf{Cl}}}}{{Chc}Ch{{Bf{{Bd{Bb}}}}}}0{{{b{B`}}}Af}{{{b{c}}}e{}{}}00{{{b{c}}}Ah{}}{{{b{Cj}}}{{b{Bb}}}}{c{{Aj{e}}}{}{}}00000{{{b{c}}}Al{}}00999`````````````{{{b{d{Db{c}}}}}{{b{dc}}}Dd}{{{b{{Db{c}}}}}{{b{c}}}Dd}{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000{{{b{{Db{c}}}}}{{Db{c}}}{DfDd}}{{{b{C`}}}C`}{{{b{Dh}}}Dh}{{{b{c}}{b{de}}}Bn{}{}}00{{{b{{Db{c}}}}{b{{Db{c}}}}}Cl{DjDd}}{{{b{C`}}{b{C`}}}Cl}{{{b{Dh}}{b{Dh}}}Cl}{{}{{Db{c}}}{DlDd}}{{{b{{Db{c}}}}{b{{Db{c}}}}}Cn{DnDd}}{{{b{C`}}{b{C`}}}Cn}{{{b{Dh}}{b{Dh}}}Cn}{{{b{E`}}{b{dl}}}n}0{{{b{{Db{c}}}}{b{dl}}}nDd}{{{b{{Db{c}}}}{b{dl}}}n{A`Dd}}{{{b{C`}}{b{dl}}}n}0{{{b{Dh}}{b{dl}}}n}0{cc{}}{EbE`}{EdE`}{EfE`}{c{{Db{c}}}Dd}444{{{b{{Db{c}}}}{b{de}}}Bn{EhDd}D`}{ce{}{}}000{{{Db{c}}}cDd}{{}Ej}{{c{Cf{e}}}C`{{Bf{{Bd{Bb}}}}}{{Bf{{Bd{Bb}}}}}}{cDh{{Bf{{Bd{Bb}}}}}}{{{b{El}}}{{Aj{DdE`}}}}{{{b{c}}}{{Aj{{Db{e}}En}}}F`Dd}{{{b{El}}}{{Aj{C`E`}}}}{{{b{El}}}{{Aj{DhE`}}}}{{{b{{Db{c}}}}{b{{Db{c}}}}}{{Cf{Cl}}}{FbDd}}{{{b{C`}}{b{C`}}}{{Cf{Cl}}}}{{{b{Dh}}{b{Dh}}}{{Cf{Cl}}}}{{{b{C`}}}{{Cf{{b{Bb}}}}}}{{{b{E`}}}{{Cf{{b{Fd}}}}}}{{{b{c}}}e{}{}}00{{{b{c}}}Ah{}}000{{{b{Dh}}}{{b{Bb}}}}{c{{Aj{e}}}{}{}}0000000{c{{Aj{{Ff{EjEl}}}}}{}}{{{Db{c}}}{{Aj{Ele}}}Dd{}}{C`{{Aj{Elc}}}{}}{Dh{{Aj{Elc}}}{}}{{{b{c}}}Al{}}000{{{b{C`}}}{{b{Bb}}}}{ce{}{}}000````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{{Fh{c}}}}}{{Fh{c}}}{Dfh}}{{{b{c}}{b{de}}}Bn{}{}}{{{b{{Fh{c}}}}{b{{Fh{c}}}}}Cl{Djh}}{{}{{Fh{c}}}{Dlh}}{{{b{{Fh{c}}}}{b{{Fh{c}}}}}Cn{Dnh}}{{{b{{Fh{c}}}}{b{dl}}}n{A`h}}{cc{}}{{{b{{Fh{c}}}}{b{de}}}Bn{Ehh}D`}:{{}Ej}{{{b{c}}}{{Aj{{Fh{e}}En}}}F`h}{{{b{{Fh{c}}}}{b{{Fh{c}}}}}{{Cf{Cl}}}{Fbh}}{{{b{h}}}Fj}{{{b{c}}}e{}{}}{c{{Aj{e}}}{}{}}0{c{{Aj{{Ff{EjEl}}}}}{}}{{{Fh{c}}}{{Aj{Ele}}}h{}}{{{b{c}}}Al{}}{ce{}{}}`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{Bj}}}Bj}{{{b{c}}{b{de}}}Bn{}{}}{{{b{Bj}}{b{Bj}}}Cl}{{}Bj}{{{b{Bj}}{b{Bj}}}Cn}{{{b{Bj}}{b{dl}}}{{Aj{BnFl}}}}{{{b{Bj}}{b{dl}}}n}{cc{}}{{{b{Bj}}{b{dc}}}BnD`};5{{{b{Bj}}{b{Bj}}}{{Cf{Cl}}}}{{{b{c}}}e{}{}}{{{b{c}}}Ah{}}{c{{Aj{e}}}{}{}}0{Bj{{Aj{Elc}}}{}}{{{b{c}}}Al{}}{ce{}{}}{cBj{{Bf{{Bd{Bb}}}}}}``````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}Fn}{{{b{An}}}An}{{{b{c}}{b{de}}}Bn{}{}}{{{b{An}}{b{An}}}Cl}3{{}An}{{{b{An}}{b{An}}}Cn}{{FnB`}Fn}{{Fnc}Fn{{Bf{{Bd{Bb}}}}}}0{FnAn}{{{b{Fn}}{b{dl}}}n}{{{b{An}}{b{dl}}}n}{{{b{An}}{b{dl}}}{{Aj{BnFl}}}}{cc{}}0{{{b{An}}{b{dc}}}BnD`}{ce{}{}}0{{{b{An}}{b{An}}}{{Cf{Cl}}}}88{{{b{c}}}e{}{}}{{{b{c}}}Ah{}}{c{{Aj{e}}}{}{}}000{An{{Aj{Elc}}}{}}{{{b{c}}}Al{}}066`{e{{G`{Ble}}}{{Gh{}{{Gb{{Aj{Gd{Ff{GfGd}}}}}}}}}{{Gj{GdBl}{{Gb{c}}}}}}{e{{G`{Cje}}}{{Gh{}{{Gb{{Aj{Gd{Ff{GfGd}}}}}}}}}{{Gj{GdCj}{{Gb{c}}}}}}{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{{G`{ce}}}}}{{G`{ce}}}{GlDf}Df}{{{b{c}}{b{de}}}Bn{}{}}{{{b{{G`{ce}}}}{b{dl}}}n{GlA`}A`}?={{{b{{G`{cg}}}}k}mGl{{Gh{}{{Gb{{Aj{GdFf}}}}}}}{{Gj{Gdc}{{Gb{e}}}}}Gn{{Hf{Gd}{{H`{{Hb{i}}}}{Hd{Gf}}}}}{}}<::8>{g{{G`{cg}}}Gl{{Gh{}{{Gb{{Aj{Gd{Ff{GfGd}}}}}}}}}{{Gj{Gdc}{{Gb{e}}}}}}","D":"Md","p":[[1,"reference"],[0,"mut"],[5,"AuthenticationError",3,327],[10,"Challenge",218,328],[5,"HttpResponse",329],[5,"Formatter",330],[8,"Result",330],[10,"Debug",330],[10,"AuthExtractorConfig",3,331],[17,"Inner"],[5,"StatusCode",332],[5,"String",333],[6,"Result",334],[5,"TypeId",335],[5,"Bearer",267,336],[6,"Error",63,337],[1,"str"],[6,"Cow",338],[10,"Into",339],[5,"Config",29],[5,"Basic",244,340],[5,"BasicAuth",29],[1,"unit"],[5,"Basic",121,341],[5,"HttpRequest",342],[6,"Payload",343],[6,"Option",344],[5,"Config",63],[5,"BearerAuth",63],[6,"Ordering",345],[1,"bool"],[10,"Hasher",346],[5,"Authorization",121,347],[10,"Scheme",121,348],[10,"Clone",349],[5,"Bearer",121,350],[10,"Ord",345],[10,"Default",351],[10,"PartialEq",345],[6,"ParseError",121,352],[5,"ToStrError",353],[5,"Utf8Error",354],[6,"DecodeError",355],[10,"Hash",346],[5,"HeaderName",356],[5,"HeaderValue",353],[6,"ParseError",357],[10,"HttpMessage",358],[10,"PartialOrd",345],[10,"Error",359],[1,"tuple"],[5,"WwwAuthenticate",218,360],[5,"Bytes",361],[5,"Error",330],[5,"BearerBuilder",267,362],[5,"HttpAuthentication",310],[17,"Output"],[5,"ServiceRequest",363],[5,"Error",364],[10,"Future",365],[10,"Fn",366],[10,"FromRequest",367],[10,"MessageBody",368],[17,"Response"],[5,"ServiceResponse",363],[17,"Error"],[10,"Service",369]],"r":[[3,331],[4,327],[65,337],[121,347],[123,341],[124,350],[128,352],[129,348],[218,328],[219,360],[220,328],[221,328],[244,340],[267,336],[268,362],[269,337]],"b":[[12,"impl-Debug-for-AuthenticationError%3CC%3E"],[13,"impl-Display-for-AuthenticationError%3CC%3E"],[87,"impl-Display-for-Error"],[88,"impl-Debug-for-Error"],[155,"impl-Debug-for-ParseError"],[156,"impl-Display-for-ParseError"],[157,"impl-Display-for-Authorization%3CS%3E"],[158,"impl-Debug-for-Authorization%3CS%3E"],[159,"impl-Debug-for-Basic"],[160,"impl-Display-for-Basic"],[161,"impl-Display-for-Bearer"],[162,"impl-Debug-for-Bearer"],[164,"impl-From%3CToStrError%3E-for-ParseError"],[165,"impl-From%3CUtf8Error%3E-for-ParseError"],[166,"impl-From%3CDecodeError%3E-for-ParseError"],[252,"impl-Display-for-Basic"],[253,"impl-Debug-for-Basic"],[289,"impl-Debug-for-Bearer"],[290,"impl-Display-for-Bearer"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAN0AJQAJAAEADAADABQAAAAWAAQAIAALAC4AAQAyAAAANQAHAD4AAQBGABMAXQABAGIAAQBnAAMAbAALAIUAHgClAAMArAAAALIAAAC2AAUAvQAHAMYADwDXAAMA3wAHAOgAAADqAAIA7gAGAPYACAAAAQAAAwEHABIBAwAXAQUAIQECACYBAAApAQAALAEKADoBBABBAQUA"}],\ +["actix_ws",{"t":"PPPPPPGFFPPPPPPPPPPPPPGPPGFPPPPPPPGPFPFPPPNNNNNNNNNNNNNNNNNNNNNNNNNNONONNNNNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Abnormal","Again","Away","BadOpCode","Binary","Close","CloseCode","CloseReason","Closed","Continuation","ContinuationFragment","ContinuationNotStarted","ContinuationStarted","Continue","Error","Extension","FirstBinary","FirstText","Invalid","InvalidLength","InvalidOpcode","Io","Item","Last","MaskedFrame","Message","MessageStream","Nop","Normal","Overflow","Ping","Policy","Pong","Protocol","ProtocolError","Restart","Session","Size","StreamingBody","Text","UnmaskedFrame","Unsupported","binary","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","close","code","continuation","description","eq","eq","eq","eq","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","handle","into","into","into","into","into","into","into","into","into","ping","poll_next","poll_next","pong","recv","source","text","to_owned","to_owned","to_owned","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_poll_next","try_poll_next","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip"],"q":[[0,"actix_ws"],[159,"actix_ws::session"],[160,"core::result"],[161,"bytes::bytes"],[162,"core::convert"],[163,"actix_http::ws::proto"],[164,"core::option"],[165,"actix_http::ws::codec"],[166,"core::fmt"],[167,"actix_http::ws"],[168,"alloc::string"],[169,"std::io::error"],[170,"actix_web::request"],[171,"actix_web::types::payload"],[172,"actix_web::response::response"],[173,"actix_ws::fut"],[174,"actix_web::error::error"],[175,"core::pin"],[176,"core::task::wake"],[177,"core::task::poll"],[178,"core::error"],[179,"bytestring"],[180,"core::any"]],"i":[9,9,9,18,13,13,0,0,0,13,18,18,18,12,9,9,12,12,9,18,18,18,0,12,18,0,0,13,9,18,13,9,13,9,0,9,0,9,0,13,18,9,2,32,29,2,5,13,12,9,10,18,32,29,2,5,13,12,9,10,18,2,9,10,2,9,10,2,10,2,10,13,12,9,10,5,5,13,12,9,10,18,18,32,29,2,5,13,12,9,9,10,10,10,18,18,18,18,18,0,32,29,2,5,13,12,9,10,18,2,32,29,2,29,18,2,2,9,10,5,18,32,29,2,5,13,12,9,10,18,32,29,2,5,13,12,9,10,18,32,29,32,29,2,5,13,12,9,10,18,32,29,2,5,13,12,9,10,18],"f":"``````````````````````````````````````````{{{f{bd}}c}{{l{hj}}}{{A`{n}}}}{{{f{c}}}{{f{e}}}{}{}}00000000{{{f{bc}}}{{f{be}}}{}{}}00000000{{{f{d}}}d}{{{f{Ab}}}Ab}{{{f{Ad}}}Ad}{{{f{c}}{f{be}}}h{}{}}00{{d{Af{Ad}}}{{l{hj}}}}`{{{f{bd}}Ah}{{l{hj}}}}`{{{f{Aj}}{f{Aj}}}Al}{{{f{Ah}}{f{Ah}}}Al}{{{f{Ab}}{f{Ab}}}Al}{{{f{Ad}}{f{Ad}}}Al}{{{f{j}}{f{bAn}}}B`}0{{{f{Aj}}{f{bAn}}}{{l{hBb}}}}{{{f{Ah}}{f{bAn}}}{{l{hBb}}}}{{{f{Ab}}{f{bAn}}}{{l{hBb}}}}{{{f{Ad}}{f{bAn}}}{{l{hBb}}}}{{{f{Bd}}{f{bAn}}}{{l{hBb}}}}0{cc{}}00000{BfAb}1{AbAd}{{{Bh{Abc}}}Ad{{A`{Bj}}}}33{BlBd}{BnBd}{C`Bd}{CbBd}{{{f{Cd}}Cf}{{l{{Bh{ChdCj}}Cl}}}}{ce{}{}}00000000{{{f{bd}}{f{{Cn{C`}}}}}{{l{hj}}}}{{{Db{{f{bD`}}}}{f{bDd}}}{{Df{{Af{c}}}}}{}}{{{Db{{f{bCj}}}}{f{bDd}}}{{Df{{Af{c}}}}}{}}2{{{f{bCj}}}{{Af{{l{AjBd}}}}}}{{{f{Bd}}}{{Af{{f{Dh}}}}}}{{{f{bd}}c}{{l{hj}}}{{A`{Dj}}}}{{{f{c}}}e{}{}}00{{{f{c}}}Bj{}}0{c{{l{e}}}{}{}}00000000000000000{{{Db{{f{bc}}}}{f{bDd}}}{{Df{{Af{l}}}}}{}}0{{{f{c}}}Dl{}}00000000;;;;;;;;;","D":"Hf","p":[[0,"mut"],[5,"Session",0,159],[1,"reference"],[1,"unit"],[5,"Closed",0,159],[6,"Result",160],[5,"Bytes",161],[10,"Into",162],[6,"CloseCode",0,163],[5,"CloseReason",0,163],[6,"Option",164],[6,"Item",0,165],[6,"Message",0,165],[1,"bool"],[5,"Formatter",166],[8,"Result",166],[5,"Error",166],[6,"ProtocolError",0,167],[1,"u16"],[1,"tuple"],[5,"String",168],[5,"Error",169],[6,"OpCode",163],[1,"u8"],[1,"usize"],[5,"HttpRequest",170],[5,"Payload",171],[5,"HttpResponse",172],[5,"MessageStream",0,173],[5,"Error",174],[1,"slice"],[5,"StreamingBody",0,173],[5,"Pin",175],[5,"Context",176],[6,"Poll",177],[10,"Error",178],[5,"ByteString",179],[5,"TypeId",180]],"r":[[6,163],[7,163],[8,159],[22,165],[25,165],[26,173],[34,167],[36,159],[38,173]],"b":[[75,"impl-Display-for-Closed"],[76,"impl-Debug-for-Closed"],[81,"impl-Display-for-ProtocolError"],[82,"impl-Debug-for-ProtocolError"],[91,"impl-From%3CCloseCode%3E-for-CloseReason"],[92,"impl-From%3C(CloseCode,+T)%3E-for-CloseReason"],[95,"impl-From%3CError%3E-for-ProtocolError"],[96,"impl-From%3COpCode%3E-for-ProtocolError"],[97,"impl-From%3Cu8%3E-for-ProtocolError"],[98,"impl-From%3Cusize%3E-for-ProtocolError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAFwACwAOAAAAEQABABgAAAAsABcASAALAFoAAABcAAEAYAADAG8AAQBzAAAAdQAqAA=="}]\ ]')); if (typeof exports !== 'undefined') exports.searchIndex = searchIndex; else if (window.initSearch) window.initSearch(searchIndex); diff --git a/settings.html b/settings.html index 6ceba137c..725dd9db0 100644 --- a/settings.html +++ b/settings.html @@ -1 +1 @@ -Settings

Rustdoc settings

Back
\ No newline at end of file +Settings

Rustdoc settings

Back
\ No newline at end of file diff --git a/src/actix_cors/all_or_some.rs.html b/src/actix_cors/all_or_some.rs.html index b2b65d52f..184c17476 100644 --- a/src/actix_cors/all_or_some.rs.html +++ b/src/actix_cors/all_or_some.rs.html @@ -1,4 +1,4 @@ -all_or_some.rs - source
1
+all_or_some.rs - source
1
 2
 3
 4
diff --git a/src/actix_cors/builder.rs.html b/src/actix_cors/builder.rs.html
index 643ee469c..1f06b5d7c 100644
--- a/src/actix_cors/builder.rs.html
+++ b/src/actix_cors/builder.rs.html
@@ -1,4 +1,4 @@
-builder.rs - source
1
+builder.rs - source
1
 2
 3
 4
diff --git a/src/actix_cors/error.rs.html b/src/actix_cors/error.rs.html
index 50710aee2..d32fd54a9 100644
--- a/src/actix_cors/error.rs.html
+++ b/src/actix_cors/error.rs.html
@@ -1,4 +1,4 @@
-error.rs - source
1
+error.rs - source
1
 2
 3
 4
diff --git a/src/actix_cors/inner.rs.html b/src/actix_cors/inner.rs.html
index 63916256b..bf53cfbfa 100644
--- a/src/actix_cors/inner.rs.html
+++ b/src/actix_cors/inner.rs.html
@@ -1,4 +1,4 @@
-inner.rs - source
1
+inner.rs - source
1
 2
 3
 4
diff --git a/src/actix_cors/lib.rs.html b/src/actix_cors/lib.rs.html
index 2bfbb5ed2..350ca0a7a 100644
--- a/src/actix_cors/lib.rs.html
+++ b/src/actix_cors/lib.rs.html
@@ -1,4 +1,4 @@
-lib.rs - source
1
+lib.rs - source
1
 2
 3
 4
diff --git a/src/actix_cors/middleware.rs.html b/src/actix_cors/middleware.rs.html
index 6d179f524..20df8d832 100644
--- a/src/actix_cors/middleware.rs.html
+++ b/src/actix_cors/middleware.rs.html
@@ -1,4 +1,4 @@
-middleware.rs - source
1
+middleware.rs - source
1
 2
 3
 4
diff --git a/src/actix_identity/config.rs.html b/src/actix_identity/config.rs.html
index c632ad7b1..8167341f8 100644
--- a/src/actix_identity/config.rs.html
+++ b/src/actix_identity/config.rs.html
@@ -1,4 +1,4 @@
-config.rs - source
1
+config.rs - source
1
 2
 3
 4
diff --git a/src/actix_identity/error.rs.html b/src/actix_identity/error.rs.html
index 60ac94ae2..4c1b59088 100644
--- a/src/actix_identity/error.rs.html
+++ b/src/actix_identity/error.rs.html
@@ -1,4 +1,4 @@
-error.rs - source
1
+error.rs - source
1
 2
 3
 4
diff --git a/src/actix_identity/identity.rs.html b/src/actix_identity/identity.rs.html
index 2cfef837e..5d618431a 100644
--- a/src/actix_identity/identity.rs.html
+++ b/src/actix_identity/identity.rs.html
@@ -1,4 +1,4 @@
-identity.rs - source
1
+identity.rs - source
1
 2
 3
 4
diff --git a/src/actix_identity/identity_ext.rs.html b/src/actix_identity/identity_ext.rs.html
index 9e5e8a837..7588d529d 100644
--- a/src/actix_identity/identity_ext.rs.html
+++ b/src/actix_identity/identity_ext.rs.html
@@ -1,4 +1,4 @@
-identity_ext.rs - source
1
+identity_ext.rs - source
1
 2
 3
 4
diff --git a/src/actix_identity/lib.rs.html b/src/actix_identity/lib.rs.html
index b1dd9829c..675fb8152 100644
--- a/src/actix_identity/lib.rs.html
+++ b/src/actix_identity/lib.rs.html
@@ -1,4 +1,4 @@
-lib.rs - source
1
+lib.rs - source
1
 2
 3
 4
diff --git a/src/actix_identity/middleware.rs.html b/src/actix_identity/middleware.rs.html
index 83a89aa2b..ecae8f9a6 100644
--- a/src/actix_identity/middleware.rs.html
+++ b/src/actix_identity/middleware.rs.html
@@ -1,4 +1,4 @@
-middleware.rs - source
1
+middleware.rs - source
1
 2
 3
 4
diff --git a/src/actix_limitation/builder.rs.html b/src/actix_limitation/builder.rs.html
index 516a70baa..c88f347a0 100644
--- a/src/actix_limitation/builder.rs.html
+++ b/src/actix_limitation/builder.rs.html
@@ -1,4 +1,4 @@
-builder.rs - source
1
+builder.rs - source
1
 2
 3
 4
diff --git a/src/actix_limitation/errors.rs.html b/src/actix_limitation/errors.rs.html
index 25b1a9466..4c689c3d5 100644
--- a/src/actix_limitation/errors.rs.html
+++ b/src/actix_limitation/errors.rs.html
@@ -1,4 +1,4 @@
-errors.rs - source
1
+errors.rs - source
1
 2
 3
 4
diff --git a/src/actix_limitation/lib.rs.html b/src/actix_limitation/lib.rs.html
index c10fc18a5..037936e25 100644
--- a/src/actix_limitation/lib.rs.html
+++ b/src/actix_limitation/lib.rs.html
@@ -1,4 +1,4 @@
-lib.rs - source
1
+lib.rs - source
1
 2
 3
 4
diff --git a/src/actix_limitation/middleware.rs.html b/src/actix_limitation/middleware.rs.html
index 6bc687515..47509dcb7 100644
--- a/src/actix_limitation/middleware.rs.html
+++ b/src/actix_limitation/middleware.rs.html
@@ -1,4 +1,4 @@
-middleware.rs - source
1
+middleware.rs - source
1
 2
 3
 4
diff --git a/src/actix_limitation/status.rs.html b/src/actix_limitation/status.rs.html
index 9101e3aae..36fab0f9b 100644
--- a/src/actix_limitation/status.rs.html
+++ b/src/actix_limitation/status.rs.html
@@ -1,4 +1,4 @@
-status.rs - source
1
+status.rs - source
1
 2
 3
 4
diff --git a/src/actix_protobuf/lib.rs.html b/src/actix_protobuf/lib.rs.html
index 86106c109..a7db9991c 100644
--- a/src/actix_protobuf/lib.rs.html
+++ b/src/actix_protobuf/lib.rs.html
@@ -1,4 +1,4 @@
-lib.rs - source
1
+lib.rs - source
1
 2
 3
 4
diff --git a/src/actix_session/config.rs.html b/src/actix_session/config.rs.html
index f8e729ed2..9d6395408 100644
--- a/src/actix_session/config.rs.html
+++ b/src/actix_session/config.rs.html
@@ -1,4 +1,4 @@
-config.rs - source
1
+config.rs - source
1
 2
 3
 4
diff --git a/src/actix_session/lib.rs.html b/src/actix_session/lib.rs.html
index d417798fc..c052d4c0e 100644
--- a/src/actix_session/lib.rs.html
+++ b/src/actix_session/lib.rs.html
@@ -1,4 +1,4 @@
-lib.rs - source
1
+lib.rs - source
1
 2
 3
 4
diff --git a/src/actix_session/middleware.rs.html b/src/actix_session/middleware.rs.html
index f3ba9bdbf..701b5f8c1 100644
--- a/src/actix_session/middleware.rs.html
+++ b/src/actix_session/middleware.rs.html
@@ -1,4 +1,4 @@
-middleware.rs - source
1
+middleware.rs - source
1
 2
 3
 4
diff --git a/src/actix_session/session.rs.html b/src/actix_session/session.rs.html
index 1e9323de8..6764f7334 100644
--- a/src/actix_session/session.rs.html
+++ b/src/actix_session/session.rs.html
@@ -1,4 +1,4 @@
-session.rs - source
1
+session.rs - source
1
 2
 3
 4
diff --git a/src/actix_session/session_ext.rs.html b/src/actix_session/session_ext.rs.html
index a0e8a188c..36ef29bc8 100644
--- a/src/actix_session/session_ext.rs.html
+++ b/src/actix_session/session_ext.rs.html
@@ -1,4 +1,4 @@
-session_ext.rs - source
1
+session_ext.rs - source
1
 2
 3
 4
diff --git a/src/actix_session/storage/cookie.rs.html b/src/actix_session/storage/cookie.rs.html
index 50ecd23f6..15b12322e 100644
--- a/src/actix_session/storage/cookie.rs.html
+++ b/src/actix_session/storage/cookie.rs.html
@@ -1,4 +1,4 @@
-cookie.rs - source
1
+cookie.rs - source
1
 2
 3
 4
diff --git a/src/actix_session/storage/interface.rs.html b/src/actix_session/storage/interface.rs.html
index 6615943ae..ca6ebbbb0 100644
--- a/src/actix_session/storage/interface.rs.html
+++ b/src/actix_session/storage/interface.rs.html
@@ -1,4 +1,4 @@
-interface.rs - source
1
+interface.rs - source
1
 2
 3
 4
diff --git a/src/actix_session/storage/mod.rs.html b/src/actix_session/storage/mod.rs.html
index 7aee1dda5..9e0272632 100644
--- a/src/actix_session/storage/mod.rs.html
+++ b/src/actix_session/storage/mod.rs.html
@@ -1,4 +1,4 @@
-mod.rs - source
1
+mod.rs - source
1
 2
 3
 4
diff --git a/src/actix_session/storage/redis_rs.rs.html b/src/actix_session/storage/redis_rs.rs.html
index a1fa937b0..8ed13fa9b 100644
--- a/src/actix_session/storage/redis_rs.rs.html
+++ b/src/actix_session/storage/redis_rs.rs.html
@@ -1,4 +1,4 @@
-redis_rs.rs - source
1
+redis_rs.rs - source
1
 2
 3
 4
diff --git a/src/actix_session/storage/session_key.rs.html b/src/actix_session/storage/session_key.rs.html
index ce5f993c7..0bbceb6ba 100644
--- a/src/actix_session/storage/session_key.rs.html
+++ b/src/actix_session/storage/session_key.rs.html
@@ -1,4 +1,4 @@
-session_key.rs - source
1
+session_key.rs - source
1
 2
 3
 4
diff --git a/src/actix_session/storage/utils.rs.html b/src/actix_session/storage/utils.rs.html
index f919a7579..6b7276507 100644
--- a/src/actix_session/storage/utils.rs.html
+++ b/src/actix_session/storage/utils.rs.html
@@ -1,4 +1,4 @@
-utils.rs - source
1
+utils.rs - source
1
 2
 3
 4
diff --git a/src/actix_settings/error.rs.html b/src/actix_settings/error.rs.html
index 1db385c08..bdcc5cc1a 100644
--- a/src/actix_settings/error.rs.html
+++ b/src/actix_settings/error.rs.html
@@ -1,4 +1,4 @@
-error.rs - source
1
+error.rs - source
1
 2
 3
 4
diff --git a/src/actix_settings/lib.rs.html b/src/actix_settings/lib.rs.html
index 0ae6b51a5..7325cba68 100644
--- a/src/actix_settings/lib.rs.html
+++ b/src/actix_settings/lib.rs.html
@@ -1,4 +1,4 @@
-lib.rs - source
1
+lib.rs - source
1
 2
 3
 4
diff --git a/src/actix_settings/parse.rs.html b/src/actix_settings/parse.rs.html
index 654773717..f216e6d4c 100644
--- a/src/actix_settings/parse.rs.html
+++ b/src/actix_settings/parse.rs.html
@@ -1,4 +1,4 @@
-parse.rs - source
1
+parse.rs - source
1
 2
 3
 4
diff --git a/src/actix_settings/settings/address.rs.html b/src/actix_settings/settings/address.rs.html
index 6c8c79cf0..cfe1709d9 100644
--- a/src/actix_settings/settings/address.rs.html
+++ b/src/actix_settings/settings/address.rs.html
@@ -1,4 +1,4 @@
-address.rs - source
1
+address.rs - source
1
 2
 3
 4
diff --git a/src/actix_settings/settings/backlog.rs.html b/src/actix_settings/settings/backlog.rs.html
index f458bbb69..0e5093433 100644
--- a/src/actix_settings/settings/backlog.rs.html
+++ b/src/actix_settings/settings/backlog.rs.html
@@ -1,4 +1,4 @@
-backlog.rs - source
1
+backlog.rs - source
1
 2
 3
 4
diff --git a/src/actix_settings/settings/keep_alive.rs.html b/src/actix_settings/settings/keep_alive.rs.html
index cf074cbc9..19261edf1 100644
--- a/src/actix_settings/settings/keep_alive.rs.html
+++ b/src/actix_settings/settings/keep_alive.rs.html
@@ -1,4 +1,4 @@
-keep_alive.rs - source
1
+keep_alive.rs - source
1
 2
 3
 4
diff --git a/src/actix_settings/settings/max_connection_rate.rs.html b/src/actix_settings/settings/max_connection_rate.rs.html
index 1d69de612..40f2ba4d4 100644
--- a/src/actix_settings/settings/max_connection_rate.rs.html
+++ b/src/actix_settings/settings/max_connection_rate.rs.html
@@ -1,4 +1,4 @@
-max_connection_rate.rs - source
1
+max_connection_rate.rs - source
1
 2
 3
 4
diff --git a/src/actix_settings/settings/max_connections.rs.html b/src/actix_settings/settings/max_connections.rs.html
index dd83d6d80..b6f6c248f 100644
--- a/src/actix_settings/settings/max_connections.rs.html
+++ b/src/actix_settings/settings/max_connections.rs.html
@@ -1,4 +1,4 @@
-max_connections.rs - source
1
+max_connections.rs - source
1
 2
 3
 4
diff --git a/src/actix_settings/settings/mod.rs.html b/src/actix_settings/settings/mod.rs.html
index 86fc1fc19..044047342 100644
--- a/src/actix_settings/settings/mod.rs.html
+++ b/src/actix_settings/settings/mod.rs.html
@@ -1,4 +1,4 @@
-mod.rs - source
1
+mod.rs - source
1
 2
 3
 4
diff --git a/src/actix_settings/settings/mode.rs.html b/src/actix_settings/settings/mode.rs.html
index 0e5f3fce7..076e70f88 100644
--- a/src/actix_settings/settings/mode.rs.html
+++ b/src/actix_settings/settings/mode.rs.html
@@ -1,4 +1,4 @@
-mode.rs - source
1
+mode.rs - source
1
 2
 3
 4
diff --git a/src/actix_settings/settings/num_workers.rs.html b/src/actix_settings/settings/num_workers.rs.html
index 02d4fe884..a0627efb2 100644
--- a/src/actix_settings/settings/num_workers.rs.html
+++ b/src/actix_settings/settings/num_workers.rs.html
@@ -1,4 +1,4 @@
-num_workers.rs - source
1
+num_workers.rs - source
1
 2
 3
 4
diff --git a/src/actix_settings/settings/timeout.rs.html b/src/actix_settings/settings/timeout.rs.html
index d4eff283e..f97d4b0b7 100644
--- a/src/actix_settings/settings/timeout.rs.html
+++ b/src/actix_settings/settings/timeout.rs.html
@@ -1,4 +1,4 @@
-timeout.rs - source
1
+timeout.rs - source
1
 2
 3
 4
diff --git a/src/actix_settings/settings/tls.rs.html b/src/actix_settings/settings/tls.rs.html
index 61b016382..e4e60d568 100644
--- a/src/actix_settings/settings/tls.rs.html
+++ b/src/actix_settings/settings/tls.rs.html
@@ -1,4 +1,4 @@
-tls.rs - source
1
+tls.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/extractors/basic.rs.html b/src/actix_web_httpauth/extractors/basic.rs.html
index 4f76cf20a..d3b8f06be 100644
--- a/src/actix_web_httpauth/extractors/basic.rs.html
+++ b/src/actix_web_httpauth/extractors/basic.rs.html
@@ -1,4 +1,4 @@
-basic.rs - source
1
+basic.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/extractors/bearer.rs.html b/src/actix_web_httpauth/extractors/bearer.rs.html
index e9e4f350c..4ccb94db6 100644
--- a/src/actix_web_httpauth/extractors/bearer.rs.html
+++ b/src/actix_web_httpauth/extractors/bearer.rs.html
@@ -1,4 +1,4 @@
-bearer.rs - source
1
+bearer.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/extractors/config.rs.html b/src/actix_web_httpauth/extractors/config.rs.html
index e2547c5df..23756ded6 100644
--- a/src/actix_web_httpauth/extractors/config.rs.html
+++ b/src/actix_web_httpauth/extractors/config.rs.html
@@ -1,4 +1,4 @@
-config.rs - source
1
+config.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/extractors/errors.rs.html b/src/actix_web_httpauth/extractors/errors.rs.html
index 22b3e0f2f..50df5f51c 100644
--- a/src/actix_web_httpauth/extractors/errors.rs.html
+++ b/src/actix_web_httpauth/extractors/errors.rs.html
@@ -1,4 +1,4 @@
-errors.rs - source
1
+errors.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/extractors/mod.rs.html b/src/actix_web_httpauth/extractors/mod.rs.html
index 9eeb03cf8..854f3ec86 100644
--- a/src/actix_web_httpauth/extractors/mod.rs.html
+++ b/src/actix_web_httpauth/extractors/mod.rs.html
@@ -1,4 +1,4 @@
-mod.rs - source
1
+mod.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/headers/authorization/errors.rs.html b/src/actix_web_httpauth/headers/authorization/errors.rs.html
index 2c42b276a..655f39e7e 100644
--- a/src/actix_web_httpauth/headers/authorization/errors.rs.html
+++ b/src/actix_web_httpauth/headers/authorization/errors.rs.html
@@ -1,4 +1,4 @@
-errors.rs - source
1
+errors.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/headers/authorization/header.rs.html b/src/actix_web_httpauth/headers/authorization/header.rs.html
index faa31da1d..c26b6f871 100644
--- a/src/actix_web_httpauth/headers/authorization/header.rs.html
+++ b/src/actix_web_httpauth/headers/authorization/header.rs.html
@@ -1,4 +1,4 @@
-header.rs - source
1
+header.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/headers/authorization/mod.rs.html b/src/actix_web_httpauth/headers/authorization/mod.rs.html
index 4f39269a7..6b88305c8 100644
--- a/src/actix_web_httpauth/headers/authorization/mod.rs.html
+++ b/src/actix_web_httpauth/headers/authorization/mod.rs.html
@@ -1,4 +1,4 @@
-mod.rs - source
1
+mod.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/headers/authorization/scheme/basic.rs.html b/src/actix_web_httpauth/headers/authorization/scheme/basic.rs.html
index 4f3f0f096..282310355 100644
--- a/src/actix_web_httpauth/headers/authorization/scheme/basic.rs.html
+++ b/src/actix_web_httpauth/headers/authorization/scheme/basic.rs.html
@@ -1,4 +1,4 @@
-basic.rs - source
1
+basic.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/headers/authorization/scheme/bearer.rs.html b/src/actix_web_httpauth/headers/authorization/scheme/bearer.rs.html
index 23520d939..e8b9fb7b2 100644
--- a/src/actix_web_httpauth/headers/authorization/scheme/bearer.rs.html
+++ b/src/actix_web_httpauth/headers/authorization/scheme/bearer.rs.html
@@ -1,4 +1,4 @@
-bearer.rs - source
1
+bearer.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/headers/authorization/scheme/mod.rs.html b/src/actix_web_httpauth/headers/authorization/scheme/mod.rs.html
index ac40b220a..b21484125 100644
--- a/src/actix_web_httpauth/headers/authorization/scheme/mod.rs.html
+++ b/src/actix_web_httpauth/headers/authorization/scheme/mod.rs.html
@@ -1,4 +1,4 @@
-mod.rs - source
1
+mod.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/headers/mod.rs.html b/src/actix_web_httpauth/headers/mod.rs.html
index 419786e9b..64c4ffe13 100644
--- a/src/actix_web_httpauth/headers/mod.rs.html
+++ b/src/actix_web_httpauth/headers/mod.rs.html
@@ -1,4 +1,4 @@
-mod.rs - source
1
+mod.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/headers/www_authenticate/challenge/basic.rs.html b/src/actix_web_httpauth/headers/www_authenticate/challenge/basic.rs.html
index 365540d55..ff29b484d 100644
--- a/src/actix_web_httpauth/headers/www_authenticate/challenge/basic.rs.html
+++ b/src/actix_web_httpauth/headers/www_authenticate/challenge/basic.rs.html
@@ -1,4 +1,4 @@
-basic.rs - source
1
+basic.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/headers/www_authenticate/challenge/bearer/builder.rs.html b/src/actix_web_httpauth/headers/www_authenticate/challenge/bearer/builder.rs.html
index 9682f4594..893533553 100644
--- a/src/actix_web_httpauth/headers/www_authenticate/challenge/bearer/builder.rs.html
+++ b/src/actix_web_httpauth/headers/www_authenticate/challenge/bearer/builder.rs.html
@@ -1,4 +1,4 @@
-builder.rs - source
1
+builder.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/headers/www_authenticate/challenge/bearer/challenge.rs.html b/src/actix_web_httpauth/headers/www_authenticate/challenge/bearer/challenge.rs.html
index a35234464..cb41d0842 100644
--- a/src/actix_web_httpauth/headers/www_authenticate/challenge/bearer/challenge.rs.html
+++ b/src/actix_web_httpauth/headers/www_authenticate/challenge/bearer/challenge.rs.html
@@ -1,4 +1,4 @@
-challenge.rs - source
1
+challenge.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/headers/www_authenticate/challenge/bearer/errors.rs.html b/src/actix_web_httpauth/headers/www_authenticate/challenge/bearer/errors.rs.html
index 975c8e84b..d68d936c4 100644
--- a/src/actix_web_httpauth/headers/www_authenticate/challenge/bearer/errors.rs.html
+++ b/src/actix_web_httpauth/headers/www_authenticate/challenge/bearer/errors.rs.html
@@ -1,4 +1,4 @@
-errors.rs - source
1
+errors.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/headers/www_authenticate/challenge/bearer/mod.rs.html b/src/actix_web_httpauth/headers/www_authenticate/challenge/bearer/mod.rs.html
index 555c86dfc..84f1e56d4 100644
--- a/src/actix_web_httpauth/headers/www_authenticate/challenge/bearer/mod.rs.html
+++ b/src/actix_web_httpauth/headers/www_authenticate/challenge/bearer/mod.rs.html
@@ -1,4 +1,4 @@
-mod.rs - source
1
+mod.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/headers/www_authenticate/challenge/mod.rs.html b/src/actix_web_httpauth/headers/www_authenticate/challenge/mod.rs.html
index 2ca1dfafc..027cc811b 100644
--- a/src/actix_web_httpauth/headers/www_authenticate/challenge/mod.rs.html
+++ b/src/actix_web_httpauth/headers/www_authenticate/challenge/mod.rs.html
@@ -1,4 +1,4 @@
-mod.rs - source
1
+mod.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/headers/www_authenticate/header.rs.html b/src/actix_web_httpauth/headers/www_authenticate/header.rs.html
index 43c6d8a87..52f37f8cb 100644
--- a/src/actix_web_httpauth/headers/www_authenticate/header.rs.html
+++ b/src/actix_web_httpauth/headers/www_authenticate/header.rs.html
@@ -1,4 +1,4 @@
-header.rs - source
1
+header.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/headers/www_authenticate/mod.rs.html b/src/actix_web_httpauth/headers/www_authenticate/mod.rs.html
index 3e175c5bf..fbe8a014c 100644
--- a/src/actix_web_httpauth/headers/www_authenticate/mod.rs.html
+++ b/src/actix_web_httpauth/headers/www_authenticate/mod.rs.html
@@ -1,4 +1,4 @@
-mod.rs - source
1
+mod.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/lib.rs.html b/src/actix_web_httpauth/lib.rs.html
index 9d3687fa4..c7b5a9f3b 100644
--- a/src/actix_web_httpauth/lib.rs.html
+++ b/src/actix_web_httpauth/lib.rs.html
@@ -1,4 +1,4 @@
-lib.rs - source
1
+lib.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/middleware.rs.html b/src/actix_web_httpauth/middleware.rs.html
index 87b08f07d..64315179b 100644
--- a/src/actix_web_httpauth/middleware.rs.html
+++ b/src/actix_web_httpauth/middleware.rs.html
@@ -1,4 +1,4 @@
-middleware.rs - source
1
+middleware.rs - source
1
 2
 3
 4
diff --git a/src/actix_web_httpauth/utils.rs.html b/src/actix_web_httpauth/utils.rs.html
index fa6a15688..1c43f9ec4 100644
--- a/src/actix_web_httpauth/utils.rs.html
+++ b/src/actix_web_httpauth/utils.rs.html
@@ -1,4 +1,4 @@
-utils.rs - source
1
+utils.rs - source
1
 2
 3
 4
diff --git a/src/actix_ws/fut.rs.html b/src/actix_ws/fut.rs.html
index 2715993e7..9503d2b8a 100644
--- a/src/actix_ws/fut.rs.html
+++ b/src/actix_ws/fut.rs.html
@@ -1,4 +1,4 @@
-fut.rs - source
1
+fut.rs - source
1
 2
 3
 4
diff --git a/src/actix_ws/lib.rs.html b/src/actix_ws/lib.rs.html
index ab05bec22..df923cfb8 100644
--- a/src/actix_ws/lib.rs.html
+++ b/src/actix_ws/lib.rs.html
@@ -1,4 +1,4 @@
-lib.rs - source
1
+lib.rs - source
1
 2
 3
 4
diff --git a/src/actix_ws/session.rs.html b/src/actix_ws/session.rs.html
index 5a5064f1e..b76484660 100644
--- a/src/actix_ws/session.rs.html
+++ b/src/actix_ws/session.rs.html
@@ -1,4 +1,4 @@
-session.rs - source
1
+session.rs - source
1
 2
 3
 4
diff --git a/static.files/search-9d4fa2dd5e5a7e17.js b/static.files/search-0fe7219eb170c82e.js
similarity index 89%
rename from static.files/search-9d4fa2dd5e5a7e17.js
rename to static.files/search-0fe7219eb170c82e.js
index e6aab012a..da6b6b967 100644
--- a/static.files/search-9d4fa2dd5e5a7e17.js
+++ b/static.files/search-0fe7219eb170c82e.js
@@ -1,4 +1,4 @@
-"use strict";if(!Array.prototype.toSpliced){Array.prototype.toSpliced=function(){const me=this.slice();Array.prototype.splice.apply(me,arguments);return me}}(function(){const itemTypes=["keyword","primitive","mod","externcrate","import","struct","enum","fn","type","static","trait","impl","tymethod","method","structfield","variant","macro","associatedtype","constant","associatedconstant","union","foreigntype","existential","attr","derive","traitalias","generic",];const longItemTypes=["keyword","primitive type","module","extern crate","re-export","struct","enum","function","type alias","static","trait","","trait method","method","struct field","enum variant","macro","assoc type","constant","assoc const","union","foreign type","existential type","attribute macro","derive macro","trait alias",];const TY_GENERIC=itemTypes.indexOf("generic");const TY_IMPORT=itemTypes.indexOf("import");const ROOT_PATH=typeof window!=="undefined"?window.rootPath:"../";const UNBOXING_LIMIT=5;const REGEX_IDENT=/\p{ID_Start}\p{ID_Continue}*|_\p{ID_Continue}+/uy;const REGEX_INVALID_TYPE_FILTER=/[^a-z]/ui;function printTab(nb){let iter=0;let foundCurrentTab=false;let foundCurrentResultSet=false;onEachLazy(document.getElementById("search-tabs").childNodes,elem=>{if(nb===iter){addClass(elem,"selected");foundCurrentTab=true}else{removeClass(elem,"selected")}iter+=1});const isTypeSearch=(nb>0||iter===1);iter=0;onEachLazy(document.getElementById("results").childNodes,elem=>{if(nb===iter){addClass(elem,"active");foundCurrentResultSet=true}else{removeClass(elem,"active")}iter+=1});if(foundCurrentTab&&foundCurrentResultSet){searchState.currentTab=nb;const correctionsElem=document.getElementsByClassName("search-corrections");if(isTypeSearch){removeClass(correctionsElem[0],"hidden")}else{addClass(correctionsElem[0],"hidden")}}else if(nb!==0){printTab(0)}}const editDistanceState={current:[],prev:[],prevPrev:[],calculate:function calculate(a,b,limit){if(a.lengthlimit){return limit+1}while(b.length>0&&b[0]===a[0]){a=a.substring(1);b=b.substring(1)}while(b.length>0&&b[b.length-1]===a[a.length-1]){a=a.substring(0,a.length-1);b=b.substring(0,b.length-1)}if(b.length===0){return minDist}const aLength=a.length;const bLength=b.length;for(let i=0;i<=bLength;++i){this.current[i]=0;this.prev[i]=i;this.prevPrev[i]=Number.MAX_VALUE}for(let i=1;i<=aLength;++i){this.current[0]=i;const aIdx=i-1;for(let j=1;j<=bLength;++j){const bIdx=j-1;const substitutionCost=a[aIdx]===b[bIdx]?0:1;this.current[j]=Math.min(this.prev[j]+1,this.current[j-1]+1,this.prev[j-1]+substitutionCost,);if((i>1)&&(j>1)&&(a[aIdx]===b[bIdx-1])&&(a[aIdx-1]===b[bIdx])){this.current[j]=Math.min(this.current[j],this.prevPrev[j-2]+1,)}}const prevPrevTmp=this.prevPrev;this.prevPrev=this.prev;this.prev=this.current;this.current=prevPrevTmp}const distance=this.prev[bLength];return distance<=limit?distance:(limit+1)},};function editDistance(a,b,limit){return editDistanceState.calculate(a,b,limit)}function initSearch(rawSearchIndex){const MAX_RESULTS=200;const NO_TYPE_FILTER=-1;let searchIndex;let searchIndexDeprecated;let searchIndexEmptyDesc;let functionTypeFingerprint;let currentResults;const typeNameIdMap=new Map();const ALIASES=new Map();const typeNameIdOfArray=buildTypeMapIndex("array");const typeNameIdOfSlice=buildTypeMapIndex("slice");const typeNameIdOfArrayOrSlice=buildTypeMapIndex("[]");const typeNameIdOfTuple=buildTypeMapIndex("tuple");const typeNameIdOfUnit=buildTypeMapIndex("unit");const typeNameIdOfTupleOrUnit=buildTypeMapIndex("()");const typeNameIdOfFn=buildTypeMapIndex("fn");const typeNameIdOfFnMut=buildTypeMapIndex("fnmut");const typeNameIdOfFnOnce=buildTypeMapIndex("fnonce");const typeNameIdOfHof=buildTypeMapIndex("->");function buildTypeMapIndex(name,isAssocType){if(name===""||name===null){return null}if(typeNameIdMap.has(name)){const obj=typeNameIdMap.get(name);obj.assocOnly=isAssocType&&obj.assocOnly;return obj.id}else{const id=typeNameIdMap.size;typeNameIdMap.set(name,{id,assocOnly:isAssocType});return id}}function isSpecialStartCharacter(c){return"<\"".indexOf(c)!==-1}function isEndCharacter(c){return"=,>-])".indexOf(c)!==-1}function itemTypeFromName(typename){const index=itemTypes.findIndex(i=>i===typename);if(index<0){throw["Unknown type filter ",typename]}return index}function getStringElem(query,parserState,isInGenerics){if(isInGenerics){throw["Unexpected ","\""," in generics"]}else if(query.literalSearch){throw["Cannot have more than one literal search element"]}else if(parserState.totalElems-parserState.genericsElems>0){throw["Cannot use literal search when there is more than one element"]}parserState.pos+=1;const start=parserState.pos;const end=getIdentEndPosition(parserState);if(parserState.pos>=parserState.length){throw["Unclosed ","\""]}else if(parserState.userQuery[end]!=="\""){throw["Unexpected ",parserState.userQuery[end]," in a string element"]}else if(start===end){throw["Cannot have empty string element"]}parserState.pos+=1;query.literalSearch=true}function isPathStart(parserState){return parserState.userQuery.slice(parserState.pos,parserState.pos+2)==="::"}function isReturnArrow(parserState){return parserState.userQuery.slice(parserState.pos,parserState.pos+2)==="->"}function consumeIdent(parserState){REGEX_IDENT.lastIndex=parserState.pos;const match=parserState.userQuery.match(REGEX_IDENT);if(match){parserState.pos+=match[0].length;return true}return false}function isSeparatorCharacter(c){return c===","||c==="="}function isPathSeparator(c){return c===":"||c===" "}function prevIs(parserState,lookingFor){let pos=parserState.pos;while(pos>0){const c=parserState.userQuery[pos-1];if(c===lookingFor){return true}else if(c!==" "){break}pos-=1}return false}function isLastElemGeneric(elems,parserState){return(elems.length>0&&elems[elems.length-1].generics.length>0)||prevIs(parserState,">")}function skipWhitespace(parserState){while(parserState.pos0){throw["Cannot have more than one element if you use quotes"]}const typeFilter=parserState.typeFilter;parserState.typeFilter=null;if(name==="!"){if(typeFilter!==null&&typeFilter!=="primitive"){throw["Invalid search type: primitive never type ","!"," and ",typeFilter," both specified",]}if(generics.length!==0){throw["Never type ","!"," does not accept generic parameters",]}const bindingName=parserState.isInBinding;parserState.isInBinding=null;return makePrimitiveElement("never",{bindingName})}const quadcolon=/::\s*::/.exec(path);if(path.startsWith("::")){throw["Paths cannot start with ","::"]}else if(path.endsWith("::")){throw["Paths cannot end with ","::"]}else if(quadcolon!==null){throw["Unexpected ",quadcolon[0]]}const pathSegments=path.split(/(?:::\s*)|(?:\s+(?:::\s*)?)/);if(pathSegments.length===0||(pathSegments.length===1&&pathSegments[0]==="")){if(generics.length>0||prevIs(parserState,">")){throw["Found generics without a path"]}else{throw["Unexpected ",parserState.userQuery[parserState.pos]]}}for(const[i,pathSegment]of pathSegments.entries()){if(pathSegment==="!"){if(i!==0){throw["Never type ","!"," is not associated item"]}pathSegments[i]="never"}}parserState.totalElems+=1;if(isInGenerics){parserState.genericsElems+=1}const bindingName=parserState.isInBinding;parserState.isInBinding=null;const bindings=new Map();const pathLast=pathSegments[pathSegments.length-1];return{name:name.trim(),id:null,fullPath:pathSegments,pathWithoutLast:pathSegments.slice(0,pathSegments.length-1),pathLast,normalizedPathLast:pathLast.replace(/_/g,""),generics:generics.filter(gen=>{if(gen.bindingName!==null){if(gen.name!==null){gen.bindingName.generics.unshift(gen)}bindings.set(gen.bindingName.name,gen.bindingName.generics);return false}return true}),bindings,typeFilter,bindingName,}}function getIdentEndPosition(parserState){let afterIdent=consumeIdent(parserState);let end=parserState.pos;let macroExclamation=-1;while(parserState.pos0){throw["Unexpected ",c," after ",parserState.userQuery[parserState.pos-1]," (not a valid identifier)"]}else{throw["Unexpected ",c," (not a valid identifier)"]}parserState.pos+=1;afterIdent=consumeIdent(parserState);end=parserState.pos}if(macroExclamation!==-1){if(parserState.typeFilter===null){parserState.typeFilter="macro"}else if(parserState.typeFilter!=="macro"){throw["Invalid search type: macro ","!"," and ",parserState.typeFilter," both specified",]}end=macroExclamation}return end}function getFilteredNextElem(query,parserState,elems,isInGenerics){const start=parserState.pos;if(parserState.userQuery[parserState.pos]===":"&&!isPathStart(parserState)){throw["Expected type filter before ",":"]}getNextElem(query,parserState,elems,isInGenerics);if(parserState.userQuery[parserState.pos]===":"&&!isPathStart(parserState)){if(parserState.typeFilter!==null){throw["Unexpected ",":"," (expected path after type filter ",parserState.typeFilter+":",")",]}if(elems.length===0){throw["Expected type filter before ",":"]}else if(query.literalSearch){throw["Cannot use quotes on type filter"]}const typeFilterElem=elems.pop();checkExtraTypeFilterCharacters(start,parserState);parserState.typeFilter=typeFilterElem.name;parserState.pos+=1;parserState.totalElems-=1;query.literalSearch=false;getNextElem(query,parserState,elems,isInGenerics)}}function getNextElem(query,parserState,elems,isInGenerics){const generics=[];skipWhitespace(parserState);let start=parserState.pos;let end;if("[(".indexOf(parserState.userQuery[parserState.pos])!==-1){let endChar=")";let name="()";let friendlyName="tuple";if(parserState.userQuery[parserState.pos]==="["){endChar="]";name="[]";friendlyName="slice"}parserState.pos+=1;const{foundSeparator}=getItemsBefore(query,parserState,generics,endChar);const typeFilter=parserState.typeFilter;const bindingName=parserState.isInBinding;parserState.typeFilter=null;parserState.isInBinding=null;for(const gen of generics){if(gen.bindingName!==null){throw["Type parameter ","=",` cannot be within ${friendlyName} `,name]}}if(name==="()"&&!foundSeparator&&generics.length===1&&typeFilter===null){elems.push(generics[0])}else if(name==="()"&&generics.length===1&&generics[0].name==="->"){generics[0].typeFilter=typeFilter;elems.push(generics[0])}else{if(typeFilter!==null&&typeFilter!=="primitive"){throw["Invalid search type: primitive ",name," and ",typeFilter," both specified",]}parserState.totalElems+=1;if(isInGenerics){parserState.genericsElems+=1}elems.push(makePrimitiveElement(name,{bindingName,generics}))}}else if(parserState.userQuery[parserState.pos]==="&"){if(parserState.typeFilter!==null&&parserState.typeFilter!=="primitive"){throw["Invalid search type: primitive ","&"," and ",parserState.typeFilter," both specified",]}parserState.typeFilter=null;parserState.pos+=1;let c=parserState.userQuery[parserState.pos];while(c===" "&&parserState.pos=end){throw["Found generics without a path"]}parserState.pos+=1;getItemsBefore(query,parserState,generics,">")}else if(parserState.pos=end){throw["Found generics without a path"]}if(parserState.isInBinding){throw["Unexpected ","("," after ","="]}parserState.pos+=1;const typeFilter=parserState.typeFilter;parserState.typeFilter=null;getItemsBefore(query,parserState,generics,")");skipWhitespace(parserState);if(isReturnArrow(parserState)){parserState.pos+=2;skipWhitespace(parserState);getFilteredNextElem(query,parserState,generics,isInGenerics);generics[generics.length-1].bindingName=makePrimitiveElement("output")}else{generics.push(makePrimitiveElement(null,{bindingName:makePrimitiveElement("output"),typeFilter:null,}))}parserState.typeFilter=typeFilter}if(isStringElem){skipWhitespace(parserState)}if(start>=end&&generics.length===0){return}if(parserState.userQuery[parserState.pos]==="="){if(parserState.isInBinding){throw["Cannot write ","="," twice in a binding"]}if(!isInGenerics){throw["Type parameter ","="," must be within generics list"]}const name=parserState.userQuery.slice(start,end).trim();if(name==="!"){throw["Type parameter ","="," key cannot be ","!"," never type"]}if(name.includes("!")){throw["Type parameter ","="," key cannot be ","!"," macro"]}if(name.includes("::")){throw["Type parameter ","="," key cannot contain ","::"," path"]}if(name.includes(":")){throw["Type parameter ","="," key cannot contain ",":"," type"]}parserState.isInBinding={name,generics}}else{elems.push(createQueryElement(query,parserState,parserState.userQuery.slice(start,end),generics,isInGenerics,),)}}}function getItemsBefore(query,parserState,elems,endChar){let foundStopChar=true;let foundSeparator=false;const oldTypeFilter=parserState.typeFilter;parserState.typeFilter=null;const oldIsInBinding=parserState.isInBinding;parserState.isInBinding=null;let hofParameters=null;let extra="";if(endChar===">"){extra="<"}else if(endChar==="]"){extra="["}else if(endChar===")"){extra="("}else if(endChar===""){extra="->"}else{extra=endChar}while(parserState.pos"," after ","="]}hofParameters=[...elems];elems.length=0;parserState.pos+=2;foundStopChar=true;foundSeparator=false;continue}else if(c===" "){parserState.pos+=1;continue}else if(isSeparatorCharacter(c)){parserState.pos+=1;foundStopChar=true;foundSeparator=true;continue}else if(c===":"&&isPathStart(parserState)){throw["Unexpected ","::",": paths cannot start with ","::"]}else if(isEndCharacter(c)){throw["Unexpected ",c," after ",extra]}if(!foundStopChar){let extra=[];if(isLastElemGeneric(query.elems,parserState)){extra=[" after ",">"]}else if(prevIs(parserState,"\"")){throw["Cannot have more than one element if you use quotes"]}if(endChar!==""){throw["Expected ",",",", ","=",", or ",endChar,...extra,", found ",c,]}throw["Expected ",","," or ","=",...extra,", found ",c,]}const posBefore=parserState.pos;getFilteredNextElem(query,parserState,elems,endChar!=="");if(endChar!==""&&parserState.pos>=parserState.length){throw["Unclosed ",extra]}if(posBefore===parserState.pos){parserState.pos+=1}foundStopChar=false}if(parserState.pos>=parserState.length&&endChar!==""){throw["Unclosed ",extra]}parserState.pos+=1;if(hofParameters){foundSeparator=false;if([...elems,...hofParameters].some(x=>x.bindingName)||parserState.isInBinding){throw["Unexpected ","="," within ","->"]}const hofElem=makePrimitiveElement("->",{generics:hofParameters,bindings:new Map([["output",[...elems]]]),typeFilter:null,});elems.length=0;elems[0]=hofElem}parserState.typeFilter=oldTypeFilter;parserState.isInBinding=oldIsInBinding;return{foundSeparator}}function checkExtraTypeFilterCharacters(start,parserState){const query=parserState.userQuery.slice(start,parserState.pos).trim();const match=query.match(REGEX_INVALID_TYPE_FILTER);if(match){throw["Unexpected ",match[0]," in type filter (before ",":",")",]}}function parseInput(query,parserState){let foundStopChar=true;while(parserState.pos"){if(isReturnArrow(parserState)){break}throw["Unexpected ",c," (did you mean ","->","?)"]}else if(parserState.pos>0){throw["Unexpected ",c," after ",parserState.userQuery[parserState.pos-1]]}throw["Unexpected ",c]}else if(c===" "){skipWhitespace(parserState);continue}if(!foundStopChar){let extra="";if(isLastElemGeneric(query.elems,parserState)){extra=[" after ",">"]}else if(prevIs(parserState,"\"")){throw["Cannot have more than one element if you use quotes"]}if(parserState.typeFilter!==null){throw["Expected ",","," or ","->",...extra,", found ",c,]}throw["Expected ",",",", ",":"," or ","->",...extra,", found ",c,]}const before=query.elems.length;getFilteredNextElem(query,parserState,query.elems,false);if(query.elems.length===before){parserState.pos+=1}foundStopChar=false}if(parserState.typeFilter!==null){throw["Unexpected ",":"," (expected path after type filter ",parserState.typeFilter+":",")",]}while(parserState.pos"]}break}else{parserState.pos+=1}}}function newParsedQuery(userQuery){return{original:userQuery,userQuery:userQuery.toLowerCase(),elems:[],returned:[],foundElems:0,totalElems:0,literalSearch:false,error:null,correction:null,proposeCorrectionFrom:null,proposeCorrectionTo:null,typeFingerprint:new Uint32Array(4),}}function buildUrl(search,filterCrates){let extra="?search="+encodeURIComponent(search);if(filterCrates!==null){extra+="&filter-crate="+encodeURIComponent(filterCrates)}return getNakedUrl()+extra+window.location.hash}function getFilterCrates(){const elem=document.getElementById("crate-search");if(elem&&elem.value!=="all crates"&&rawSearchIndex.has(elem.value)){return elem.value}return null}function parseQuery(userQuery){function convertTypeFilterOnElem(elem){if(elem.typeFilter!==null){let typeFilter=elem.typeFilter;if(typeFilter==="const"){typeFilter="constant"}elem.typeFilter=itemTypeFromName(typeFilter)}else{elem.typeFilter=NO_TYPE_FILTER}for(const elem2 of elem.generics){convertTypeFilterOnElem(elem2)}for(const constraints of elem.bindings.values()){for(const constraint of constraints){convertTypeFilterOnElem(constraint)}}}userQuery=userQuery.trim().replace(/\r|\n|\t/g," ");const parserState={length:userQuery.length,pos:0,totalElems:0,genericsElems:0,typeFilter:null,isInBinding:null,userQuery:userQuery.toLowerCase(),};let query=newParsedQuery(userQuery);try{parseInput(query,parserState);for(const elem of query.elems){convertTypeFilterOnElem(elem)}for(const elem of query.returned){convertTypeFilterOnElem(elem)}}catch(err){query=newParsedQuery(userQuery);query.error=err;return query}if(!query.literalSearch){query.literalSearch=parserState.totalElems>1}query.foundElems=query.elems.length+query.returned.length;query.totalElems=parserState.totalElems;return query}function createQueryResults(results_in_args,results_returned,results_others,parsedQuery){return{"in_args":results_in_args,"returned":results_returned,"others":results_others,"query":parsedQuery,}}async function execQuery(parsedQuery,filterCrates,currentCrate){const results_others=new Map(),results_in_args=new Map(),results_returned=new Map();function transformResults(results){const duplicates=new Set();const out=[];for(const result of results){if(result.id!==-1){const obj=searchIndex[result.id];obj.dist=result.dist;const res=buildHrefAndPath(obj);obj.displayPath=pathSplitter(res[0]);obj.fullPath=res[2]+"|"+obj.ty;if(duplicates.has(obj.fullPath)){continue}if(obj.ty===TY_IMPORT&&duplicates.has(res[2])){continue}if(duplicates.has(res[2]+"|"+TY_IMPORT)){continue}duplicates.add(obj.fullPath);duplicates.add(res[2]);obj.href=res[1];out.push(obj);if(out.length>=MAX_RESULTS){break}}}return out}async function sortResults(results,isType,preferredCrate){const userQuery=parsedQuery.userQuery;const result_list=[];for(const result of results.values()){result.item=searchIndex[result.id];result.word=searchIndex[result.id].word;result_list.push(result)}result_list.sort((aaa,bbb)=>{let a,b;a=(aaa.word!==userQuery);b=(bbb.word!==userQuery);if(a!==b){return a-b}a=(aaa.index<0);b=(bbb.index<0);if(a!==b){return a-b}a=aaa.path_dist;b=bbb.path_dist;if(a!==b){return a-b}a=aaa.index;b=bbb.index;if(a!==b){return a-b}a=(aaa.dist);b=(bbb.dist);if(a!==b){return a-b}a=searchIndexDeprecated.get(aaa.item.crate).contains(aaa.item.bitIndex);b=searchIndexDeprecated.get(bbb.item.crate).contains(bbb.item.bitIndex);if(a!==b){return a-b}a=(aaa.item.crate!==preferredCrate);b=(bbb.item.crate!==preferredCrate);if(a!==b){return a-b}a=aaa.word.length;b=bbb.word.length;if(a!==b){return a-b}a=aaa.word;b=bbb.word;if(a!==b){return(a>b?+1:-1)}a=searchIndexEmptyDesc.get(aaa.item.crate).contains(aaa.item.bitIndex);b=searchIndexEmptyDesc.get(bbb.item.crate).contains(bbb.item.bitIndex);if(a!==b){return a-b}a=aaa.item.ty;b=bbb.item.ty;if(a!==b){return a-b}a=aaa.item.path;b=bbb.item.path;if(a!==b){return(a>b?+1:-1)}return 0});return transformResults(result_list)}function unifyFunctionTypes(fnTypesIn,queryElems,whereClause,mgensIn,solutionCb,unboxingDepth,){if(unboxingDepth>=UNBOXING_LIMIT){return false}const mgens=mgensIn===null?null:new Map(mgensIn);if(queryElems.length===0){return!solutionCb||solutionCb(mgens)}if(!fnTypesIn||fnTypesIn.length===0){return false}const ql=queryElems.length;const fl=fnTypesIn.length;if(ql===1&&queryElems[0].generics.length===0&&queryElems[0].bindings.size===0){const queryElem=queryElems[0];for(const fnType of fnTypesIn){if(!unifyFunctionTypeIsMatchCandidate(fnType,queryElem,mgens)){continue}if(fnType.id<0&&queryElem.id<0){if(mgens&&mgens.has(fnType.id)&&mgens.get(fnType.id)!==queryElem.id){continue}const mgensScratch=new Map(mgens);mgensScratch.set(fnType.id,queryElem.id);if(!solutionCb||solutionCb(mgensScratch)){return true}}else if(!solutionCb||solutionCb(mgens?new Map(mgens):null)){return true}}for(const fnType of fnTypesIn){if(!unifyFunctionTypeIsUnboxCandidate(fnType,queryElem,whereClause,mgens,unboxingDepth+1,)){continue}if(fnType.id<0){if(mgens&&mgens.has(fnType.id)&&mgens.get(fnType.id)!==0){continue}const mgensScratch=new Map(mgens);mgensScratch.set(fnType.id,0);if(unifyFunctionTypes(whereClause[(-fnType.id)-1],queryElems,whereClause,mgensScratch,solutionCb,unboxingDepth+1,)){return true}}else if(unifyFunctionTypes([...fnType.generics,...Array.from(fnType.bindings.values()).flat()],queryElems,whereClause,mgens?new Map(mgens):null,solutionCb,unboxingDepth+1,)){return true}}return false}const fnTypes=fnTypesIn.slice();const flast=fl-1;const qlast=ql-1;const queryElem=queryElems[qlast];let queryElemsTmp=null;for(let i=flast;i>=0;i-=1){const fnType=fnTypes[i];if(!unifyFunctionTypeIsMatchCandidate(fnType,queryElem,mgens)){continue}let mgensScratch;if(fnType.id<0){mgensScratch=new Map(mgens);if(mgensScratch.has(fnType.id)&&mgensScratch.get(fnType.id)!==queryElem.id){continue}mgensScratch.set(fnType.id,queryElem.id)}else{mgensScratch=mgens}fnTypes[i]=fnTypes[flast];fnTypes.length=flast;if(!queryElemsTmp){queryElemsTmp=queryElems.slice(0,qlast)}const passesUnification=unifyFunctionTypes(fnTypes,queryElemsTmp,whereClause,mgensScratch,mgensScratch=>{if(fnType.generics.length===0&&queryElem.generics.length===0&&fnType.bindings.size===0&&queryElem.bindings.size===0){return!solutionCb||solutionCb(mgensScratch)}const solution=unifyFunctionTypeCheckBindings(fnType,queryElem,whereClause,mgensScratch,unboxingDepth,);if(!solution){return false}const simplifiedGenerics=solution.simplifiedGenerics;for(const simplifiedMgens of solution.mgens){const passesUnification=unifyFunctionTypes(simplifiedGenerics,queryElem.generics,whereClause,simplifiedMgens,solutionCb,unboxingDepth,);if(passesUnification){return true}}return false},unboxingDepth,);if(passesUnification){return true}fnTypes[flast]=fnTypes[i];fnTypes[i]=fnType;fnTypes.length=fl}for(let i=flast;i>=0;i-=1){const fnType=fnTypes[i];if(!unifyFunctionTypeIsUnboxCandidate(fnType,queryElem,whereClause,mgens,unboxingDepth+1,)){continue}let mgensScratch;if(fnType.id<0){mgensScratch=new Map(mgens);if(mgensScratch.has(fnType.id)&&mgensScratch.get(fnType.id)!==0){continue}mgensScratch.set(fnType.id,0)}else{mgensScratch=mgens}const generics=fnType.id<0?whereClause[(-fnType.id)-1]:fnType.generics;const bindings=fnType.bindings?Array.from(fnType.bindings.values()).flat():[];const passesUnification=unifyFunctionTypes(fnTypes.toSpliced(i,1,...generics,...bindings),queryElems,whereClause,mgensScratch,solutionCb,unboxingDepth+1,);if(passesUnification){return true}}return false}function unifyFunctionTypeIsMatchCandidate(fnType,queryElem,mgensIn){if(!typePassesFilter(queryElem.typeFilter,fnType.ty)){return false}if(fnType.id<0&&queryElem.id<0){if(mgensIn){if(mgensIn.has(fnType.id)&&mgensIn.get(fnType.id)!==queryElem.id){return false}for(const[fid,qid]of mgensIn.entries()){if(fnType.id!==fid&&queryElem.id===qid){return false}if(fnType.id===fid&&queryElem.id!==qid){return false}}}return true}else{if(queryElem.id===typeNameIdOfArrayOrSlice&&(fnType.id===typeNameIdOfSlice||fnType.id===typeNameIdOfArray)){}else if(queryElem.id===typeNameIdOfTupleOrUnit&&(fnType.id===typeNameIdOfTuple||fnType.id===typeNameIdOfUnit)){}else if(queryElem.id===typeNameIdOfHof&&(fnType.id===typeNameIdOfFn||fnType.id===typeNameIdOfFnMut||fnType.id===typeNameIdOfFnOnce)){}else if(fnType.id!==queryElem.id||queryElem.id===null){return false}if((fnType.generics.length+fnType.bindings.size)===0&&queryElem.generics.length!==0){return false}if(fnType.bindings.size0){const fnTypePath=fnType.path!==undefined&&fnType.path!==null?fnType.path.split("::"):[];if(queryElemPathLength>fnTypePath.length){return false}let i=0;for(const path of fnTypePath){if(path===queryElem.pathWithoutLast[i]){i+=1;if(i>=queryElemPathLength){break}}}if(i0){let mgensSolutionSet=[mgensIn];for(const[name,constraints]of queryElem.bindings.entries()){if(mgensSolutionSet.length===0){return false}if(!fnType.bindings.has(name)){return false}const fnTypeBindings=fnType.bindings.get(name);mgensSolutionSet=mgensSolutionSet.flatMap(mgens=>{const newSolutions=[];unifyFunctionTypes(fnTypeBindings,constraints,whereClause,mgens,newMgens=>{newSolutions.push(newMgens);return false},unboxingDepth,);return newSolutions})}if(mgensSolutionSet.length===0){return false}const binds=Array.from(fnType.bindings.entries()).flatMap(entry=>{const[name,constraints]=entry;if(queryElem.bindings.has(name)){return[]}else{return constraints}});if(simplifiedGenerics.length>0){simplifiedGenerics=[...simplifiedGenerics,...binds]}else{simplifiedGenerics=binds}return{simplifiedGenerics,mgens:mgensSolutionSet}}return{simplifiedGenerics,mgens:[mgensIn]}}function unifyFunctionTypeIsUnboxCandidate(fnType,queryElem,whereClause,mgens,unboxingDepth,){if(unboxingDepth>=UNBOXING_LIMIT){return false}if(fnType.id<0&&queryElem.id>=0){if(!whereClause){return false}if(mgens&&mgens.has(fnType.id)&&mgens.get(fnType.id)!==0){return false}const mgensTmp=new Map(mgens);mgensTmp.set(fnType.id,null);return checkIfInList(whereClause[(-fnType.id)-1],queryElem,whereClause,mgensTmp,unboxingDepth,)}else if(fnType.generics.length>0||fnType.bindings.size>0){const simplifiedGenerics=[...fnType.generics,...Array.from(fnType.bindings.values()).flat(),];return checkIfInList(simplifiedGenerics,queryElem,whereClause,mgens,unboxingDepth,)}return false}function checkIfInList(list,elem,whereClause,mgens,unboxingDepth){for(const entry of list){if(checkType(entry,elem,whereClause,mgens,unboxingDepth)){return true}}return false}function checkType(row,elem,whereClause,mgens,unboxingDepth){if(unboxingDepth>=UNBOXING_LIMIT){return false}if(row.bindings.size===0&&elem.bindings.size===0){if(elem.id<0&&mgens===null){return row.id<0||checkIfInList(row.generics,elem,whereClause,mgens,unboxingDepth+1,)}if(row.id>0&&elem.id>0&&elem.pathWithoutLast.length===0&&typePassesFilter(elem.typeFilter,row.ty)&&elem.generics.length===0&&elem.id!==typeNameIdOfArrayOrSlice&&elem.id!==typeNameIdOfTupleOrUnit&&elem.id!==typeNameIdOfHof){return row.id===elem.id||checkIfInList(row.generics,elem,whereClause,mgens,unboxingDepth,)}}return unifyFunctionTypes([row],[elem],whereClause,mgens,null,unboxingDepth)}function checkPath(contains,ty){if(contains.length===0){return 0}const maxPathEditDistance=Math.floor(contains.reduce((acc,next)=>acc+next.length,0)/3,);let ret_dist=maxPathEditDistance+1;const path=ty.path.split("::");if(ty.parent&&ty.parent.name){path.push(ty.parent.name.toLowerCase())}const length=path.length;const clength=contains.length;pathiter:for(let i=length-clength;i>=0;i-=1){let dist_total=0;for(let x=0;xmaxPathEditDistance){continue pathiter}dist_total+=dist}}ret_dist=Math.min(ret_dist,Math.round(dist_total/clength))}return ret_dist>maxPathEditDistance?null:ret_dist}function typePassesFilter(filter,type){if(filter<=NO_TYPE_FILTER||filter===type)return true;const name=itemTypes[type];switch(itemTypes[filter]){case"constant":return name==="associatedconstant";case"fn":return name==="method"||name==="tymethod";case"type":return name==="primitive"||name==="associatedtype";case"trait":return name==="traitalias"}return false}function createAliasFromItem(item){return{crate:item.crate,name:item.name,path:item.path,descShard:item.descShard,descIndex:item.descIndex,exactPath:item.exactPath,ty:item.ty,parent:item.parent,type:item.type,is_alias:true,bitIndex:item.bitIndex,implDisambiguator:item.implDisambiguator,}}async function handleAliases(ret,query,filterCrates,currentCrate){const lowerQuery=query.toLowerCase();const aliases=[];const crateAliases=[];if(filterCrates!==null){if(ALIASES.has(filterCrates)&&ALIASES.get(filterCrates).has(lowerQuery)){const query_aliases=ALIASES.get(filterCrates).get(lowerQuery);for(const alias of query_aliases){aliases.push(createAliasFromItem(searchIndex[alias]))}}}else{for(const[crate,crateAliasesIndex]of ALIASES){if(crateAliasesIndex.has(lowerQuery)){const pushTo=crate===currentCrate?crateAliases:aliases;const query_aliases=crateAliasesIndex.get(lowerQuery);for(const alias of query_aliases){pushTo.push(createAliasFromItem(searchIndex[alias]))}}}}const sortFunc=(aaa,bbb)=>{if(aaa.path{return searchIndexEmptyDesc.get(alias.crate).contains(alias.bitIndex)?"":searchState.loadDesc(alias)};const[crateDescs,descs]=await Promise.all([Promise.all(crateAliases.map(fetchDesc)),Promise.all(aliases.map(fetchDesc)),]);const pushFunc=alias=>{alias.alias=query;const res=buildHrefAndPath(alias);alias.displayPath=pathSplitter(res[0]);alias.fullPath=alias.displayPath+alias.name;alias.href=res[1];ret.others.unshift(alias);if(ret.others.length>MAX_RESULTS){ret.others.pop()}};aliases.forEach((alias,i)=>{alias.desc=descs[i]});aliases.forEach(pushFunc);crateAliases.forEach((alias,i)=>{alias.desc=crateDescs[i]});crateAliases.forEach(pushFunc)}function addIntoResults(results,fullId,id,index,dist,path_dist,maxEditDistance){if(dist<=maxEditDistance||index!==-1){if(results.has(fullId)){const result=results.get(fullId);if(result.dontValidate||result.dist<=dist){return}}results.set(fullId,{id:id,index:index,dontValidate:parsedQuery.literalSearch,dist:dist,path_dist:path_dist,})}}function handleSingleArg(row,pos,elem,results_others,results_in_args,results_returned,maxEditDistance,){if(!row||(filterCrates!==null&&row.crate!==filterCrates)){return}let path_dist=0;const fullId=row.id;const tfpDist=compareTypeFingerprints(fullId,parsedQuery.typeFingerprint,);if(tfpDist!==null){const in_args=row.type&&row.type.inputs&&checkIfInList(row.type.inputs,elem,row.type.where_clause,null,0);const returned=row.type&&row.type.output&&checkIfInList(row.type.output,elem,row.type.where_clause,null,0);if(in_args){results_in_args.max_dist=Math.max(results_in_args.max_dist||0,tfpDist);const maxDist=results_in_args.sizenormalizedIndex&&normalizedIndex!==-1)){index=normalizedIndex}if(elem.fullPath.length>1){path_dist=checkPath(elem.pathWithoutLast,row);if(path_dist===null){return}}if(parsedQuery.literalSearch){if(row.word===elem.pathLast){addIntoResults(results_others,fullId,pos,index,0,path_dist)}return}const dist=editDistance(row.normalizedName,elem.normalizedPathLast,maxEditDistance);if(index===-1&&dist>maxEditDistance){return}addIntoResults(results_others,fullId,pos,index,dist,path_dist,maxEditDistance)}function handleArgs(row,pos,results){if(!row||(filterCrates!==null&&row.crate!==filterCrates)||!row.type){return}const tfpDist=compareTypeFingerprints(row.id,parsedQuery.typeFingerprint,);if(tfpDist===null){return}if(results.size>=MAX_RESULTS&&tfpDist>results.max_dist){return}if(!unifyFunctionTypes(row.type.inputs,parsedQuery.elems,row.type.where_clause,null,mgens=>{return unifyFunctionTypes(row.type.output,parsedQuery.returned,row.type.where_clause,mgens,null,0,)},0,)){return}results.max_dist=Math.max(results.max_dist||0,tfpDist);addIntoResults(results,row.id,pos,0,tfpDist,0,Number.MAX_VALUE)}function innerRunQuery(){const queryLen=parsedQuery.elems.reduce((acc,next)=>acc+next.pathLast.length,0)+parsedQuery.returned.reduce((acc,next)=>acc+next.pathLast.length,0);const maxEditDistance=Math.floor(queryLen/3);const genericSymbols=new Map();function convertNameToId(elem,isAssocType){if(typeNameIdMap.has(elem.normalizedPathLast)&&(isAssocType||!typeNameIdMap.get(elem.normalizedPathLast).assocOnly)){elem.id=typeNameIdMap.get(elem.normalizedPathLast).id}else if(!parsedQuery.literalSearch){let match=null;let matchDist=maxEditDistance+1;let matchName="";for(const[name,{id,assocOnly}]of typeNameIdMap){const dist=editDistance(name,elem.normalizedPathLast,maxEditDistance);if(dist<=matchDist&&dist<=maxEditDistance&&(isAssocType||!assocOnly)){if(dist===matchDist&&matchName>name){continue}match=id;matchDist=dist;matchName=name}}if(match!==null){parsedQuery.correction=matchName}elem.id=match}if((elem.id===null&&parsedQuery.totalElems>1&&elem.typeFilter===-1&&elem.generics.length===0&&elem.bindings.size===0)||elem.typeFilter===TY_GENERIC){if(genericSymbols.has(elem.name)){elem.id=genericSymbols.get(elem.name)}else{elem.id=-(genericSymbols.size+1);genericSymbols.set(elem.name,elem.id)}if(elem.typeFilter===-1&&elem.name.length>=3){const maxPartDistance=Math.floor(elem.name.length/3);let matchDist=maxPartDistance+1;let matchName="";for(const name of typeNameIdMap.keys()){const dist=editDistance(name,elem.name,maxPartDistance);if(dist<=matchDist&&dist<=maxPartDistance){if(dist===matchDist&&matchName>name){continue}matchDist=dist;matchName=name}}if(matchName!==""){parsedQuery.proposeCorrectionFrom=elem.name;parsedQuery.proposeCorrectionTo=matchName}}elem.typeFilter=TY_GENERIC}if(elem.generics.length>0&&elem.typeFilter===TY_GENERIC){parsedQuery.error=["Generic type parameter ",elem.name," does not accept generic parameters",]}for(const elem2 of elem.generics){convertNameToId(elem2)}elem.bindings=new Map(Array.from(elem.bindings.entries()).map(entry=>{const[name,constraints]=entry;if(!typeNameIdMap.has(name)){parsedQuery.error=["Type parameter ",name," does not exist",];return[null,[]]}for(const elem2 of constraints){convertNameToId(elem2)}return[typeNameIdMap.get(name).id,constraints]}),)}const fps=new Set();for(const elem of parsedQuery.elems){convertNameToId(elem);buildFunctionTypeFingerprint(elem,parsedQuery.typeFingerprint,fps)}for(const elem of parsedQuery.returned){convertNameToId(elem);buildFunctionTypeFingerprint(elem,parsedQuery.typeFingerprint,fps)}if(parsedQuery.foundElems===1&&parsedQuery.returned.length===0){if(parsedQuery.elems.length===1){const elem=parsedQuery.elems[0];for(let i=0,nSearchIndex=searchIndex.length;i0){const sortQ=(a,b)=>{const ag=a.generics.length===0&&a.bindings.size===0;const bg=b.generics.length===0&&b.bindings.size===0;if(ag!==bg){return ag-bg}const ai=a.id>0;const bi=b.id>0;return ai-bi};parsedQuery.elems.sort(sortQ);parsedQuery.returned.sort(sortQ);for(let i=0,nSearchIndex=searchIndex.length;i{const descs=await Promise.all(list.map(result=>{return searchIndexEmptyDesc.get(result.crate).contains(result.bitIndex)?"":searchState.loadDesc(result)}));for(const[i,result]of list.entries()){result.desc=descs[i]}}));if(parsedQuery.error!==null&&ret.others.length!==0){ret.query.error=null}return ret}function nextTab(direction){const next=(searchState.currentTab+direction+3)%searchState.focusedByTab.length;searchState.focusedByTab[searchState.currentTab]=document.activeElement;printTab(next);focusSearchResult()}function focusSearchResult(){const target=searchState.focusedByTab[searchState.currentTab]||document.querySelectorAll(".search-results.active a").item(0)||document.querySelectorAll("#search-tabs button").item(searchState.currentTab);searchState.focusedByTab[searchState.currentTab]=null;if(target){target.focus()}}function buildHrefAndPath(item){let displayPath;let href;const type=itemTypes[item.ty];const name=item.name;let path=item.path;let exactPath=item.exactPath;if(type==="mod"){displayPath=path+"::";href=ROOT_PATH+path.replace(/::/g,"/")+"/"+name+"/index.html"}else if(type==="import"){displayPath=item.path+"::";href=ROOT_PATH+item.path.replace(/::/g,"/")+"/index.html#reexport."+name}else if(type==="primitive"||type==="keyword"){displayPath="";href=ROOT_PATH+path.replace(/::/g,"/")+"/"+type+"."+name+".html"}else if(type==="externcrate"){displayPath="";href=ROOT_PATH+name+"/index.html"}else if(item.parent!==undefined){const myparent=item.parent;let anchor=type+"."+name;const parentType=itemTypes[myparent.ty];let pageType=parentType;let pageName=myparent.name;exactPath=`${myparent.exactPath}::${myparent.name}`;if(parentType==="primitive"){displayPath=myparent.name+"::"}else if(type==="structfield"&&parentType==="variant"){const enumNameIdx=item.path.lastIndexOf("::");const enumName=item.path.substr(enumNameIdx+2);path=item.path.substr(0,enumNameIdx);displayPath=path+"::"+enumName+"::"+myparent.name+"::";anchor="variant."+myparent.name+".field."+name;pageType="enum";pageName=enumName}else{displayPath=path+"::"+myparent.name+"::"}if(item.implDisambiguator!==null){anchor=item.implDisambiguator+"/"+anchor}href=ROOT_PATH+path.replace(/::/g,"/")+"/"+pageType+"."+pageName+".html#"+anchor}else{displayPath=item.path+"::";href=ROOT_PATH+item.path.replace(/::/g,"/")+"/"+type+"."+name+".html"}return[displayPath,href,`${exactPath}::${name}`]}function pathSplitter(path){const tmp=""+path.replace(/::/g,"::");if(tmp.endsWith("")){return tmp.slice(0,tmp.length-6)}return tmp}async function addTab(array,query,display){const extraClass=display?" active":"";const output=document.createElement("div");if(array.length>0){output.className="search-results "+extraClass;for(const item of array){const name=item.name;const type=itemTypes[item.ty];const longType=longItemTypes[item.ty];const typeName=longType.length!==0?`${longType}`:"?";const link=document.createElement("a");link.className="result-"+type;link.href=item.href;const resultName=document.createElement("div");resultName.className="result-name";resultName.insertAdjacentHTML("beforeend",`${typeName}`);link.appendChild(resultName);let alias=" ";if(item.is_alias){alias=` 
\ +"use strict";if(!Array.prototype.toSpliced){Array.prototype.toSpliced=function(){const me=this.slice();Array.prototype.splice.apply(me,arguments);return me}}(function(){const itemTypes=["keyword","primitive","mod","externcrate","import","struct","enum","fn","type","static","trait","impl","tymethod","method","structfield","variant","macro","associatedtype","constant","associatedconstant","union","foreigntype","existential","attr","derive","traitalias","generic",];const longItemTypes=["keyword","primitive type","module","extern crate","re-export","struct","enum","function","type alias","static","trait","","trait method","method","struct field","enum variant","macro","assoc type","constant","assoc const","union","foreign type","existential type","attribute macro","derive macro","trait alias",];const TY_GENERIC=itemTypes.indexOf("generic");const TY_IMPORT=itemTypes.indexOf("import");const ROOT_PATH=typeof window!=="undefined"?window.rootPath:"../";const UNBOXING_LIMIT=5;const REGEX_IDENT=/\p{ID_Start}\p{ID_Continue}*|_\p{ID_Continue}+/uy;const REGEX_INVALID_TYPE_FILTER=/[^a-z]/ui;function printTab(nb){let iter=0;let foundCurrentTab=false;let foundCurrentResultSet=false;onEachLazy(document.getElementById("search-tabs").childNodes,elem=>{if(nb===iter){addClass(elem,"selected");foundCurrentTab=true}else{removeClass(elem,"selected")}iter+=1});const isTypeSearch=(nb>0||iter===1);iter=0;onEachLazy(document.getElementById("results").childNodes,elem=>{if(nb===iter){addClass(elem,"active");foundCurrentResultSet=true}else{removeClass(elem,"active")}iter+=1});if(foundCurrentTab&&foundCurrentResultSet){searchState.currentTab=nb;const correctionsElem=document.getElementsByClassName("search-corrections");if(isTypeSearch){removeClass(correctionsElem[0],"hidden")}else{addClass(correctionsElem[0],"hidden")}}else if(nb!==0){printTab(0)}}const editDistanceState={current:[],prev:[],prevPrev:[],calculate:function calculate(a,b,limit){if(a.lengthlimit){return limit+1}while(b.length>0&&b[0]===a[0]){a=a.substring(1);b=b.substring(1)}while(b.length>0&&b[b.length-1]===a[a.length-1]){a=a.substring(0,a.length-1);b=b.substring(0,b.length-1)}if(b.length===0){return minDist}const aLength=a.length;const bLength=b.length;for(let i=0;i<=bLength;++i){this.current[i]=0;this.prev[i]=i;this.prevPrev[i]=Number.MAX_VALUE}for(let i=1;i<=aLength;++i){this.current[0]=i;const aIdx=i-1;for(let j=1;j<=bLength;++j){const bIdx=j-1;const substitutionCost=a[aIdx]===b[bIdx]?0:1;this.current[j]=Math.min(this.prev[j]+1,this.current[j-1]+1,this.prev[j-1]+substitutionCost,);if((i>1)&&(j>1)&&(a[aIdx]===b[bIdx-1])&&(a[aIdx-1]===b[bIdx])){this.current[j]=Math.min(this.current[j],this.prevPrev[j-2]+1,)}}const prevPrevTmp=this.prevPrev;this.prevPrev=this.prev;this.prev=this.current;this.current=prevPrevTmp}const distance=this.prev[bLength];return distance<=limit?distance:(limit+1)},};function editDistance(a,b,limit){return editDistanceState.calculate(a,b,limit)}function initSearch(rawSearchIndex){const MAX_RESULTS=200;const NO_TYPE_FILTER=-1;let searchIndex;let searchIndexDeprecated;let searchIndexEmptyDesc;let functionTypeFingerprint;let currentResults;const typeNameIdMap=new Map();const ALIASES=new Map();const typeNameIdOfArray=buildTypeMapIndex("array");const typeNameIdOfSlice=buildTypeMapIndex("slice");const typeNameIdOfArrayOrSlice=buildTypeMapIndex("[]");const typeNameIdOfTuple=buildTypeMapIndex("tuple");const typeNameIdOfUnit=buildTypeMapIndex("unit");const typeNameIdOfTupleOrUnit=buildTypeMapIndex("()");const typeNameIdOfFn=buildTypeMapIndex("fn");const typeNameIdOfFnMut=buildTypeMapIndex("fnmut");const typeNameIdOfFnOnce=buildTypeMapIndex("fnonce");const typeNameIdOfHof=buildTypeMapIndex("->");function buildTypeMapIndex(name,isAssocType){if(name===""||name===null){return null}if(typeNameIdMap.has(name)){const obj=typeNameIdMap.get(name);obj.assocOnly=isAssocType&&obj.assocOnly;return obj.id}else{const id=typeNameIdMap.size;typeNameIdMap.set(name,{id,assocOnly:isAssocType});return id}}function isSpecialStartCharacter(c){return"<\"".indexOf(c)!==-1}function isEndCharacter(c){return"=,>-])".indexOf(c)!==-1}function itemTypeFromName(typename){const index=itemTypes.findIndex(i=>i===typename);if(index<0){throw["Unknown type filter ",typename]}return index}function getStringElem(query,parserState,isInGenerics){if(isInGenerics){throw["Unexpected ","\""," in generics"]}else if(query.literalSearch){throw["Cannot have more than one literal search element"]}else if(parserState.totalElems-parserState.genericsElems>0){throw["Cannot use literal search when there is more than one element"]}parserState.pos+=1;const start=parserState.pos;const end=getIdentEndPosition(parserState);if(parserState.pos>=parserState.length){throw["Unclosed ","\""]}else if(parserState.userQuery[end]!=="\""){throw["Unexpected ",parserState.userQuery[end]," in a string element"]}else if(start===end){throw["Cannot have empty string element"]}parserState.pos+=1;query.literalSearch=true}function isPathStart(parserState){return parserState.userQuery.slice(parserState.pos,parserState.pos+2)==="::"}function isReturnArrow(parserState){return parserState.userQuery.slice(parserState.pos,parserState.pos+2)==="->"}function consumeIdent(parserState){REGEX_IDENT.lastIndex=parserState.pos;const match=parserState.userQuery.match(REGEX_IDENT);if(match){parserState.pos+=match[0].length;return true}return false}function isSeparatorCharacter(c){return c===","||c==="="}function isPathSeparator(c){return c===":"||c===" "}function prevIs(parserState,lookingFor){let pos=parserState.pos;while(pos>0){const c=parserState.userQuery[pos-1];if(c===lookingFor){return true}else if(c!==" "){break}pos-=1}return false}function isLastElemGeneric(elems,parserState){return(elems.length>0&&elems[elems.length-1].generics.length>0)||prevIs(parserState,">")}function skipWhitespace(parserState){while(parserState.pos0){throw["Cannot have more than one element if you use quotes"]}const typeFilter=parserState.typeFilter;parserState.typeFilter=null;if(name==="!"){if(typeFilter!==null&&typeFilter!=="primitive"){throw["Invalid search type: primitive never type ","!"," and ",typeFilter," both specified",]}if(generics.length!==0){throw["Never type ","!"," does not accept generic parameters",]}const bindingName=parserState.isInBinding;parserState.isInBinding=null;return makePrimitiveElement("never",{bindingName})}const quadcolon=/::\s*::/.exec(path);if(path.startsWith("::")){throw["Paths cannot start with ","::"]}else if(path.endsWith("::")){throw["Paths cannot end with ","::"]}else if(quadcolon!==null){throw["Unexpected ",quadcolon[0]]}const pathSegments=path.split(/(?:::\s*)|(?:\s+(?:::\s*)?)/);if(pathSegments.length===0||(pathSegments.length===1&&pathSegments[0]==="")){if(generics.length>0||prevIs(parserState,">")){throw["Found generics without a path"]}else{throw["Unexpected ",parserState.userQuery[parserState.pos]]}}for(const[i,pathSegment]of pathSegments.entries()){if(pathSegment==="!"){if(i!==0){throw["Never type ","!"," is not associated item"]}pathSegments[i]="never"}}parserState.totalElems+=1;if(isInGenerics){parserState.genericsElems+=1}const bindingName=parserState.isInBinding;parserState.isInBinding=null;const bindings=new Map();const pathLast=pathSegments[pathSegments.length-1];return{name:name.trim(),id:null,fullPath:pathSegments,pathWithoutLast:pathSegments.slice(0,pathSegments.length-1),pathLast,normalizedPathLast:pathLast.replace(/_/g,""),generics:generics.filter(gen=>{if(gen.bindingName!==null){if(gen.name!==null){gen.bindingName.generics.unshift(gen)}bindings.set(gen.bindingName.name,gen.bindingName.generics);return false}return true}),bindings,typeFilter,bindingName,}}function getIdentEndPosition(parserState){let afterIdent=consumeIdent(parserState);let end=parserState.pos;let macroExclamation=-1;while(parserState.pos0){throw["Unexpected ",c," after ",parserState.userQuery[parserState.pos-1]," (not a valid identifier)"]}else{throw["Unexpected ",c," (not a valid identifier)"]}parserState.pos+=1;afterIdent=consumeIdent(parserState);end=parserState.pos}if(macroExclamation!==-1){if(parserState.typeFilter===null){parserState.typeFilter="macro"}else if(parserState.typeFilter!=="macro"){throw["Invalid search type: macro ","!"," and ",parserState.typeFilter," both specified",]}end=macroExclamation}return end}function getFilteredNextElem(query,parserState,elems,isInGenerics){const start=parserState.pos;if(parserState.userQuery[parserState.pos]===":"&&!isPathStart(parserState)){throw["Expected type filter before ",":"]}getNextElem(query,parserState,elems,isInGenerics);if(parserState.userQuery[parserState.pos]===":"&&!isPathStart(parserState)){if(parserState.typeFilter!==null){throw["Unexpected ",":"," (expected path after type filter ",parserState.typeFilter+":",")",]}if(elems.length===0){throw["Expected type filter before ",":"]}else if(query.literalSearch){throw["Cannot use quotes on type filter"]}const typeFilterElem=elems.pop();checkExtraTypeFilterCharacters(start,parserState);parserState.typeFilter=typeFilterElem.name;parserState.pos+=1;parserState.totalElems-=1;query.literalSearch=false;getNextElem(query,parserState,elems,isInGenerics)}}function getNextElem(query,parserState,elems,isInGenerics){const generics=[];skipWhitespace(parserState);let start=parserState.pos;let end;if("[(".indexOf(parserState.userQuery[parserState.pos])!==-1){let endChar=")";let name="()";let friendlyName="tuple";if(parserState.userQuery[parserState.pos]==="["){endChar="]";name="[]";friendlyName="slice"}parserState.pos+=1;const{foundSeparator}=getItemsBefore(query,parserState,generics,endChar);const typeFilter=parserState.typeFilter;const bindingName=parserState.isInBinding;parserState.typeFilter=null;parserState.isInBinding=null;for(const gen of generics){if(gen.bindingName!==null){throw["Type parameter ","=",` cannot be within ${friendlyName} `,name]}}if(name==="()"&&!foundSeparator&&generics.length===1&&typeFilter===null){elems.push(generics[0])}else if(name==="()"&&generics.length===1&&generics[0].name==="->"){generics[0].typeFilter=typeFilter;elems.push(generics[0])}else{if(typeFilter!==null&&typeFilter!=="primitive"){throw["Invalid search type: primitive ",name," and ",typeFilter," both specified",]}parserState.totalElems+=1;if(isInGenerics){parserState.genericsElems+=1}elems.push(makePrimitiveElement(name,{bindingName,generics}))}}else if(parserState.userQuery[parserState.pos]==="&"){if(parserState.typeFilter!==null&&parserState.typeFilter!=="primitive"){throw["Invalid search type: primitive ","&"," and ",parserState.typeFilter," both specified",]}parserState.typeFilter=null;parserState.pos+=1;let c=parserState.userQuery[parserState.pos];while(c===" "&&parserState.pos=end){throw["Found generics without a path"]}parserState.pos+=1;getItemsBefore(query,parserState,generics,">")}else if(parserState.pos=end){throw["Found generics without a path"]}if(parserState.isInBinding){throw["Unexpected ","("," after ","="]}parserState.pos+=1;const typeFilter=parserState.typeFilter;parserState.typeFilter=null;getItemsBefore(query,parserState,generics,")");skipWhitespace(parserState);if(isReturnArrow(parserState)){parserState.pos+=2;skipWhitespace(parserState);getFilteredNextElem(query,parserState,generics,isInGenerics);generics[generics.length-1].bindingName=makePrimitiveElement("output")}else{generics.push(makePrimitiveElement(null,{bindingName:makePrimitiveElement("output"),typeFilter:null,}))}parserState.typeFilter=typeFilter}if(isStringElem){skipWhitespace(parserState)}if(start>=end&&generics.length===0){return}if(parserState.userQuery[parserState.pos]==="="){if(parserState.isInBinding){throw["Cannot write ","="," twice in a binding"]}if(!isInGenerics){throw["Type parameter ","="," must be within generics list"]}const name=parserState.userQuery.slice(start,end).trim();if(name==="!"){throw["Type parameter ","="," key cannot be ","!"," never type"]}if(name.includes("!")){throw["Type parameter ","="," key cannot be ","!"," macro"]}if(name.includes("::")){throw["Type parameter ","="," key cannot contain ","::"," path"]}if(name.includes(":")){throw["Type parameter ","="," key cannot contain ",":"," type"]}parserState.isInBinding={name,generics}}else{elems.push(createQueryElement(query,parserState,parserState.userQuery.slice(start,end),generics,isInGenerics,),)}}}function getItemsBefore(query,parserState,elems,endChar){let foundStopChar=true;let foundSeparator=false;const oldTypeFilter=parserState.typeFilter;parserState.typeFilter=null;const oldIsInBinding=parserState.isInBinding;parserState.isInBinding=null;let hofParameters=null;let extra="";if(endChar===">"){extra="<"}else if(endChar==="]"){extra="["}else if(endChar===")"){extra="("}else if(endChar===""){extra="->"}else{extra=endChar}while(parserState.pos"," after ","="]}hofParameters=[...elems];elems.length=0;parserState.pos+=2;foundStopChar=true;foundSeparator=false;continue}else if(c===" "){parserState.pos+=1;continue}else if(isSeparatorCharacter(c)){parserState.pos+=1;foundStopChar=true;foundSeparator=true;continue}else if(c===":"&&isPathStart(parserState)){throw["Unexpected ","::",": paths cannot start with ","::"]}else if(isEndCharacter(c)){throw["Unexpected ",c," after ",extra]}if(!foundStopChar){let extra=[];if(isLastElemGeneric(query.elems,parserState)){extra=[" after ",">"]}else if(prevIs(parserState,"\"")){throw["Cannot have more than one element if you use quotes"]}if(endChar!==""){throw["Expected ",",",", ","=",", or ",endChar,...extra,", found ",c,]}throw["Expected ",","," or ","=",...extra,", found ",c,]}const posBefore=parserState.pos;getFilteredNextElem(query,parserState,elems,endChar!=="");if(endChar!==""&&parserState.pos>=parserState.length){throw["Unclosed ",extra]}if(posBefore===parserState.pos){parserState.pos+=1}foundStopChar=false}if(parserState.pos>=parserState.length&&endChar!==""){throw["Unclosed ",extra]}parserState.pos+=1;if(hofParameters){foundSeparator=false;if([...elems,...hofParameters].some(x=>x.bindingName)||parserState.isInBinding){throw["Unexpected ","="," within ","->"]}const hofElem=makePrimitiveElement("->",{generics:hofParameters,bindings:new Map([["output",[...elems]]]),typeFilter:null,});elems.length=0;elems[0]=hofElem}parserState.typeFilter=oldTypeFilter;parserState.isInBinding=oldIsInBinding;return{foundSeparator}}function checkExtraTypeFilterCharacters(start,parserState){const query=parserState.userQuery.slice(start,parserState.pos).trim();const match=query.match(REGEX_INVALID_TYPE_FILTER);if(match){throw["Unexpected ",match[0]," in type filter (before ",":",")",]}}function parseInput(query,parserState){let foundStopChar=true;while(parserState.pos"){if(isReturnArrow(parserState)){break}throw["Unexpected ",c," (did you mean ","->","?)"]}else if(parserState.pos>0){throw["Unexpected ",c," after ",parserState.userQuery[parserState.pos-1]]}throw["Unexpected ",c]}else if(c===" "){skipWhitespace(parserState);continue}if(!foundStopChar){let extra="";if(isLastElemGeneric(query.elems,parserState)){extra=[" after ",">"]}else if(prevIs(parserState,"\"")){throw["Cannot have more than one element if you use quotes"]}if(parserState.typeFilter!==null){throw["Expected ",","," or ","->",...extra,", found ",c,]}throw["Expected ",",",", ",":"," or ","->",...extra,", found ",c,]}const before=query.elems.length;getFilteredNextElem(query,parserState,query.elems,false);if(query.elems.length===before){parserState.pos+=1}foundStopChar=false}if(parserState.typeFilter!==null){throw["Unexpected ",":"," (expected path after type filter ",parserState.typeFilter+":",")",]}while(parserState.pos"]}break}else{parserState.pos+=1}}}function newParsedQuery(userQuery){return{original:userQuery,userQuery:userQuery.toLowerCase(),elems:[],returned:[],foundElems:0,totalElems:0,literalSearch:false,error:null,correction:null,proposeCorrectionFrom:null,proposeCorrectionTo:null,typeFingerprint:new Uint32Array(4),}}function buildUrl(search,filterCrates){let extra="?search="+encodeURIComponent(search);if(filterCrates!==null){extra+="&filter-crate="+encodeURIComponent(filterCrates)}return getNakedUrl()+extra+window.location.hash}function getFilterCrates(){const elem=document.getElementById("crate-search");if(elem&&elem.value!=="all crates"&&rawSearchIndex.has(elem.value)){return elem.value}return null}function parseQuery(userQuery){function convertTypeFilterOnElem(elem){if(elem.typeFilter!==null){let typeFilter=elem.typeFilter;if(typeFilter==="const"){typeFilter="constant"}elem.typeFilter=itemTypeFromName(typeFilter)}else{elem.typeFilter=NO_TYPE_FILTER}for(const elem2 of elem.generics){convertTypeFilterOnElem(elem2)}for(const constraints of elem.bindings.values()){for(const constraint of constraints){convertTypeFilterOnElem(constraint)}}}userQuery=userQuery.trim().replace(/\r|\n|\t/g," ");const parserState={length:userQuery.length,pos:0,totalElems:0,genericsElems:0,typeFilter:null,isInBinding:null,userQuery:userQuery.toLowerCase(),};let query=newParsedQuery(userQuery);try{parseInput(query,parserState);for(const elem of query.elems){convertTypeFilterOnElem(elem)}for(const elem of query.returned){convertTypeFilterOnElem(elem)}}catch(err){query=newParsedQuery(userQuery);query.error=err;return query}if(!query.literalSearch){query.literalSearch=parserState.totalElems>1}query.foundElems=query.elems.length+query.returned.length;query.totalElems=parserState.totalElems;return query}function createQueryResults(results_in_args,results_returned,results_others,parsedQuery){return{"in_args":results_in_args,"returned":results_returned,"others":results_others,"query":parsedQuery,}}async function execQuery(parsedQuery,filterCrates,currentCrate){const results_others=new Map(),results_in_args=new Map(),results_returned=new Map();function transformResults(results){const duplicates=new Set();const out=[];for(const result of results){if(result.id!==-1){const obj=searchIndex[result.id];obj.dist=result.dist;const res=buildHrefAndPath(obj);obj.displayPath=pathSplitter(res[0]);obj.fullPath=res[2]+"|"+obj.ty;if(duplicates.has(obj.fullPath)){continue}if(obj.ty===TY_IMPORT&&duplicates.has(res[2])){continue}if(duplicates.has(res[2]+"|"+TY_IMPORT)){continue}duplicates.add(obj.fullPath);duplicates.add(res[2]);obj.href=res[1];out.push(obj);if(out.length>=MAX_RESULTS){break}}}return out}async function sortResults(results,isType,preferredCrate){const userQuery=parsedQuery.userQuery;const result_list=[];for(const result of results.values()){result.item=searchIndex[result.id];result.word=searchIndex[result.id].word;result_list.push(result)}result_list.sort((aaa,bbb)=>{let a,b;a=(aaa.word!==userQuery);b=(bbb.word!==userQuery);if(a!==b){return a-b}a=(aaa.index<0);b=(bbb.index<0);if(a!==b){return a-b}a=aaa.path_dist;b=bbb.path_dist;if(a!==b){return a-b}a=aaa.index;b=bbb.index;if(a!==b){return a-b}a=(aaa.dist);b=(bbb.dist);if(a!==b){return a-b}a=searchIndexDeprecated.get(aaa.item.crate).contains(aaa.item.bitIndex);b=searchIndexDeprecated.get(bbb.item.crate).contains(bbb.item.bitIndex);if(a!==b){return a-b}a=(aaa.item.crate!==preferredCrate);b=(bbb.item.crate!==preferredCrate);if(a!==b){return a-b}a=aaa.word.length;b=bbb.word.length;if(a!==b){return a-b}a=aaa.word;b=bbb.word;if(a!==b){return(a>b?+1:-1)}a=searchIndexEmptyDesc.get(aaa.item.crate).contains(aaa.item.bitIndex);b=searchIndexEmptyDesc.get(bbb.item.crate).contains(bbb.item.bitIndex);if(a!==b){return a-b}a=aaa.item.ty;b=bbb.item.ty;if(a!==b){return a-b}a=aaa.item.path;b=bbb.item.path;if(a!==b){return(a>b?+1:-1)}return 0});return transformResults(result_list)}function unifyFunctionTypes(fnTypesIn,queryElems,whereClause,mgensIn,solutionCb,unboxingDepth,){if(unboxingDepth>=UNBOXING_LIMIT){return false}const mgens=mgensIn===null?null:new Map(mgensIn);if(queryElems.length===0){return!solutionCb||solutionCb(mgens)}if(!fnTypesIn||fnTypesIn.length===0){return false}const ql=queryElems.length;const fl=fnTypesIn.length;if(ql===1&&queryElems[0].generics.length===0&&queryElems[0].bindings.size===0){const queryElem=queryElems[0];for(const fnType of fnTypesIn){if(!unifyFunctionTypeIsMatchCandidate(fnType,queryElem,mgens)){continue}if(fnType.id<0&&queryElem.id<0){if(mgens&&mgens.has(fnType.id)&&mgens.get(fnType.id)!==queryElem.id){continue}const mgensScratch=new Map(mgens);mgensScratch.set(fnType.id,queryElem.id);if(!solutionCb||solutionCb(mgensScratch)){return true}}else if(!solutionCb||solutionCb(mgens?new Map(mgens):null)){return true}}for(const fnType of fnTypesIn){if(!unifyFunctionTypeIsUnboxCandidate(fnType,queryElem,whereClause,mgens,unboxingDepth+1,)){continue}if(fnType.id<0){if(mgens&&mgens.has(fnType.id)&&mgens.get(fnType.id)!==0){continue}const mgensScratch=new Map(mgens);mgensScratch.set(fnType.id,0);if(unifyFunctionTypes(whereClause[(-fnType.id)-1],queryElems,whereClause,mgensScratch,solutionCb,unboxingDepth+1,)){return true}}else if(unifyFunctionTypes([...fnType.generics,...Array.from(fnType.bindings.values()).flat()],queryElems,whereClause,mgens?new Map(mgens):null,solutionCb,unboxingDepth+1,)){return true}}return false}const fnTypes=fnTypesIn.slice();const flast=fl-1;const qlast=ql-1;const queryElem=queryElems[qlast];let queryElemsTmp=null;for(let i=flast;i>=0;i-=1){const fnType=fnTypes[i];if(!unifyFunctionTypeIsMatchCandidate(fnType,queryElem,mgens)){continue}let mgensScratch;if(fnType.id<0){mgensScratch=new Map(mgens);if(mgensScratch.has(fnType.id)&&mgensScratch.get(fnType.id)!==queryElem.id){continue}mgensScratch.set(fnType.id,queryElem.id)}else{mgensScratch=mgens}fnTypes[i]=fnTypes[flast];fnTypes.length=flast;if(!queryElemsTmp){queryElemsTmp=queryElems.slice(0,qlast)}const passesUnification=unifyFunctionTypes(fnTypes,queryElemsTmp,whereClause,mgensScratch,mgensScratch=>{if(fnType.generics.length===0&&queryElem.generics.length===0&&fnType.bindings.size===0&&queryElem.bindings.size===0){return!solutionCb||solutionCb(mgensScratch)}const solution=unifyFunctionTypeCheckBindings(fnType,queryElem,whereClause,mgensScratch,unboxingDepth,);if(!solution){return false}const simplifiedGenerics=solution.simplifiedGenerics;for(const simplifiedMgens of solution.mgens){const passesUnification=unifyFunctionTypes(simplifiedGenerics,queryElem.generics,whereClause,simplifiedMgens,solutionCb,unboxingDepth,);if(passesUnification){return true}}return false},unboxingDepth,);if(passesUnification){return true}fnTypes[flast]=fnTypes[i];fnTypes[i]=fnType;fnTypes.length=fl}for(let i=flast;i>=0;i-=1){const fnType=fnTypes[i];if(!unifyFunctionTypeIsUnboxCandidate(fnType,queryElem,whereClause,mgens,unboxingDepth+1,)){continue}let mgensScratch;if(fnType.id<0){mgensScratch=new Map(mgens);if(mgensScratch.has(fnType.id)&&mgensScratch.get(fnType.id)!==0){continue}mgensScratch.set(fnType.id,0)}else{mgensScratch=mgens}const generics=fnType.id<0?whereClause[(-fnType.id)-1]:fnType.generics;const bindings=fnType.bindings?Array.from(fnType.bindings.values()).flat():[];const passesUnification=unifyFunctionTypes(fnTypes.toSpliced(i,1,...generics,...bindings),queryElems,whereClause,mgensScratch,solutionCb,unboxingDepth+1,);if(passesUnification){return true}}return false}function unifyFunctionTypeIsMatchCandidate(fnType,queryElem,mgensIn){if(!typePassesFilter(queryElem.typeFilter,fnType.ty)){return false}if(fnType.id<0&&queryElem.id<0){if(mgensIn){if(mgensIn.has(fnType.id)&&mgensIn.get(fnType.id)!==queryElem.id){return false}for(const[fid,qid]of mgensIn.entries()){if(fnType.id!==fid&&queryElem.id===qid){return false}if(fnType.id===fid&&queryElem.id!==qid){return false}}}return true}else{if(queryElem.id===typeNameIdOfArrayOrSlice&&(fnType.id===typeNameIdOfSlice||fnType.id===typeNameIdOfArray)){}else if(queryElem.id===typeNameIdOfTupleOrUnit&&(fnType.id===typeNameIdOfTuple||fnType.id===typeNameIdOfUnit)){}else if(queryElem.id===typeNameIdOfHof&&(fnType.id===typeNameIdOfFn||fnType.id===typeNameIdOfFnMut||fnType.id===typeNameIdOfFnOnce)){}else if(fnType.id!==queryElem.id||queryElem.id===null){return false}if((fnType.generics.length+fnType.bindings.size)===0&&queryElem.generics.length!==0){return false}if(fnType.bindings.size0){const fnTypePath=fnType.path!==undefined&&fnType.path!==null?fnType.path.split("::"):[];if(queryElemPathLength>fnTypePath.length){return false}let i=0;for(const path of fnTypePath){if(path===queryElem.pathWithoutLast[i]){i+=1;if(i>=queryElemPathLength){break}}}if(i0){let mgensSolutionSet=[mgensIn];for(const[name,constraints]of queryElem.bindings.entries()){if(mgensSolutionSet.length===0){return false}if(!fnType.bindings.has(name)){return false}const fnTypeBindings=fnType.bindings.get(name);mgensSolutionSet=mgensSolutionSet.flatMap(mgens=>{const newSolutions=[];unifyFunctionTypes(fnTypeBindings,constraints,whereClause,mgens,newMgens=>{newSolutions.push(newMgens);return false},unboxingDepth,);return newSolutions})}if(mgensSolutionSet.length===0){return false}const binds=Array.from(fnType.bindings.entries()).flatMap(entry=>{const[name,constraints]=entry;if(queryElem.bindings.has(name)){return[]}else{return constraints}});if(simplifiedGenerics.length>0){simplifiedGenerics=[...simplifiedGenerics,...binds]}else{simplifiedGenerics=binds}return{simplifiedGenerics,mgens:mgensSolutionSet}}return{simplifiedGenerics,mgens:[mgensIn]}}function unifyFunctionTypeIsUnboxCandidate(fnType,queryElem,whereClause,mgens,unboxingDepth,){if(unboxingDepth>=UNBOXING_LIMIT){return false}if(fnType.id<0&&queryElem.id>=0){if(!whereClause){return false}if(mgens&&mgens.has(fnType.id)&&mgens.get(fnType.id)!==0){return false}const mgensTmp=new Map(mgens);mgensTmp.set(fnType.id,null);return checkIfInList(whereClause[(-fnType.id)-1],queryElem,whereClause,mgensTmp,unboxingDepth,)}else if(fnType.generics.length>0||fnType.bindings.size>0){const simplifiedGenerics=[...fnType.generics,...Array.from(fnType.bindings.values()).flat(),];return checkIfInList(simplifiedGenerics,queryElem,whereClause,mgens,unboxingDepth,)}return false}function checkIfInList(list,elem,whereClause,mgens,unboxingDepth){for(const entry of list){if(checkType(entry,elem,whereClause,mgens,unboxingDepth)){return true}}return false}function checkType(row,elem,whereClause,mgens,unboxingDepth){if(unboxingDepth>=UNBOXING_LIMIT){return false}if(row.bindings.size===0&&elem.bindings.size===0){if(elem.id<0&&mgens===null){return row.id<0||checkIfInList(row.generics,elem,whereClause,mgens,unboxingDepth+1,)}if(row.id>0&&elem.id>0&&elem.pathWithoutLast.length===0&&typePassesFilter(elem.typeFilter,row.ty)&&elem.generics.length===0&&elem.id!==typeNameIdOfArrayOrSlice&&elem.id!==typeNameIdOfTupleOrUnit&&elem.id!==typeNameIdOfHof){return row.id===elem.id||checkIfInList(row.generics,elem,whereClause,mgens,unboxingDepth,)}}return unifyFunctionTypes([row],[elem],whereClause,mgens,null,unboxingDepth)}function checkPath(contains,ty){if(contains.length===0){return 0}const maxPathEditDistance=Math.floor(contains.reduce((acc,next)=>acc+next.length,0)/3,);let ret_dist=maxPathEditDistance+1;const path=ty.path.split("::");if(ty.parent&&ty.parent.name){path.push(ty.parent.name.toLowerCase())}const length=path.length;const clength=contains.length;pathiter:for(let i=length-clength;i>=0;i-=1){let dist_total=0;for(let x=0;xmaxPathEditDistance){continue pathiter}dist_total+=dist}}ret_dist=Math.min(ret_dist,Math.round(dist_total/clength))}return ret_dist>maxPathEditDistance?null:ret_dist}function typePassesFilter(filter,type){if(filter<=NO_TYPE_FILTER||filter===type)return true;const name=itemTypes[type];switch(itemTypes[filter]){case"constant":return name==="associatedconstant";case"fn":return name==="method"||name==="tymethod";case"type":return name==="primitive"||name==="associatedtype";case"trait":return name==="traitalias"}return false}function createAliasFromItem(item){return{crate:item.crate,name:item.name,path:item.path,descShard:item.descShard,descIndex:item.descIndex,exactPath:item.exactPath,ty:item.ty,parent:item.parent,type:item.type,is_alias:true,bitIndex:item.bitIndex,implDisambiguator:item.implDisambiguator,}}async function handleAliases(ret,query,filterCrates,currentCrate){const lowerQuery=query.toLowerCase();const aliases=[];const crateAliases=[];if(filterCrates!==null){if(ALIASES.has(filterCrates)&&ALIASES.get(filterCrates).has(lowerQuery)){const query_aliases=ALIASES.get(filterCrates).get(lowerQuery);for(const alias of query_aliases){aliases.push(createAliasFromItem(searchIndex[alias]))}}}else{for(const[crate,crateAliasesIndex]of ALIASES){if(crateAliasesIndex.has(lowerQuery)){const pushTo=crate===currentCrate?crateAliases:aliases;const query_aliases=crateAliasesIndex.get(lowerQuery);for(const alias of query_aliases){pushTo.push(createAliasFromItem(searchIndex[alias]))}}}}const sortFunc=(aaa,bbb)=>{if(aaa.path{return searchIndexEmptyDesc.get(alias.crate).contains(alias.bitIndex)?"":searchState.loadDesc(alias)};const[crateDescs,descs]=await Promise.all([Promise.all(crateAliases.map(fetchDesc)),Promise.all(aliases.map(fetchDesc)),]);const pushFunc=alias=>{alias.alias=query;const res=buildHrefAndPath(alias);alias.displayPath=pathSplitter(res[0]);alias.fullPath=alias.displayPath+alias.name;alias.href=res[1];ret.others.unshift(alias);if(ret.others.length>MAX_RESULTS){ret.others.pop()}};aliases.forEach((alias,i)=>{alias.desc=descs[i]});aliases.forEach(pushFunc);crateAliases.forEach((alias,i)=>{alias.desc=crateDescs[i]});crateAliases.forEach(pushFunc)}function addIntoResults(results,fullId,id,index,dist,path_dist,maxEditDistance){if(dist<=maxEditDistance||index!==-1){if(results.has(fullId)){const result=results.get(fullId);if(result.dontValidate||result.dist<=dist){return}}results.set(fullId,{id:id,index:index,dontValidate:parsedQuery.literalSearch,dist:dist,path_dist:path_dist,})}}function handleSingleArg(row,pos,elem,results_others,results_in_args,results_returned,maxEditDistance,){if(!row||(filterCrates!==null&&row.crate!==filterCrates)){return}let path_dist=0;const fullId=row.id;const tfpDist=compareTypeFingerprints(fullId,parsedQuery.typeFingerprint,);if(tfpDist!==null){const in_args=row.type&&row.type.inputs&&checkIfInList(row.type.inputs,elem,row.type.where_clause,null,0);const returned=row.type&&row.type.output&&checkIfInList(row.type.output,elem,row.type.where_clause,null,0);if(in_args){results_in_args.max_dist=Math.max(results_in_args.max_dist||0,tfpDist);const maxDist=results_in_args.sizenormalizedIndex&&normalizedIndex!==-1)){index=normalizedIndex}if(elem.fullPath.length>1){path_dist=checkPath(elem.pathWithoutLast,row);if(path_dist===null){return}}if(parsedQuery.literalSearch){if(row.word===elem.pathLast){addIntoResults(results_others,fullId,pos,index,0,path_dist)}return}const dist=editDistance(row.normalizedName,elem.normalizedPathLast,maxEditDistance);if(index===-1&&dist>maxEditDistance){return}addIntoResults(results_others,fullId,pos,index,dist,path_dist,maxEditDistance)}function handleArgs(row,pos,results){if(!row||(filterCrates!==null&&row.crate!==filterCrates)||!row.type){return}const tfpDist=compareTypeFingerprints(row.id,parsedQuery.typeFingerprint,);if(tfpDist===null){return}if(results.size>=MAX_RESULTS&&tfpDist>results.max_dist){return}if(!unifyFunctionTypes(row.type.inputs,parsedQuery.elems,row.type.where_clause,null,mgens=>{return unifyFunctionTypes(row.type.output,parsedQuery.returned,row.type.where_clause,mgens,null,0,)},0,)){return}results.max_dist=Math.max(results.max_dist||0,tfpDist);addIntoResults(results,row.id,pos,0,tfpDist,0,Number.MAX_VALUE)}function innerRunQuery(){const queryLen=parsedQuery.elems.reduce((acc,next)=>acc+next.pathLast.length,0)+parsedQuery.returned.reduce((acc,next)=>acc+next.pathLast.length,0);const maxEditDistance=Math.floor(queryLen/3);const genericSymbols=new Map();function convertNameToId(elem,isAssocType){const loweredName=elem.pathLast.toLowerCase();if(typeNameIdMap.has(loweredName)&&(isAssocType||!typeNameIdMap.get(loweredName).assocOnly)){elem.id=typeNameIdMap.get(loweredName).id}else if(!parsedQuery.literalSearch){let match=null;let matchDist=maxEditDistance+1;let matchName="";for(const[name,{id,assocOnly}]of typeNameIdMap){const dist=Math.min(editDistance(name,loweredName,maxEditDistance),editDistance(name,elem.normalizedPathLast,maxEditDistance),);if(dist<=matchDist&&dist<=maxEditDistance&&(isAssocType||!assocOnly)){if(dist===matchDist&&matchName>name){continue}match=id;matchDist=dist;matchName=name}}if(match!==null){parsedQuery.correction=matchName}elem.id=match}if((elem.id===null&&parsedQuery.totalElems>1&&elem.typeFilter===-1&&elem.generics.length===0&&elem.bindings.size===0)||elem.typeFilter===TY_GENERIC){if(genericSymbols.has(elem.name)){elem.id=genericSymbols.get(elem.name)}else{elem.id=-(genericSymbols.size+1);genericSymbols.set(elem.name,elem.id)}if(elem.typeFilter===-1&&elem.name.length>=3){const maxPartDistance=Math.floor(elem.name.length/3);let matchDist=maxPartDistance+1;let matchName="";for(const name of typeNameIdMap.keys()){const dist=editDistance(name,elem.name,maxPartDistance);if(dist<=matchDist&&dist<=maxPartDistance){if(dist===matchDist&&matchName>name){continue}matchDist=dist;matchName=name}}if(matchName!==""){parsedQuery.proposeCorrectionFrom=elem.name;parsedQuery.proposeCorrectionTo=matchName}}elem.typeFilter=TY_GENERIC}if(elem.generics.length>0&&elem.typeFilter===TY_GENERIC){parsedQuery.error=["Generic type parameter ",elem.name," does not accept generic parameters",]}for(const elem2 of elem.generics){convertNameToId(elem2)}elem.bindings=new Map(Array.from(elem.bindings.entries()).map(entry=>{const[name,constraints]=entry;if(!typeNameIdMap.has(name)){parsedQuery.error=["Type parameter ",name," does not exist",];return[null,[]]}for(const elem2 of constraints){convertNameToId(elem2)}return[typeNameIdMap.get(name).id,constraints]}),)}const fps=new Set();for(const elem of parsedQuery.elems){convertNameToId(elem);buildFunctionTypeFingerprint(elem,parsedQuery.typeFingerprint,fps)}for(const elem of parsedQuery.returned){convertNameToId(elem);buildFunctionTypeFingerprint(elem,parsedQuery.typeFingerprint,fps)}if(parsedQuery.foundElems===1&&parsedQuery.returned.length===0){if(parsedQuery.elems.length===1){const elem=parsedQuery.elems[0];for(let i=0,nSearchIndex=searchIndex.length;i0){const sortQ=(a,b)=>{const ag=a.generics.length===0&&a.bindings.size===0;const bg=b.generics.length===0&&b.bindings.size===0;if(ag!==bg){return ag-bg}const ai=a.id>0;const bi=b.id>0;return ai-bi};parsedQuery.elems.sort(sortQ);parsedQuery.returned.sort(sortQ);for(let i=0,nSearchIndex=searchIndex.length;i{const descs=await Promise.all(list.map(result=>{return searchIndexEmptyDesc.get(result.crate).contains(result.bitIndex)?"":searchState.loadDesc(result)}));for(const[i,result]of list.entries()){result.desc=descs[i]}}));if(parsedQuery.error!==null&&ret.others.length!==0){ret.query.error=null}return ret}function nextTab(direction){const next=(searchState.currentTab+direction+3)%searchState.focusedByTab.length;searchState.focusedByTab[searchState.currentTab]=document.activeElement;printTab(next);focusSearchResult()}function focusSearchResult(){const target=searchState.focusedByTab[searchState.currentTab]||document.querySelectorAll(".search-results.active a").item(0)||document.querySelectorAll("#search-tabs button").item(searchState.currentTab);searchState.focusedByTab[searchState.currentTab]=null;if(target){target.focus()}}function buildHrefAndPath(item){let displayPath;let href;const type=itemTypes[item.ty];const name=item.name;let path=item.path;let exactPath=item.exactPath;if(type==="mod"){displayPath=path+"::";href=ROOT_PATH+path.replace(/::/g,"/")+"/"+name+"/index.html"}else if(type==="import"){displayPath=item.path+"::";href=ROOT_PATH+item.path.replace(/::/g,"/")+"/index.html#reexport."+name}else if(type==="primitive"||type==="keyword"){displayPath="";href=ROOT_PATH+path.replace(/::/g,"/")+"/"+type+"."+name+".html"}else if(type==="externcrate"){displayPath="";href=ROOT_PATH+name+"/index.html"}else if(item.parent!==undefined){const myparent=item.parent;let anchor=type+"."+name;const parentType=itemTypes[myparent.ty];let pageType=parentType;let pageName=myparent.name;exactPath=`${myparent.exactPath}::${myparent.name}`;if(parentType==="primitive"){displayPath=myparent.name+"::"}else if(type==="structfield"&&parentType==="variant"){const enumNameIdx=item.path.lastIndexOf("::");const enumName=item.path.substr(enumNameIdx+2);path=item.path.substr(0,enumNameIdx);displayPath=path+"::"+enumName+"::"+myparent.name+"::";anchor="variant."+myparent.name+".field."+name;pageType="enum";pageName=enumName}else{displayPath=path+"::"+myparent.name+"::"}if(item.implDisambiguator!==null){anchor=item.implDisambiguator+"/"+anchor}href=ROOT_PATH+path.replace(/::/g,"/")+"/"+pageType+"."+pageName+".html#"+anchor}else{displayPath=item.path+"::";href=ROOT_PATH+item.path.replace(/::/g,"/")+"/"+type+"."+name+".html"}return[displayPath,href,`${exactPath}::${name}`]}function pathSplitter(path){const tmp=""+path.replace(/::/g,"::");if(tmp.endsWith("")){return tmp.slice(0,tmp.length-6)}return tmp}async function addTab(array,query,display){const extraClass=display?" active":"";const output=document.createElement("div");if(array.length>0){output.className="search-results "+extraClass;for(const item of array){const name=item.name;const type=itemTypes[item.ty];const longType=longItemTypes[item.ty];const typeName=longType.length!==0?`${longType}`:"?";const link=document.createElement("a");link.className="result-"+type;link.href=item.href;const resultName=document.createElement("div");resultName.className="result-name";resultName.insertAdjacentHTML("beforeend",`${typeName}`);link.appendChild(resultName);let alias=" ";if(item.is_alias){alias=`
\ ${item.alias} - see \
`}resultName.insertAdjacentHTML("beforeend",`
${alias}\ ${item.displayPath}${name}\ diff --git a/trait.impl/core/convert/trait.From.js b/trait.impl/core/convert/trait.From.js index 56aa06b37..e6523fc52 100644 --- a/trait.impl/core/convert/trait.From.js +++ b/trait.impl/core/convert/trait.From.js @@ -1,5 +1,5 @@ (function() {var implementors = { -"actix_identity":[["impl From<LostIdentityError> for GetIdentityError"],["impl From<MissingIdentityError> for GetIdentityError"],["impl From<SessionExpiryError> for GetIdentityError"],["impl From<SessionGetError> for GetIdentityError"],["impl From<SessionInsertError> for LoginError"]], +"actix_identity":[["impl From<LostIdentityError> for GetIdentityError"],["impl From<MissingIdentityError> for GetIdentityError"],["impl From<SessionExpiryError> for GetIdentityError"],["impl From<SessionGetError> for GetIdentityError"],["impl From<SessionInsertError> for LoginError"]], "actix_limitation":[["impl From<ComponentRange> for Error"],["impl From<RedisError> for Error"]], "actix_protobuf":[["impl From<DecodeError> for ProtoBufPayloadError"],["impl From<PayloadError> for ProtoBufPayloadError"]], "actix_session":[["impl From<BrowserSession> for SessionLifecycle"],["impl From<PersistentSession> for SessionLifecycle"],["impl From<SessionKey> for String"],["impl From<Error> for SessionGetError"],["impl From<Error> for SessionInsertError"]],