diff --git a/hotshot_query_service/all.html b/hotshot_query_service/all.html index 645ea6dc0..baa4242eb 100644 --- a/hotshot_query_service/all.html +++ b/hotshot_query_service/all.html @@ -1,2 +1,2 @@ List of all items in this crate -

List of all items

Structs

Enums

Traits

Macros

Functions

Type Aliases

Constants

\ No newline at end of file +

List of all items

Structs

Enums

Traits

Macros

Functions

Type Aliases

Constants

\ No newline at end of file diff --git a/hotshot_query_service/availability/enum.BlockId.html b/hotshot_query_service/availability/enum.BlockId.html index ce45d664b..68063c3ee 100644 --- a/hotshot_query_service/availability/enum.BlockId.html +++ b/hotshot_query_service/availability/enum.BlockId.html @@ -3,7 +3,7 @@ Number(usize), Hash(BlockHash<Types>), PayloadHash(VidCommitment), -}

Variants§

§

Number(usize)

§

Hash(BlockHash<Types>)

§

PayloadHash(VidCommitment)

Trait Implementations§

source§

impl<Types: NodeType> Clone for BlockId<Types>

source§

fn clone(&self) -> Self

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<Types: NodeType> Debug for BlockId<Types>

source§

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

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

impl<Types: NodeType> Display for BlockId<Types>

source§

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

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

impl<Types: NodeType> From<Commitment<<Types as NodeType>::BlockHeader>> for BlockId<Types>

source§

fn from(original: BlockHash<Types>) -> BlockId<Types>

Converts to this type from the input type.
source§

impl<Types: NodeType> From<usize> for BlockId<Types>

source§

fn from(original: usize) -> BlockId<Types>

Converts to this type from the input type.
source§

impl<Types: NodeType> Hash for BlockId<Types>

source§

fn hash<__HTypes>(&self, __state: &mut __HTypes)
where +}

Variants§

§

Number(usize)

§

Hash(BlockHash<Types>)

§

PayloadHash(VidCommitment)

Trait Implementations§

source§

impl<Types: NodeType> Clone for BlockId<Types>

source§

fn clone(&self) -> Self

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<Types: NodeType> Debug for BlockId<Types>

source§

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

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

impl<Types: NodeType> Display for BlockId<Types>

source§

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

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

impl<Types: NodeType> From<Commitment<<Types as NodeType>::BlockHeader>> for BlockId<Types>

source§

fn from(original: BlockHash<Types>) -> BlockId<Types>

Converts to this type from the input type.
source§

impl<Types: NodeType> From<usize> for BlockId<Types>

source§

fn from(original: usize) -> BlockId<Types>

Converts to this type from the input type.
source§

impl<Types: NodeType> Hash for BlockId<Types>

source§

fn hash<__HTypes>(&self, __state: &mut __HTypes)
where __HTypes: Hasher,

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, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl<Types: NodeType> Ord for BlockId<Types>

source§

fn cmp(&self, other: &Self) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where @@ -52,9 +52,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/availability/enum.Error.html b/hotshot_query_service/availability/enum.Error.html index 2161b2ea8..fc8b57389 100644 --- a/hotshot_query_service/availability/enum.Error.html +++ b/hotshot_query_service/availability/enum.Error.html @@ -1,5 +1,5 @@ -Error in hotshot_query_service::availability - Rust -
pub enum Error {
+Error in hotshot_query_service::availability - Rust
+    
pub enum Error {
     Request {
         source: RequestError,
     },
@@ -20,25 +20,25 @@
         message: String,
         status: StatusCode,
     },
-}

Variants§

§

Request

Fields

§source: RequestError
§

FetchLeaf

Fields

§resource: String
§

FetchBlock

Fields

§resource: String
§

FetchTransaction

Fields

§resource: String
§

InvalidTransactionIndex

Fields

§height: u64
§index: u64
§

Custom

Fields

§message: String
§status: StatusCode

Implementations§

source§

impl Error

source

pub fn internal<M: Display>(message: M) -> Self

source

pub fn status(&self) -> StatusCode

Trait Implementations§

source§

impl Clone for Error

source§

fn clone(&self) -> Error

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 Error

source§

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

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

impl<'de> Deserialize<'de> for Error

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 Display for Error

source§

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

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

impl Error for Error
where - Self: Debug + Display,

source§

fn description(&self) -> &str

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

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

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

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

The lower-level source of this error, if any. Read more
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 ErrorCompat for Error

source§

fn backtrace(&self) -> Option<&Backtrace>

Returns a Backtrace that may be printed.
§

fn iter_chain(&self) -> ChainCompat<'_>
where +}

Variants§

§

Request

Fields

§source: RequestError
§

FetchLeaf

Fields

§resource: String
§

FetchBlock

Fields

§resource: String
§

FetchTransaction

Fields

§resource: String
§

InvalidTransactionIndex

Fields

§height: u64
§index: u64
§

Custom

Fields

§message: String
§status: StatusCode

Implementations§

source§

impl Error

source

pub fn internal<M: Display>(message: M) -> Self

source

pub fn status(&self) -> StatusCode

Trait Implementations§

source§

impl Clone for Error

source§

fn clone(&self) -> Error

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 Error

source§

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

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

impl<'de> Deserialize<'de> for Error

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 Display for Error

source§

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

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

impl Error for Error
where + Self: Debug + Display,

source§

fn description(&self) -> &str

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

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

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

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

The lower-level source of this error, if any. Read more
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 ErrorCompat for Error

source§

fn backtrace(&self) -> Option<&Backtrace>

Returns a Backtrace that may be printed.
§

fn iter_chain(&self) -> ChainCompat<'_, '_>
where Self: AsErrorSource,

Returns an iterator for traversing the chain of errors, starting with the current error -and continuing with recursive calls to Error::source. Read more
source§

impl From<(String, StatusCode)> for Error

source§

fn from(original: (String, StatusCode)) -> Error

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(original: Error) -> Error

Converts to this type from the input type.
source§

impl From<RequestError> for Error

source§

fn from(original: RequestError) -> Error

Converts to this type from the input type.
source§

impl<__T0, __T1> IntoError<Error> for CustomSnafu<__T0, __T1>
where +and continuing with recursive calls to Error::source. Read more

source§

impl From<(String, StatusCode)> for Error

source§

fn from(original: (String, StatusCode)) -> Error

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(original: Error) -> Error

Converts to this type from the input type.
source§

impl From<RequestError> for Error

source§

fn from(original: RequestError) -> Error

Converts to this type from the input type.
source§

impl<__T0, __T1> IntoError<Error> for CustomSnafu<__T0, __T1>
where Error: Error + ErrorCompat, __T0: Into<String>, - __T1: Into<StatusCode>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0> IntoError<Error> for FetchBlockSnafu<__T0>
where + __T1: Into<StatusCode>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0> IntoError<Error> for FetchBlockSnafu<__T0>
where Error: Error + ErrorCompat, - __T0: Into<String>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0> IntoError<Error> for FetchLeafSnafu<__T0>
where + __T0: Into<String>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0> IntoError<Error> for FetchLeafSnafu<__T0>
where Error: Error + ErrorCompat, - __T0: Into<String>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0> IntoError<Error> for FetchTransactionSnafu<__T0>
where + __T0: Into<String>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0> IntoError<Error> for FetchTransactionSnafu<__T0>
where Error: Error + ErrorCompat, - __T0: Into<String>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0, __T1> IntoError<Error> for InvalidTransactionIndexSnafu<__T0, __T1>
where + __T0: Into<String>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0, __T1> IntoError<Error> for InvalidTransactionIndexSnafu<__T0, __T1>
where Error: Error + ErrorCompat, __T0: Into<u64>, - __T1: Into<u64>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl IntoError<Error> for RequestSnafu
where - Error: Error + ErrorCompat,

§

type Source = RequestError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl Serialize for Error

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __T1: Into<u64>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl IntoError<Error> for RequestSnafu
where + Error: Error + ErrorCompat,

§

type Source = RequestError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl Serialize for Error

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

§

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
§

impl<T> Any for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

§

fn type_name(&self) -> &'static str

§

impl<T> AnySync for T
where @@ -47,6 +47,9 @@ ) -> <T as Pointee>::Metadata

Converts some archived metadata to the pointer metadata for itself.
§

impl<T> AsErrorSource for T
where T: Error + 'static,

§

fn as_error_source(&self) -> &(dyn Error + 'static)

For maximum effectiveness, this needs to be called as a method to benefit from Rust’s automatic dereferencing of method +receivers.
§

impl<T> AsErrorSource for T
where + T: Error + 'static,

§

fn as_error_source(&self) -> &(dyn Error + 'static)

For maximum effectiveness, this needs to be called as a method +to benefit from Rust’s automatic dereferencing of method receivers.
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where T: 'a,

§

fn implicit( diff --git a/hotshot_query_service/availability/enum.LeafId.html b/hotshot_query_service/availability/enum.LeafId.html index d166b41fc..a1a212769 100644 --- a/hotshot_query_service/availability/enum.LeafId.html +++ b/hotshot_query_service/availability/enum.LeafId.html @@ -2,7 +2,7 @@
pub enum LeafId<Types: NodeType> {
     Number(usize),
     Hash(LeafHash<Types>),
-}

Variants§

§

Number(usize)

§

Hash(LeafHash<Types>)

Trait Implementations§

source§

impl<Types: NodeType> Clone for LeafId<Types>

source§

fn clone(&self) -> Self

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<Types: NodeType> Debug for LeafId<Types>

source§

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

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

impl<Types: NodeType> Display for LeafId<Types>

source§

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

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

impl<Types: NodeType> From<Commitment<Leaf<Types>>> for LeafId<Types>

source§

fn from(original: LeafHash<Types>) -> LeafId<Types>

Converts to this type from the input type.
source§

impl<Types: NodeType> From<usize> for LeafId<Types>

source§

fn from(original: usize) -> LeafId<Types>

Converts to this type from the input type.
source§

impl<Types: NodeType> Hash for LeafId<Types>

source§

fn hash<__HTypes>(&self, __state: &mut __HTypes)
where +}

Variants§

§

Number(usize)

§

Hash(LeafHash<Types>)

Trait Implementations§

source§

impl<Types: NodeType> Clone for LeafId<Types>

source§

fn clone(&self) -> Self

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<Types: NodeType> Debug for LeafId<Types>

source§

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

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

impl<Types: NodeType> Display for LeafId<Types>

source§

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

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

impl<Types: NodeType> From<Commitment<Leaf<Types>>> for LeafId<Types>

source§

fn from(original: LeafHash<Types>) -> LeafId<Types>

Converts to this type from the input type.
source§

impl<Types: NodeType> From<usize> for LeafId<Types>

source§

fn from(original: usize) -> LeafId<Types>

Converts to this type from the input type.
source§

impl<Types: NodeType> Hash for LeafId<Types>

source§

fn hash<__HTypes>(&self, __state: &mut __HTypes)
where __HTypes: Hasher,

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, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl<Types: NodeType> Ord for LeafId<Types>

source§

fn cmp(&self, other: &Self) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where @@ -51,9 +51,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/availability/fn.define_api.html b/hotshot_query_service/availability/fn.define_api.html index f0bcdbcc7..906db4fe5 100644 --- a/hotshot_query_service/availability/fn.define_api.html +++ b/hotshot_query_service/availability/fn.define_api.html @@ -1,7 +1,8 @@ define_api in hotshot_query_service::availability - Rust -
pub fn define_api<State, Types: NodeType>(
-    options: &Options
-) -> Result<Api<State, Error>, ApiError>
where +
pub fn define_api<State, Types: NodeType, Ver: StaticVersionType + 'static>(
+    options: &Options,
+    _: Ver
+) -> Result<Api<State, Error, Ver>, ApiError>
where State: 'static + Send + Sync + ReadState, <State as ReadState>::State: Send + Sync + AvailabilityDataSource<Types>, Payload<Types>: QueryablePayload,
\ No newline at end of file diff --git a/hotshot_query_service/availability/index.html b/hotshot_query_service/availability/index.html index d0db38aaa..bf6adc547 100644 --- a/hotshot_query_service/availability/index.html +++ b/hotshot_query_service/availability/index.html @@ -1,5 +1,5 @@ hotshot_query_service::availability - Rust -
Expand description

Queries for HotShot chain state.

+
Expand description

Queries for HotShot chain state.

The availability API provides an objective view of the HotShot blockchain. It provides access only to normative data: that is, data which is agreed upon by all honest consensus nodes and which is immutable. This means access to core consensus data structures including leaves, diff --git a/hotshot_query_service/availability/struct.BlockQueryData.html b/hotshot_query_service/availability/struct.BlockQueryData.html index b438cbe32..f53d24a2a 100644 --- a/hotshot_query_service/availability/struct.BlockQueryData.html +++ b/hotshot_query_service/availability/struct.BlockQueryData.html @@ -55,9 +55,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/availability/struct.BlockSummaryQueryData.html b/hotshot_query_service/availability/struct.BlockSummaryQueryData.html index 3015544b2..8a4b9a23b 100644 --- a/hotshot_query_service/availability/struct.BlockSummaryQueryData.html +++ b/hotshot_query_service/availability/struct.BlockSummaryQueryData.html @@ -41,9 +41,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/availability/struct.CustomSnafu.html b/hotshot_query_service/availability/struct.CustomSnafu.html index 335d0d452..6b08720ae 100644 --- a/hotshot_query_service/availability/struct.CustomSnafu.html +++ b/hotshot_query_service/availability/struct.CustomSnafu.html @@ -1,18 +1,18 @@ CustomSnafu in hotshot_query_service::availability - Rust -
pub struct CustomSnafu<__T0, __T1> {
+    
pub struct CustomSnafu<__T0, __T1> {
     pub message: __T0,
     pub status: __T1,
 }
Expand description

SNAFU context selector for the Error::Custom variant

-

Fields§

§message: __T0§status: __T1

Implementations§

source§

impl<__T0, __T1> CustomSnafu<__T0, __T1>

source

pub fn build(self) -> Error
where +

Fields§

§message: __T0§status: __T1

Implementations§

source§

impl<__T0, __T1> CustomSnafu<__T0, __T1>

source

pub fn build(self) -> Error
where __T0: Into<String>, __T1: Into<StatusCode>,

Consume the selector and return the associated error

-
source

pub fn fail<__T>(self) -> Result<__T, Error>
where +

source

pub fn fail<__T>(self) -> Result<__T, Error>
where __T0: Into<String>, __T1: Into<StatusCode>,

Consume the selector and return a Result with the associated error

-

Trait Implementations§

source§

impl<__T0: Clone, __T1: Clone> Clone for CustomSnafu<__T0, __T1>

source§

fn clone(&self) -> CustomSnafu<__T0, __T1>

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<__T0: Debug, __T1: Debug> Debug for CustomSnafu<__T0, __T1>

source§

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

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

impl<__T0, __T1> IntoError<Error> for CustomSnafu<__T0, __T1>
where +

Trait Implementations§

source§

impl<__T0: Clone, __T1: Clone> Clone for CustomSnafu<__T0, __T1>

source§

fn clone(&self) -> CustomSnafu<__T0, __T1>

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<__T0: Debug, __T1: Debug> Debug for CustomSnafu<__T0, __T1>

source§

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

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

impl<__T0, __T1> IntoError<Error> for CustomSnafu<__T0, __T1>
where Error: Error + ErrorCompat, __T0: Into<String>, - __T1: Into<StatusCode>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0: Copy, __T1: Copy> Copy for CustomSnafu<__T0, __T1>

Auto Trait Implementations§

§

impl<__T0, __T1> RefUnwindSafe for CustomSnafu<__T0, __T1>
where + __T1: Into<StatusCode>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0: Copy, __T1: Copy> Copy for CustomSnafu<__T0, __T1>

Auto Trait Implementations§

§

impl<__T0, __T1> RefUnwindSafe for CustomSnafu<__T0, __T1>
where __T0: RefUnwindSafe, __T1: RefUnwindSafe,

§

impl<__T0, __T1> Send for CustomSnafu<__T0, __T1>
where __T0: Send, diff --git a/hotshot_query_service/availability/struct.FetchBlockSnafu.html b/hotshot_query_service/availability/struct.FetchBlockSnafu.html index 98b4c6671..c0ef0dd44 100644 --- a/hotshot_query_service/availability/struct.FetchBlockSnafu.html +++ b/hotshot_query_service/availability/struct.FetchBlockSnafu.html @@ -1,14 +1,14 @@ FetchBlockSnafu in hotshot_query_service::availability - Rust -
pub struct FetchBlockSnafu<__T0> {
+    
pub struct FetchBlockSnafu<__T0> {
     pub resource: __T0,
 }
Expand description

SNAFU context selector for the Error::FetchBlock variant

-

Fields§

§resource: __T0

Implementations§

source§

impl<__T0> FetchBlockSnafu<__T0>

source

pub fn build(self) -> Error
where +

Fields§

§resource: __T0

Implementations§

source§

impl<__T0> FetchBlockSnafu<__T0>

source

pub fn build(self) -> Error
where __T0: Into<String>,

Consume the selector and return the associated error

-
source

pub fn fail<__T>(self) -> Result<__T, Error>
where +

source

pub fn fail<__T>(self) -> Result<__T, Error>
where __T0: Into<String>,

Consume the selector and return a Result with the associated error

-

Trait Implementations§

source§

impl<__T0: Clone> Clone for FetchBlockSnafu<__T0>

source§

fn clone(&self) -> FetchBlockSnafu<__T0>

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<__T0: Debug> Debug for FetchBlockSnafu<__T0>

source§

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

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

impl<__T0> IntoError<Error> for FetchBlockSnafu<__T0>
where +

Trait Implementations§

source§

impl<__T0: Clone> Clone for FetchBlockSnafu<__T0>

source§

fn clone(&self) -> FetchBlockSnafu<__T0>

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<__T0: Debug> Debug for FetchBlockSnafu<__T0>

source§

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

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

impl<__T0> IntoError<Error> for FetchBlockSnafu<__T0>
where Error: Error + ErrorCompat, - __T0: Into<String>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0: Copy> Copy for FetchBlockSnafu<__T0>

Auto Trait Implementations§

§

impl<__T0> RefUnwindSafe for FetchBlockSnafu<__T0>
where + __T0: Into<String>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0: Copy> Copy for FetchBlockSnafu<__T0>

Auto Trait Implementations§

§

impl<__T0> RefUnwindSafe for FetchBlockSnafu<__T0>
where __T0: RefUnwindSafe,

§

impl<__T0> Send for FetchBlockSnafu<__T0>
where __T0: Send,

§

impl<__T0> Sync for FetchBlockSnafu<__T0>
where __T0: Sync,

§

impl<__T0> Unpin for FetchBlockSnafu<__T0>
where diff --git a/hotshot_query_service/availability/struct.FetchLeafSnafu.html b/hotshot_query_service/availability/struct.FetchLeafSnafu.html index 04dc10205..f645897d5 100644 --- a/hotshot_query_service/availability/struct.FetchLeafSnafu.html +++ b/hotshot_query_service/availability/struct.FetchLeafSnafu.html @@ -1,14 +1,14 @@ FetchLeafSnafu in hotshot_query_service::availability - Rust -
pub struct FetchLeafSnafu<__T0> {
+    
pub struct FetchLeafSnafu<__T0> {
     pub resource: __T0,
 }
Expand description

SNAFU context selector for the Error::FetchLeaf variant

-

Fields§

§resource: __T0

Implementations§

source§

impl<__T0> FetchLeafSnafu<__T0>

source

pub fn build(self) -> Error
where +

Fields§

§resource: __T0

Implementations§

source§

impl<__T0> FetchLeafSnafu<__T0>

source

pub fn build(self) -> Error
where __T0: Into<String>,

Consume the selector and return the associated error

-
source

pub fn fail<__T>(self) -> Result<__T, Error>
where +

source

pub fn fail<__T>(self) -> Result<__T, Error>
where __T0: Into<String>,

Consume the selector and return a Result with the associated error

-

Trait Implementations§

source§

impl<__T0: Clone> Clone for FetchLeafSnafu<__T0>

source§

fn clone(&self) -> FetchLeafSnafu<__T0>

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<__T0: Debug> Debug for FetchLeafSnafu<__T0>

source§

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

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

impl<__T0> IntoError<Error> for FetchLeafSnafu<__T0>
where +

Trait Implementations§

source§

impl<__T0: Clone> Clone for FetchLeafSnafu<__T0>

source§

fn clone(&self) -> FetchLeafSnafu<__T0>

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<__T0: Debug> Debug for FetchLeafSnafu<__T0>

source§

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

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

impl<__T0> IntoError<Error> for FetchLeafSnafu<__T0>
where Error: Error + ErrorCompat, - __T0: Into<String>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0: Copy> Copy for FetchLeafSnafu<__T0>

Auto Trait Implementations§

§

impl<__T0> RefUnwindSafe for FetchLeafSnafu<__T0>
where + __T0: Into<String>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0: Copy> Copy for FetchLeafSnafu<__T0>

Auto Trait Implementations§

§

impl<__T0> RefUnwindSafe for FetchLeafSnafu<__T0>
where __T0: RefUnwindSafe,

§

impl<__T0> Send for FetchLeafSnafu<__T0>
where __T0: Send,

§

impl<__T0> Sync for FetchLeafSnafu<__T0>
where __T0: Sync,

§

impl<__T0> Unpin for FetchLeafSnafu<__T0>
where diff --git a/hotshot_query_service/availability/struct.FetchTransactionSnafu.html b/hotshot_query_service/availability/struct.FetchTransactionSnafu.html index 53703c1cf..3da27da32 100644 --- a/hotshot_query_service/availability/struct.FetchTransactionSnafu.html +++ b/hotshot_query_service/availability/struct.FetchTransactionSnafu.html @@ -1,14 +1,14 @@ FetchTransactionSnafu in hotshot_query_service::availability - Rust -
pub struct FetchTransactionSnafu<__T0> {
+    
pub struct FetchTransactionSnafu<__T0> {
     pub resource: __T0,
 }
Expand description

SNAFU context selector for the Error::FetchTransaction variant

-

Fields§

§resource: __T0

Implementations§

source§

impl<__T0> FetchTransactionSnafu<__T0>

source

pub fn build(self) -> Error
where +

Fields§

§resource: __T0

Implementations§

source§

impl<__T0> FetchTransactionSnafu<__T0>

source

pub fn build(self) -> Error
where __T0: Into<String>,

Consume the selector and return the associated error

-
source

pub fn fail<__T>(self) -> Result<__T, Error>
where +

source

pub fn fail<__T>(self) -> Result<__T, Error>
where __T0: Into<String>,

Consume the selector and return a Result with the associated error

-

Trait Implementations§

source§

impl<__T0: Clone> Clone for FetchTransactionSnafu<__T0>

source§

fn clone(&self) -> FetchTransactionSnafu<__T0>

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<__T0: Debug> Debug for FetchTransactionSnafu<__T0>

source§

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

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

impl<__T0> IntoError<Error> for FetchTransactionSnafu<__T0>
where +

Trait Implementations§

source§

impl<__T0: Clone> Clone for FetchTransactionSnafu<__T0>

source§

fn clone(&self) -> FetchTransactionSnafu<__T0>

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<__T0: Debug> Debug for FetchTransactionSnafu<__T0>

source§

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

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

impl<__T0> IntoError<Error> for FetchTransactionSnafu<__T0>
where Error: Error + ErrorCompat, - __T0: Into<String>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0: Copy> Copy for FetchTransactionSnafu<__T0>

Auto Trait Implementations§

§

impl<__T0> RefUnwindSafe for FetchTransactionSnafu<__T0>
where + __T0: Into<String>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error

source§

impl<__T0: Copy> Copy for FetchTransactionSnafu<__T0>

Auto Trait Implementations§

§

impl<__T0> RefUnwindSafe for FetchTransactionSnafu<__T0>
where __T0: RefUnwindSafe,

§

impl<__T0> Send for FetchTransactionSnafu<__T0>
where __T0: Send,

§

impl<__T0> Sync for FetchTransactionSnafu<__T0>
where __T0: Sync,

§

impl<__T0> Unpin for FetchTransactionSnafu<__T0>
where diff --git a/hotshot_query_service/availability/struct.InconsistentLeafError.html b/hotshot_query_service/availability/struct.InconsistentLeafError.html index 705ab420c..7eacc4179 100644 --- a/hotshot_query_service/availability/struct.InconsistentLeafError.html +++ b/hotshot_query_service/availability/struct.InconsistentLeafError.html @@ -1,9 +1,9 @@ -InconsistentLeafError in hotshot_query_service::availability - Rust +InconsistentLeafError in hotshot_query_service::availability - Rust
pub struct InconsistentLeafError<Types: NodeType> {
     pub leaf: LeafHash<Types>,
     pub qc_leaf: LeafHash<Types>,
-}

Fields§

§leaf: LeafHash<Types>§qc_leaf: LeafHash<Types>

Trait Implementations§

source§

impl<Types: Clone + NodeType> Clone for InconsistentLeafError<Types>

source§

fn clone(&self) -> InconsistentLeafError<Types>

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<Types: Debug + NodeType> Debug for InconsistentLeafError<Types>

source§

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

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

impl<Types: NodeType> Display for InconsistentLeafError<Types>

source§

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

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

impl<Types: NodeType> Error for InconsistentLeafError<Types>
where - Self: Debug + Display,

source§

fn description(&self) -> &str

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

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

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

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

The lower-level source of this error, if any. Read more
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<Types: NodeType> ErrorCompat for InconsistentLeafError<Types>

source§

fn backtrace(&self) -> Option<&Backtrace>

Returns a Backtrace that may be printed.
§

fn iter_chain(&self) -> ChainCompat<'_>
where +}

Fields§

§leaf: LeafHash<Types>§qc_leaf: LeafHash<Types>

Trait Implementations§

source§

impl<Types: Clone + NodeType> Clone for InconsistentLeafError<Types>

source§

fn clone(&self) -> InconsistentLeafError<Types>

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<Types: Debug + NodeType> Debug for InconsistentLeafError<Types>

source§

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

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

impl<Types: NodeType> Display for InconsistentLeafError<Types>

source§

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

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

impl<Types: NodeType> Error for InconsistentLeafError<Types>
where + Self: Debug + Display,

source§

fn description(&self) -> &str

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

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

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

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

The lower-level source of this error, if any. Read more
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<Types: NodeType> ErrorCompat for InconsistentLeafError<Types>

source§

fn backtrace(&self) -> Option<&Backtrace>

Returns a Backtrace that may be printed.
§

fn iter_chain(&self) -> ChainCompat<'_, '_>
where Self: AsErrorSource,

Returns an iterator for traversing the chain of errors, starting with the current error and continuing with recursive calls to Error::source. Read more

Auto Trait Implementations§

§

impl<Types> RefUnwindSafe for InconsistentLeafError<Types>

§

impl<Types> Send for InconsistentLeafError<Types>

§

impl<Types> Sync for InconsistentLeafError<Types>

§

impl<Types> Unpin for InconsistentLeafError<Types>

§

impl<Types> UnwindSafe for InconsistentLeafError<Types>

Blanket Implementations§

source§

impl<T> Any for T
where @@ -14,6 +14,9 @@ ) -> <T as Pointee>::Metadata

Converts some archived metadata to the pointer metadata for itself.

§

impl<T> AsErrorSource for T
where T: Error + 'static,

§

fn as_error_source(&self) -> &(dyn Error + 'static)

For maximum effectiveness, this needs to be called as a method to benefit from Rust’s automatic dereferencing of method +receivers.
§

impl<T> AsErrorSource for T
where + T: Error + 'static,

§

fn as_error_source(&self) -> &(dyn Error + 'static)

For maximum effectiveness, this needs to be called as a method +to benefit from Rust’s automatic dereferencing of method receivers.
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where T: 'a,

§

fn implicit( diff --git a/hotshot_query_service/availability/struct.InvalidTransactionIndexSnafu.html b/hotshot_query_service/availability/struct.InvalidTransactionIndexSnafu.html index a244948a3..29c61c03d 100644 --- a/hotshot_query_service/availability/struct.InvalidTransactionIndexSnafu.html +++ b/hotshot_query_service/availability/struct.InvalidTransactionIndexSnafu.html @@ -1,18 +1,18 @@ InvalidTransactionIndexSnafu in hotshot_query_service::availability - Rust -
pub struct InvalidTransactionIndexSnafu<__T0, __T1> {
+    
pub struct InvalidTransactionIndexSnafu<__T0, __T1> {
     pub height: __T0,
     pub index: __T1,
 }
Expand description

SNAFU context selector for the Error::InvalidTransactionIndex variant

-

Fields§

§height: __T0§index: __T1

Implementations§

source§

impl<__T0, __T1> InvalidTransactionIndexSnafu<__T0, __T1>

source

pub fn build(self) -> Error
where +

Fields§

§height: __T0§index: __T1

Implementations§

source§

impl<__T0, __T1> InvalidTransactionIndexSnafu<__T0, __T1>

source

pub fn build(self) -> Error
where __T0: Into<u64>, __T1: Into<u64>,

Consume the selector and return the associated error

-
source

pub fn fail<__T>(self) -> Result<__T, Error>
where +

source

pub fn fail<__T>(self) -> Result<__T, Error>
where __T0: Into<u64>, __T1: Into<u64>,

Consume the selector and return a Result with the associated error

-

Trait Implementations§

source§

impl<__T0: Clone, __T1: Clone> Clone for InvalidTransactionIndexSnafu<__T0, __T1>

source§

fn clone(&self) -> InvalidTransactionIndexSnafu<__T0, __T1>

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<__T0: Debug, __T1: Debug> Debug for InvalidTransactionIndexSnafu<__T0, __T1>

source§

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

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

impl<__T0, __T1> IntoError<Error> for InvalidTransactionIndexSnafu<__T0, __T1>
where +

Trait Implementations§

source§

impl<__T0: Clone, __T1: Clone> Clone for InvalidTransactionIndexSnafu<__T0, __T1>

source§

fn clone(&self) -> InvalidTransactionIndexSnafu<__T0, __T1>

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<__T0: Debug, __T1: Debug> Debug for InvalidTransactionIndexSnafu<__T0, __T1>

source§

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

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

impl<__T0, __T1> IntoError<Error> for InvalidTransactionIndexSnafu<__T0, __T1>
where Error: Error + ErrorCompat, __T0: Into<u64>, - __T1: Into<u64>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0: Copy, __T1: Copy> Copy for InvalidTransactionIndexSnafu<__T0, __T1>

Auto Trait Implementations§

§

impl<__T0, __T1> RefUnwindSafe for InvalidTransactionIndexSnafu<__T0, __T1>
where + __T1: Into<u64>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error

source§

impl<__T0: Copy, __T1: Copy> Copy for InvalidTransactionIndexSnafu<__T0, __T1>

Auto Trait Implementations§

§

impl<__T0, __T1> RefUnwindSafe for InvalidTransactionIndexSnafu<__T0, __T1>
where __T0: RefUnwindSafe, __T1: RefUnwindSafe,

§

impl<__T0, __T1> Send for InvalidTransactionIndexSnafu<__T0, __T1>
where __T0: Send, diff --git a/hotshot_query_service/availability/struct.LeafQueryData.html b/hotshot_query_service/availability/struct.LeafQueryData.html index 2eb114276..52fb888ea 100644 --- a/hotshot_query_service/availability/struct.LeafQueryData.html +++ b/hotshot_query_service/availability/struct.LeafQueryData.html @@ -62,9 +62,9 @@
Errors
Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/availability/struct.Options.html b/hotshot_query_service/availability/struct.Options.html index 31262e40f..da9ee583f 100644 --- a/hotshot_query_service/availability/struct.Options.html +++ b/hotshot_query_service/availability/struct.Options.html @@ -1,5 +1,5 @@ Options in hotshot_query_service::availability - Rust -
pub struct Options {
+    
pub struct Options {
     pub api_path: Option<PathBuf>,
     pub fetch_timeout: Duration,
     pub extensions: Vec<Value>,
@@ -10,12 +10,12 @@
 
§extensions: Vec<Value>

Additional API specification files to merge with availability-api-path.

These optional files may contain route definitions for application-specific routes that have been added as extensions to the basic availability API.

-

Trait Implementations§

source§

impl Args for Options

source§

fn group_id() -> Option<Id>

Report the [ArgGroup::id][crate::ArgGroup::id] for this set of arguments
source§

fn augment_args<'b>(__clap_app: Command) -> Command

Append to [Command] so it can instantiate Self. Read more
source§

fn augment_args_for_update<'b>(__clap_app: Command) -> Command

Append to [Command] so it can update self. Read more
source§

impl Default for Options

source§

fn default() -> Options

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

impl FromArgMatches for Options

source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn from_arg_matches_mut( +

Trait Implementations§

source§

impl Args for Options

source§

fn group_id() -> Option<Id>

Report the [ArgGroup::id][crate::ArgGroup::id] for this set of arguments
source§

fn augment_args<'b>(__clap_app: Command) -> Command

Append to [Command] so it can instantiate Self. Read more
source§

fn augment_args_for_update<'b>(__clap_app: Command) -> Command

Append to [Command] so it can update self. Read more
source§

impl Default for Options

source§

fn default() -> Options

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

impl FromArgMatches for Options

source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches -) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn update_from_arg_matches( +) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches -) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

fn update_from_arg_matches_mut( +) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches ) -> Result<(), Error>

Assign values from ArgMatches to self.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where diff --git a/hotshot_query_service/availability/struct.PayloadQueryData.html b/hotshot_query_service/availability/struct.PayloadQueryData.html index f037ec21e..c48069a81 100644 --- a/hotshot_query_service/availability/struct.PayloadQueryData.html +++ b/hotshot_query_service/availability/struct.PayloadQueryData.html @@ -41,9 +41,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/availability/struct.RequestSnafu.html b/hotshot_query_service/availability/struct.RequestSnafu.html index 5b1dc7e2a..1ba91cc07 100644 --- a/hotshot_query_service/availability/struct.RequestSnafu.html +++ b/hotshot_query_service/availability/struct.RequestSnafu.html @@ -1,7 +1,7 @@ RequestSnafu in hotshot_query_service::availability - Rust -
pub struct RequestSnafu;
Expand description

SNAFU context selector for the Error::Request variant

-

Trait Implementations§

source§

impl Clone for RequestSnafu

source§

fn clone(&self) -> RequestSnafu

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 RequestSnafu

source§

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

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

impl IntoError<Error> for RequestSnafu
where - Error: Error + ErrorCompat,

§

type Source = RequestError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl Copy for RequestSnafu

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +
pub struct RequestSnafu;
Expand description

SNAFU context selector for the Error::Request variant

+

Trait Implementations§

source§

impl Clone for RequestSnafu

source§

fn clone(&self) -> RequestSnafu

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 RequestSnafu

source§

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

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

impl IntoError<Error> for RequestSnafu
where + Error: Error + ErrorCompat,

§

type Source = RequestError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl Copy for RequestSnafu

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
§

impl<T> Any for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

§

fn type_name(&self) -> &'static str

§

impl<T> AnySync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

§

impl<T> ArchivePointee for T

§

type ArchivedMetadata = ()

The archived version of the pointer metadata for this type.
§

fn pointer_metadata( diff --git a/hotshot_query_service/availability/struct.TransactionQueryData.html b/hotshot_query_service/availability/struct.TransactionQueryData.html index 261b107ca..01b224e1b 100644 --- a/hotshot_query_service/availability/struct.TransactionQueryData.html +++ b/hotshot_query_service/availability/struct.TransactionQueryData.html @@ -55,9 +55,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/availability/struct.TransactionSummaryQueryData.html b/hotshot_query_service/availability/struct.TransactionSummaryQueryData.html index 2f5dc461d..a99a79680 100644 --- a/hotshot_query_service/availability/struct.TransactionSummaryQueryData.html +++ b/hotshot_query_service/availability/struct.TransactionSummaryQueryData.html @@ -43,9 +43,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/availability/struct.VidCommonQueryData.html b/hotshot_query_service/availability/struct.VidCommonQueryData.html index edce9c65c..61e1dcd9c 100644 --- a/hotshot_query_service/availability/struct.VidCommonQueryData.html +++ b/hotshot_query_service/availability/struct.VidCommonQueryData.html @@ -37,9 +37,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/availability/trait.AvailabilityDataSource.html b/hotshot_query_service/availability/trait.AvailabilityDataSource.html index ebba743a0..46e218628 100644 --- a/hotshot_query_service/availability/trait.AvailabilityDataSource.html +++ b/hotshot_query_service/availability/trait.AvailabilityDataSource.html @@ -204,7 +204,7 @@ from: usize ) -> Pin<Box<dyn Future<Output = BoxStream<'static, VidCommonQueryData<Types>>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, - 'life0: 'async_trait,

Object Safety§

This trait is not object safe.

Implementors§

source§

impl AvailabilityDataSource<MockTypes> for DataSource

§

type LeafRange<R> = Pin<Box<dyn Stream<Item = Fetch<LeafQueryData<MockTypes>>> + Send>> + 'life0: 'async_trait,

Object Safety§

This trait is not object safe.

Implementors§

source§

impl AvailabilityDataSource<MockTypes> for DataSource

§

type LeafRange<R> = Pin<Box<dyn Stream<Item = Fetch<LeafQueryData<MockTypes>>> + Send>> where R: RangeBounds<usize> + Send

§

type BlockRange<R> = Pin<Box<dyn Stream<Item = Fetch<BlockQueryData<MockTypes>>> + Send>> where diff --git a/hotshot_query_service/availability/trait.UpdateAvailabilityData.html b/hotshot_query_service/availability/trait.UpdateAvailabilityData.html index a18303e2b..c005af9a2 100644 --- a/hotshot_query_service/availability/trait.UpdateAvailabilityData.html +++ b/hotshot_query_service/availability/trait.UpdateAvailabilityData.html @@ -38,7 +38,7 @@ share: Option<VidShare> ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

Implementors§

source§

impl UpdateAvailabilityData<MockTypes> for DataSource

source§

impl<D, U, Types> UpdateAvailabilityData<Types> for ExtensibleDataSource<D, U>
where + 'life0: 'async_trait,

Implementors§

source§

impl UpdateAvailabilityData<MockTypes> for DataSource

source§

impl<D, U, Types> UpdateAvailabilityData<Types> for ExtensibleDataSource<D, U>
where D: UpdateAvailabilityData<Types> + Send + Sync, U: Send + Sync, Types: NodeType,

§

type Error = <D as UpdateAvailabilityData<Types>>::Error

source§

impl<Types> UpdateAvailabilityData<Types> for SqlStorage
where diff --git a/hotshot_query_service/data_source/fetching/struct.FetchingDataSource.html b/hotshot_query_service/data_source/fetching/struct.FetchingDataSource.html index 31f10e74c..3356732dd 100644 --- a/hotshot_query_service/data_source/fetching/struct.FetchingDataSource.html +++ b/hotshot_query_service/data_source/fetching/struct.FetchingDataSource.html @@ -23,16 +23,16 @@

source§

impl<Types, S, P> FetchingDataSource<Types, S, P>
where Types: NodeType,

source

pub async fn storage(&self) -> StorageReadGuard<'_, Types, S>

Obtain direct, read-only access to the underlying local storage.

source

pub async fn storage_mut(&self) -> StorageWriteGuard<'_, Types, S>

Obtain direct, mutable access the underlying local storage.

-
source§

impl<Types: NodeType, P> FetchingDataSource<Types, FileSystemStorage<Types>, P>
where +

source§

impl<Types: NodeType, P> FetchingDataSource<Types, FileSystemStorage<Types>, P>
where Payload<Types>: QueryablePayload, Header<Types>: QueryableHeader<Types>, - P: AvailabilityProvider<Types>,

source

pub async fn create(path: &Path, provider: P) -> Result<Self>

Create a new FileSystemDataSource with storage at path.

+ P: AvailabilityProvider<Types>,

source

pub async fn create(path: &Path, provider: P) -> Result<Self>

Create a new FileSystemDataSource with storage at path.

If there is already data at path, it will be archived.

The FileSystemDataSource will manage its own persistence synchronization.

-
source

pub async fn open(path: &Path, provider: P) -> Result<Self>

Open an existing FileSystemDataSource from storage at path.

+
source

pub async fn open(path: &Path, provider: P) -> Result<Self>

Open an existing FileSystemDataSource from storage at path.

If there is no data at path, a new store will be created.

The FileSystemDataSource will manage its own persistence synchronization.

-
source

pub async fn create_with_store( +

source

pub async fn create_with_store( loader: &mut AtomicStoreLoader, provider: P ) -> Result<Self>

Create a new FileSystemDataSource using a persistent storage loader.

@@ -41,7 +41,7 @@

The FileSystemDataSource will register its persistent data structures with loader. The caller is responsible for creating an AtomicStore from loader and managing synchronization of the store.

-
source

pub async fn open_with_store( +

source

pub async fn open_with_store( loader: &mut AtomicStoreLoader, provider: P ) -> Result<Self>

Open an existing FileSystemDataSource using a persistent storage loader.

@@ -50,7 +50,7 @@

The FileSystemDataSource will register its persistent data structures with loader. The caller is responsible for creating an AtomicStore from loader and managing synchronization of the store.

-
source

pub async fn skip_version(&mut self) -> Result<()>

Advance the version of the persistent store without committing changes to persistent state.

+
source

pub async fn skip_version(&mut self) -> Result<()>

Advance the version of the persistent store without committing changes to persistent state.

This function is useful when the AtomicStore synchronizing storage for this FileSystemDataSource is being managed by the caller. The caller may want to persist some changes to other modules whose state is managed by the same @@ -59,10 +59,10 @@ this FileSystemDataSource must be advanced, either by commit or, if there are no outstanding changes, skip_version.

-
source§

impl<Types, P: AvailabilityProvider<Types>> FetchingDataSource<Types, SqlStorage, P>
where +

source§

impl<Types, P: AvailabilityProvider<Types>> FetchingDataSource<Types, SqlStorage, P>
where Types: NodeType, Header<Types>: QueryableHeader<Types>, - Payload<Types>: QueryablePayload,

source

pub async fn connect( + Payload<Types>: QueryablePayload,

source

pub async fn connect( config: Config, provider: P ) -> Result<Builder<Types, P>, Error>

Connect to a remote database.

@@ -70,8 +70,8 @@ underlying FetchingDataSource, before constructing the SqlDataSource with build. For a convenient constructor that uses the default fetching options, see Config::connect.

-
source§

impl<Types, P> FetchingDataSource<Types, SqlStorage, P>
where - Types: NodeType,

source

pub async fn transaction(&mut self) -> QueryResult<Transaction<'_>>

Access the transaction which is accumulating all uncommitted changes to the data source.

+
source§

impl<Types, P> FetchingDataSource<Types, SqlStorage, P>
where + Types: NodeType,

source

pub async fn transaction(&mut self) -> QueryResult<Transaction<'_>>

Access the transaction which is accumulating all uncommitted changes to the data source.

This can be used to manually group database modifications to custom state atomically with modifications made through the SqlDataSource.

If there is no currently open transaction, a new transaction will be opened. No changes @@ -181,7 +181,7 @@ 'life0: 'async_trait,

source§

impl<Types, S, P> NodeDataSource<Types> for FetchingDataSource<Types, S, P>
where Types: NodeType, S: NodeDataSource<Types> + Send + Sync, - P: Send + Sync,

source§

fn block_height<'life0, 'async_trait>( + P: Send + Sync,

source§

fn block_height<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = QueryResult<usize>> + Send + 'async_trait>>
where Self: 'async_trait, @@ -212,7 +212,7 @@ 'life0: 'async_trait,

source§

impl<Types, S, P> StatusDataSource for FetchingDataSource<Types, S, P>
where Types: NodeType, S: NodeDataSource<Types> + Send + Sync, - P: Send + Sync,

source§

fn block_height<'life0, 'async_trait>( + P: Send + Sync,

source§

fn block_height<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = QueryResult<usize>> + Send + 'async_trait>>
where Self: 'async_trait, @@ -417,5 +417,5 @@ [WithDispatch] wrapper. Read more

source§

impl<T> WithSubscriber for T

source§

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
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

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

impl<T> TestableDataSource for T
where +WithDispatch wrapper. Read more
source§

impl<T> TestableDataSource for T

\ No newline at end of file diff --git a/hotshot_query_service/data_source/sql/index.html b/hotshot_query_service/data_source/sql/index.html index df9419bdf..c85cf84cf 100644 --- a/hotshot_query_service/data_source/sql/index.html +++ b/hotshot_query_service/data_source/sql/index.html @@ -1,4 +1,4 @@ hotshot_query_service::data_source::sql - Rust -

Re-exports

Modules

Macros

Structs

  • The Error type, a wrapper around a dynamic error type.
  • Represents a schema migration to be run on the database, +

    Re-exports

    Modules

    Macros

    Structs

    • The Error type, a wrapper around a dynamic error type.
    • Represents a schema migration to be run on the database, this struct is used by the embed_migrations! macro to gather migration files and shouldn’t be needed by the user

    Type Aliases

    • A data source for the APIs provided in this crate, backed by a remote PostgreSQL database.
    \ No newline at end of file diff --git a/hotshot_query_service/data_source/sql/struct.Migration.html b/hotshot_query_service/data_source/sql/struct.Migration.html index 629daf62c..c286dd3a0 100644 --- a/hotshot_query_service/data_source/sql/struct.Migration.html +++ b/hotshot_query_service/data_source/sql/struct.Migration.html @@ -53,9 +53,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/data_source/sql/testing/index.html b/hotshot_query_service/data_source/sql/testing/index.html index 76743a7ac..9f6086fbc 100644 --- a/hotshot_query_service/data_source/sql/testing/index.html +++ b/hotshot_query_service/data_source/sql/testing/index.html @@ -1,2 +1,2 @@ hotshot_query_service::data_source::sql::testing - Rust -

Re-exports

  • pub use sql::testing::TmpDb;
\ No newline at end of file +

Re-exports

  • pub use sql::testing::TmpDb;
\ No newline at end of file diff --git a/hotshot_query_service/data_source/sql/type.SqlDataSource.html b/hotshot_query_service/data_source/sql/type.SqlDataSource.html index bd2425e0b..a1a261cf7 100644 --- a/hotshot_query_service/data_source/sql/type.SqlDataSource.html +++ b/hotshot_query_service/data_source/sql/type.SqlDataSource.html @@ -1,5 +1,5 @@ SqlDataSource in hotshot_query_service::data_source::sql - Rust -
pub type SqlDataSource<Types, P> = FetchingDataSource<Types, SqlStorage, P>;
Expand description

A data source for the APIs provided in this crate, backed by a remote PostgreSQL database.

+
pub type SqlDataSource<Types, P> = FetchingDataSource<Types, SqlStorage, P>;
Expand description

A data source for the APIs provided in this crate, backed by a remote PostgreSQL database.

Administration

This data source will automatically connect to and perform queries on a remote SQL database. However, administration of the database, such as initialization, resetting, and backups, is @@ -143,10 +143,11 @@

Composition

// additional state for other modules } -async fn init_server( +async fn init_server<Ver: StaticVersionType + 'static>( config: Config, hotshot: SystemContextHandle<AppTypes, AppNodeImpl>, -) -> Result<App<Arc<RwLock<AppState>>, Error>, Error> { + _: Ver, +) -> Result<App<Arc<RwLock<AppState>>, Error, Ver>, Error> { let mut hotshot_qs = config.connect(NoFetching).await.map_err(Error::internal)?; // Initialize storage for other modules, using `hotshot_qs` to access the database. let tx = hotshot_qs.transaction().await.map_err(Error::internal)?; @@ -177,10 +178,10 @@

Composition

Ok(app) }
-

Aliased Type§

struct SqlDataSource<Types, P> { /* private fields */ }

Implementations§

source§

impl<Types, P: AvailabilityProvider<Types>> SqlDataSource<Types, P>
where +

Aliased Type§

struct SqlDataSource<Types, P> { /* private fields */ }

Implementations§

source§

impl<Types, P: AvailabilityProvider<Types>> SqlDataSource<Types, P>
where Types: NodeType, Header<Types>: QueryableHeader<Types>, - Payload<Types>: QueryablePayload,

source

pub async fn connect( + Payload<Types>: QueryablePayload,

source

pub async fn connect( config: Config, provider: P ) -> Result<Builder<Types, P>, Error>

Connect to a remote database.

@@ -188,36 +189,36 @@

Composition

underlying FetchingDataSource, before constructing the SqlDataSource with build. For a convenient constructor that uses the default fetching options, see Config::connect.

-
source§

impl<Types, P> SqlDataSource<Types, P>
where - Types: NodeType,

source

pub async fn transaction(&mut self) -> QueryResult<Transaction<'_>>

Access the transaction which is accumulating all uncommitted changes to the data source.

+
source§

impl<Types, P> SqlDataSource<Types, P>
where + Types: NodeType,

source

pub async fn transaction(&mut self) -> QueryResult<Transaction<'_>>

Access the transaction which is accumulating all uncommitted changes to the data source.

This can be used to manually group database modifications to custom state atomically with modifications made through the SqlDataSource.

If there is no currently open transaction, a new transaction will be opened. No changes made through the transaction objeect returned by this method will be persisted until commit is called.

-

Trait Implementations§

source§

impl<P: AvailabilityProvider<MockTypes> + Default> DataSourceLifeCycle for SqlDataSource<MockTypes, P>

§

type Storage = TmpDb

Backing storage for the data source. Read more
source§

fn create<'async_trait>( +

Trait Implementations§

source§

impl<P: AvailabilityProvider<MockTypes> + Default> DataSourceLifeCycle for SqlDataSource<MockTypes, P>

§

type Storage = TmpDb

Backing storage for the data source. Read more
source§

fn create<'async_trait>( _node_id: usize ) -> Pin<Box<dyn Future<Output = Self::Storage> + Send + 'async_trait>>
where - Self: 'async_trait,

source§

fn connect<'life0, 'async_trait>( + Self: 'async_trait,

source§

fn connect<'life0, 'async_trait>( tmp_db: &'life0 Self::Storage ) -> Pin<Box<dyn Future<Output = Self> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn reset<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

fn reset<'life0, 'async_trait>( tmp_db: &'life0 Self::Storage ) -> Pin<Box<dyn Future<Output = Self> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn handle_event<'life0, 'life1, 'async_trait>( + 'life0: 'async_trait,

source§

fn handle_event<'life0, 'life1, 'async_trait>( &'life0 mut self, event: &'life1 Event<MockTypes> ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, - 'life1: 'async_trait,

source§

fn setup<'life0, 'async_trait>( + 'life1: 'async_trait,

source§

fn setup<'life0, 'async_trait>( _network: &'life0 mut MockNetwork<Self> ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

Setup runs after setting up the network but before starting a test.
source§

impl<Types, P: Send + Sync> Query for SqlDataSource<Types, P>
where - Types: NodeType,

source§

fn client<'life0, 'async_trait>( + 'life0: 'async_trait,

Setup runs after setting up the network but before starting a test.
source§

impl<Types, P: Send + Sync> Query for SqlDataSource<Types, P>
where + Types: NodeType,

source§

fn client<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = Cow<'_, Arc<Client>>> + Send + 'async_trait>>
where Self: 'async_trait, diff --git a/hotshot_query_service/data_source/storage/fs/struct.FileSystemStorage.html b/hotshot_query_service/data_source/storage/fs/struct.FileSystemStorage.html index 37a242383..1e2cabc35 100644 --- a/hotshot_query_service/data_source/storage/fs/struct.FileSystemStorage.html +++ b/hotshot_query_service/data_source/storage/fs/struct.FileSystemStorage.html @@ -129,7 +129,7 @@ ) -> Pin<Box<dyn Future<Output = Result<Option<u64>, Self::Error>> + Send + 'async_trait>>
where Self: Send + 'async_trait, 'life0: 'async_trait,

source§

impl<Types: NodeType> PrunedHeightStorage for FileSystemStorage<Types>
where - Payload<Types>: QueryablePayload,

§

type Error = Infallible

source§

fn save_pruned_height<'life0, 'async_trait>( + Payload<Types>: QueryablePayload,

§

type Error = Infallible

source§

fn save_pruned_height<'life0, 'async_trait>( &'life0 mut self, _height: u64 ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where @@ -141,7 +141,7 @@ 'life0: 'async_trait,

source§

impl<Types: NodeType> PrunerConfig for FileSystemStorage<Types>
where Payload<Types>: QueryablePayload,

source§

impl<Types: NodeType> UpdateAvailabilityData<Types> for FileSystemStorage<Types>
where Payload<Types>: QueryablePayload, - Header<Types>: QueryableHeader<Types>,

§

type Error = PersistenceError

source§

fn insert_leaf<'life0, 'async_trait>( + Header<Types>: QueryableHeader<Types>,

§

type Error = PersistenceError

source§

fn insert_leaf<'life0, 'async_trait>( &'life0 mut self, leaf: LeafQueryData<Types> ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where @@ -158,7 +158,7 @@ ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source§

impl<Types: NodeType> VersionedDataSource for FileSystemStorage<Types>
where - Payload<Types>: QueryablePayload,

§

type Error = PersistenceError

source§

fn commit<'life0, 'async_trait>( + Payload<Types>: QueryablePayload,

§

type Error = PersistenceError

source§

fn commit<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<(), PersistenceError>> + Send + 'async_trait>>
where Self: 'async_trait, diff --git a/hotshot_query_service/data_source/storage/no_storage/index.html b/hotshot_query_service/data_source/storage/no_storage/index.html index 7cf15ca08..18204082b 100644 --- a/hotshot_query_service/data_source/storage/no_storage/index.html +++ b/hotshot_query_service/data_source/storage/no_storage/index.html @@ -1,2 +1,2 @@ hotshot_query_service::data_source::storage::no_storage - Rust -

Modules

Structs

  • Mock storage implementation which doesn’t actually store anything.
\ No newline at end of file +

Modules

Structs

  • Mock storage implementation which doesn’t actually store anything.
\ No newline at end of file diff --git a/hotshot_query_service/data_source/storage/no_storage/struct.NoStorage.html b/hotshot_query_service/data_source/storage/no_storage/struct.NoStorage.html index 2298aa60f..bd39d5809 100644 --- a/hotshot_query_service/data_source/storage/no_storage/struct.NoStorage.html +++ b/hotshot_query_service/data_source/storage/no_storage/struct.NoStorage.html @@ -95,7 +95,7 @@ &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<Option<u64>, Self::Error>> + Send + 'async_trait>>
where Self: Send + 'async_trait, - 'life0: 'async_trait,

source§

impl PrunedHeightStorage for NoStorage

§

type Error = Infallible

source§

fn save_pruned_height<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

impl PrunedHeightStorage for NoStorage

§

type Error = Infallible

source§

fn save_pruned_height<'life0, 'async_trait>( &'life0 mut self, _height: u64 ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where @@ -105,7 +105,7 @@ ) -> Pin<Box<dyn Future<Output = Result<Option<u64>, Self::Error>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait,

source§

impl PrunerConfig for NoStorage

source§

impl<Types: NodeType> UpdateAvailabilityData<Types> for NoStorage
where - Payload<Types>: QueryablePayload,

§

type Error = Infallible

source§

fn insert_leaf<'life0, 'async_trait>( + Payload<Types>: QueryablePayload,

§

type Error = Infallible

source§

fn insert_leaf<'life0, 'async_trait>( &'life0 mut self, _leaf: LeafQueryData<Types> ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where @@ -121,7 +121,7 @@ _share: Option<VidShare> ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

impl VersionedDataSource for NoStorage

§

type Error = Infallible

source§

fn commit<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

impl VersionedDataSource for NoStorage

§

type Error = Infallible

source§

fn commit<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>
where Self: 'async_trait, diff --git a/hotshot_query_service/data_source/storage/no_storage/testing/enum.DataSource.html b/hotshot_query_service/data_source/storage/no_storage/testing/enum.DataSource.html index 798036214..bfb799451 100644 --- a/hotshot_query_service/data_source/storage/no_storage/testing/enum.DataSource.html +++ b/hotshot_query_service/data_source/storage/no_storage/testing/enum.DataSource.html @@ -1,8 +1,8 @@ DataSource in hotshot_query_service::data_source::storage::no_storage::testing - Rust -
pub enum DataSource {
+    

Variants§

Trait Implementations§

source§

impl AvailabilityDataSource<MockTypes> for DataSource

source§

fn get_block_with_transaction<'life0, 'async_trait>( &'life0 self, hash: TransactionHash<MockTypes> ) -> Pin<Box<dyn Future<Output = Fetch<(BlockQueryData<MockTypes>, TransactionIndex<MockTypes>)>> + Send + 'async_trait>>
where @@ -17,49 +17,49 @@ where R: RangeBounds<usize> + Send

§

type VidCommonRange<R> = Pin<Box<dyn Stream<Item = Fetch<VidCommonQueryData<MockTypes>>> + Send>> where - R: RangeBounds<usize> + Send

source§

fn get_leaf<'life0, 'async_trait, ID>( + R: RangeBounds<usize> + Send

source§

fn get_leaf<'life0, 'async_trait, ID>( &'life0 self, id: ID ) -> Pin<Box<dyn Future<Output = Fetch<LeafQueryData<MockTypes>>> + Send + 'async_trait>>
where ID: Into<LeafId<MockTypes>> + Send + Sync + 'async_trait, Self: 'async_trait, - 'life0: 'async_trait,

source§

fn get_block<'life0, 'async_trait, ID>( + 'life0: 'async_trait,

source§

fn get_block<'life0, 'async_trait, ID>( &'life0 self, id: ID ) -> Pin<Box<dyn Future<Output = Fetch<BlockQueryData<MockTypes>>> + Send + 'async_trait>>
where ID: Into<BlockId<MockTypes>> + Send + Sync + 'async_trait, Self: 'async_trait, - 'life0: 'async_trait,

source§

fn get_payload<'life0, 'async_trait, ID>( + 'life0: 'async_trait,

source§

fn get_payload<'life0, 'async_trait, ID>( &'life0 self, id: ID ) -> Pin<Box<dyn Future<Output = Fetch<PayloadQueryData<MockTypes>>> + Send + 'async_trait>>
where ID: Into<BlockId<MockTypes>> + Send + Sync + 'async_trait, Self: 'async_trait, - 'life0: 'async_trait,

source§

fn get_vid_common<'life0, 'async_trait, ID>( + 'life0: 'async_trait,

source§

fn get_vid_common<'life0, 'async_trait, ID>( &'life0 self, id: ID ) -> Pin<Box<dyn Future<Output = Fetch<VidCommonQueryData<MockTypes>>> + Send + 'async_trait>>
where ID: Into<BlockId<MockTypes>> + Send + Sync + 'async_trait, Self: 'async_trait, - 'life0: 'async_trait,

source§

fn get_leaf_range<'life0, 'async_trait, R>( + 'life0: 'async_trait,

source§

fn get_leaf_range<'life0, 'async_trait, R>( &'life0 self, range: R ) -> Pin<Box<dyn Future<Output = Self::LeafRange<R>> + Send + 'async_trait>>
where R: RangeBounds<usize> + Send + 'static + 'async_trait, Self: 'async_trait, - 'life0: 'async_trait,

source§

fn get_block_range<'life0, 'async_trait, R>( + 'life0: 'async_trait,

source§

fn get_block_range<'life0, 'async_trait, R>( &'life0 self, range: R ) -> Pin<Box<dyn Future<Output = Self::BlockRange<R>> + Send + 'async_trait>>
where R: RangeBounds<usize> + Send + 'static + 'async_trait, Self: 'async_trait, - 'life0: 'async_trait,

source§

fn get_payload_range<'life0, 'async_trait, R>( + 'life0: 'async_trait,

source§

fn get_payload_range<'life0, 'async_trait, R>( &'life0 self, range: R ) -> Pin<Box<dyn Future<Output = Self::PayloadRange<R>> + Send + 'async_trait>>
where R: RangeBounds<usize> + Send + 'static + 'async_trait, Self: 'async_trait, - 'life0: 'async_trait,

source§

fn get_vid_common_range<'life0, 'async_trait, R>( + 'life0: 'async_trait,

source§

fn get_vid_common_range<'life0, 'async_trait, R>( &'life0 self, range: R ) -> Pin<Box<dyn Future<Output = Self::VidCommonRange<R>> + Send + 'async_trait>>
where @@ -85,60 +85,60 @@ from: usize ) -> Pin<Box<dyn Future<Output = BoxStream<'static, VidCommonQueryData<Types>>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, - 'life0: 'async_trait,

source§

impl DataSourceLifeCycle for DataSource

§

type Storage = Storage

Backing storage for the data source. Read more
source§

fn create<'async_trait>( + 'life0: 'async_trait,

source§

impl DataSourceLifeCycle for DataSource

§

type Storage = Storage

Backing storage for the data source. Read more
source§

fn create<'async_trait>( node_id: usize ) -> Pin<Box<dyn Future<Output = Self::Storage> + Send + 'async_trait>>
where - Self: 'async_trait,

source§

fn connect<'life0, 'async_trait>( + Self: 'async_trait,

source§

fn connect<'life0, 'async_trait>( db: &'life0 Self::Storage ) -> Pin<Box<dyn Future<Output = Self> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn reset<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

fn reset<'life0, 'async_trait>( db: &'life0 Self::Storage ) -> Pin<Box<dyn Future<Output = Self> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn setup<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

fn setup<'life0, 'async_trait>( network: &'life0 mut MockNetwork<Self> ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

Setup runs after setting up the network but before starting a test.
source§

fn handle_event<'life0, 'life1, 'async_trait>( + 'life0: 'async_trait,

Setup runs after setting up the network but before starting a test.
source§

fn handle_event<'life0, 'life1, 'async_trait>( &'life0 mut self, event: &'life1 Event<MockTypes> ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, - 'life1: 'async_trait,

source§

impl NodeDataSource<MockTypes> for DataSource

source§

fn block_height<'life0, 'async_trait>( + 'life1: 'async_trait,

source§

impl NodeDataSource<MockTypes> for DataSource

source§

fn block_height<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = QueryResult<usize>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn count_transactions<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

fn count_transactions<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = QueryResult<usize>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn payload_size<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

fn payload_size<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = QueryResult<usize>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn vid_share<'life0, 'async_trait, ID>( + 'life0: 'async_trait,

source§

fn vid_share<'life0, 'async_trait, ID>( &'life0 self, id: ID ) -> Pin<Box<dyn Future<Output = QueryResult<VidShare>> + Send + 'async_trait>>
where ID: Into<BlockId<MockTypes>> + Send + Sync + 'async_trait, Self: 'async_trait, - 'life0: 'async_trait,

source§

fn sync_status<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

fn sync_status<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = QueryResult<SyncStatus>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn get_header_window<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

fn get_header_window<'life0, 'async_trait>( &'life0 self, start: impl 'async_trait + Into<WindowStart<MockTypes>> + Send + Sync, end: u64 ) -> Pin<Box<dyn Future<Output = QueryResult<TimeWindowQueryData<Header<MockTypes>>>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

impl StatusDataSource for DataSource

source§

fn block_height<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

impl StatusDataSource for DataSource

source§

fn block_height<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = QueryResult<usize>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn metrics(&self) -> &PrometheusMetrics

source§

fn consensus_metrics(&self) -> QueryResult<PrometheusMetrics>

source§

fn elapsed_time_since_last_decide<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

fn metrics(&self) -> &PrometheusMetrics

source§

fn consensus_metrics(&self) -> QueryResult<PrometheusMetrics>

source§

fn elapsed_time_since_last_decide<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = QueryResult<u64>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, @@ -150,27 +150,27 @@ &'life0 self ) -> Pin<Box<dyn Future<Output = QueryResult<f64>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, - 'life0: 'async_trait,

source§

impl UpdateAvailabilityData<MockTypes> for DataSource

§

type Error = QueryError

source§

fn insert_leaf<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

impl UpdateAvailabilityData<MockTypes> for DataSource

§

type Error = QueryError

source§

fn insert_leaf<'life0, 'async_trait>( &'life0 mut self, leaf: LeafQueryData<MockTypes> ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn insert_block<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

fn insert_block<'life0, 'async_trait>( &'life0 mut self, block: BlockQueryData<MockTypes> ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn insert_vid<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

fn insert_vid<'life0, 'async_trait>( &'life0 mut self, common: VidCommonQueryData<MockTypes>, share: Option<VidShare> ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

impl VersionedDataSource for DataSource

§

type Error = QueryError

source§

fn commit<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

impl VersionedDataSource for DataSource

§

type Error = QueryError

source§

fn commit<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

Atomically commit to all outstanding modifications to the data. Read more
source§

fn revert<'life0, 'async_trait>( + 'life0: 'async_trait,

Atomically commit to all outstanding modifications to the data. Read more
source§

fn revert<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, @@ -311,5 +311,5 @@ [WithDispatch] wrapper. Read more

source§

impl<T> WithSubscriber for T

source§

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
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

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

impl<T> TestableDataSource for T
where +WithDispatch wrapper. Read more
source§

impl<T> TestableDataSource for T

\ No newline at end of file diff --git a/hotshot_query_service/data_source/storage/no_storage/testing/enum.Storage.html b/hotshot_query_service/data_source/storage/no_storage/testing/enum.Storage.html index 350b01dad..c2aa217e8 100644 --- a/hotshot_query_service/data_source/storage/no_storage/testing/enum.Storage.html +++ b/hotshot_query_service/data_source/storage/no_storage/testing/enum.Storage.html @@ -1,5 +1,5 @@ Storage in hotshot_query_service::data_source::storage::no_storage::testing - Rust -
pub enum Storage {
+    
pub enum Storage {
     Sql(TmpDb),
     NoStorage {
         fetch_from_port: u16,
diff --git a/hotshot_query_service/data_source/storage/sql/struct.LTree.html b/hotshot_query_service/data_source/storage/sql/struct.LTree.html
index 696d497e8..cb355d23f 100644
--- a/hotshot_query_service/data_source/storage/sql/struct.LTree.html
+++ b/hotshot_query_service/data_source/storage/sql/struct.LTree.html
@@ -9,7 +9,7 @@
     ty: &Type,
     raw: &'a [u8]
 ) -> Result<Self, Box<dyn Error + Sync + Send>>
Creates a new value of this type from a buffer of data of the specified -Postgres Type in its binary format. Read more
source§

fn accepts(ty: &Type) -> bool

Determines if a value of this type can be created from the specified +Postgres Type in its binary format. Read more
source§

fn accepts(ty: &Type) -> bool

Determines if a value of this type can be created from the specified Postgres Type.
§

fn from_sql_null(ty: &Type) -> Result<Self, Box<dyn Error + Send + Sync>>

Creates a new value of this type from a NULL SQL value. Read more
§

fn from_sql_nullable( ty: &Type, raw: Option<&'a [u8]> @@ -21,7 +21,7 @@ out: &mut BytesMut ) -> Result<IsNull, Box<dyn Error + Sync + Send>>
where Self: Sized,

Converts the value of self into the binary format of the specified -Postgres Type, appending it to out. Read more
source§

fn accepts(ty: &Type) -> bool
where +Postgres Type, appending it to out. Read more

source§

fn accepts(ty: &Type) -> bool
where Self: Sized,

Determines if a value of this type can be converted to the specified Postgres Type.
source§

fn to_sql_checked( &self, diff --git a/hotshot_query_service/data_source/storage/sql/struct.Migration.html b/hotshot_query_service/data_source/storage/sql/struct.Migration.html index b02752101..1fca38438 100644 --- a/hotshot_query_service/data_source/storage/sql/struct.Migration.html +++ b/hotshot_query_service/data_source/storage/sql/struct.Migration.html @@ -53,9 +53,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/data_source/storage/sql/struct.SqlStorage.html b/hotshot_query_service/data_source/storage/sql/struct.SqlStorage.html index 7ec2d6dce..e35f579bf 100644 --- a/hotshot_query_service/data_source/storage/sql/struct.SqlStorage.html +++ b/hotshot_query_service/data_source/storage/sql/struct.SqlStorage.html @@ -106,7 +106,7 @@ &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<Option<u64>, QueryError>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

impl PrunedHeightStorage for SqlStorage

§

type Error = QueryError

source§

fn save_pruned_height<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

impl PrunedHeightStorage for SqlStorage

§

type Error = QueryError

source§

fn save_pruned_height<'life0, 'async_trait>( &'life0 mut self, height: u64 ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where @@ -200,7 +200,7 @@ block_number: u64 ) -> Pin<Box<dyn Future<Output = QueryResult<()>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

impl VersionedDataSource for SqlStorage

§

type Error = Error

source§

fn commit<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

impl VersionedDataSource for SqlStorage

§

type Error = Error

source§

fn commit<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where Self: 'async_trait, diff --git a/hotshot_query_service/data_source/storage/sql/trait.Query.html b/hotshot_query_service/data_source/storage/sql/trait.Query.html index 150c4c783..39a504532 100644 --- a/hotshot_query_service/data_source/storage/sql/trait.Query.html +++ b/hotshot_query_service/data_source/storage/sql/trait.Query.html @@ -135,5 +135,5 @@

Object Safety§

This trait is not object safe.

Implementors§

source§

impl Query for SqlStorage

source§

impl<'a> Query for Transaction<'a>

Query the underlying SQL database.

The results will reflect the state after the statements thus far added to this transaction have been applied, even though those effects have not been committed to the database yet.

-
source§

impl<Types, P: Send + Sync> Query for SqlDataSource<Types, P>
where +
source§

impl<Types, P: Send + Sync> Query for SqlDataSource<Types, P>
where Types: NodeType,

\ No newline at end of file diff --git a/hotshot_query_service/data_source/struct.ExtensibleDataSource.html b/hotshot_query_service/data_source/struct.ExtensibleDataSource.html index f680df5f1..d377a32aa 100644 --- a/hotshot_query_service/data_source/struct.ExtensibleDataSource.html +++ b/hotshot_query_service/data_source/struct.ExtensibleDataSource.html @@ -135,7 +135,7 @@ ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, - 'life1: 'async_trait,
source§

fn setup<'life0, 'async_trait>( + 'life1: 'async_trait,

source§

fn setup<'life0, 'async_trait>( _network: &'life0 mut MockNetwork<Self> ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, @@ -389,5 +389,5 @@ [WithDispatch] wrapper. Read more

source§

impl<T> WithSubscriber for T

source§

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
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

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

impl<T> TestableDataSource for T
where +WithDispatch wrapper. Read more
source§

impl<T> TestableDataSource for T

\ No newline at end of file diff --git a/hotshot_query_service/data_source/struct.MetricsDataSource.html b/hotshot_query_service/data_source/struct.MetricsDataSource.html index 649370702..ef087aa10 100644 --- a/hotshot_query_service/data_source/struct.MetricsDataSource.html +++ b/hotshot_query_service/data_source/struct.MetricsDataSource.html @@ -14,7 +14,7 @@
let data_source = MetricsDataSource::default();
 let hotshot = SystemContext::<AppTypes, AppNodeImpl>::init(
-    ConsensusMetricsValue::new(&*data_source.populate_metrics()),
+    ConsensusMetricsValue::new(&*data_source.populate_metrics()), panic!(),
     // Other fields omitted
 ).await.map_err(Error::internal)?.0;

Trait Implementations§

source§

impl Clone for MetricsDataSource

source§

fn clone(&self) -> MetricsDataSource

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 DataSourceLifeCycle for MetricsDataSource

§

type Storage = PrometheusMetrics

Backing storage for the data source. Read more
source§

fn create<'async_trait>( @@ -34,7 +34,7 @@ ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, - 'life1: 'async_trait,

source§

fn setup<'life0, 'async_trait>( + 'life1: 'async_trait,

source§

fn setup<'life0, 'async_trait>( _network: &'life0 mut MockNetwork<Self> ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, diff --git a/hotshot_query_service/data_source/trait.VersionedDataSource.html b/hotshot_query_service/data_source/trait.VersionedDataSource.html index 831bbb239..08f915482 100644 --- a/hotshot_query_service/data_source/trait.VersionedDataSource.html +++ b/hotshot_query_service/data_source/trait.VersionedDataSource.html @@ -38,7 +38,7 @@ 'life0: 'async_trait,

Erase all oustanding modifications to the data.

This function must not return if it has failed to revert changes. Inability to revert changes to the database is considered a fatal error, and this function may panic.

-

Implementors§

Implementors§

source§

impl VersionedDataSource for DataSource

source§

impl VersionedDataSource for NoStorage

source§

impl VersionedDataSource for SqlStorage

§

type Error = Error

source§

impl<D, U> VersionedDataSource for ExtensibleDataSource<D, U>
where D: VersionedDataSource + Send, U: Send,

source§

impl<Types, S, P> VersionedDataSource for FetchingDataSource<Types, S, P>
where Types: NodeType, diff --git a/hotshot_query_service/data_source/type.FileSystemDataSource.html b/hotshot_query_service/data_source/type.FileSystemDataSource.html index f6ae65ac0..344088f85 100644 --- a/hotshot_query_service/data_source/type.FileSystemDataSource.html +++ b/hotshot_query_service/data_source/type.FileSystemDataSource.html @@ -1,5 +1,5 @@ FileSystemDataSource in hotshot_query_service::data_source - Rust -
pub type FileSystemDataSource<Types, P> = FetchingDataSource<Types, FileSystemStorage<Types>, P>;
Expand description

A data source for the APIs provided in this crate, backed by the local file system.

+
pub type FileSystemDataSource<Types, P> = FetchingDataSource<Types, FileSystemStorage<Types>, P>;
Expand description

A data source for the APIs provided in this crate, backed by the local file system.

Synchronization and atomicity of persisted data structures are provided via [atomic_store]. The methods commit, revert, and skip_version of this @@ -53,10 +53,11 @@

Composition

// additional state for other modules } -async fn init_server( +async fn init_server<Ver: StaticVersionType + 'static>( storage_path: &Path, hotshot: SystemContextHandle<AppTypes, AppNodeImpl>, -) -> Result<App<Arc<RwLock<AppState>>, Error>, Error> { + _: Ver, +) -> Result<App<Arc<RwLock<AppState>>, Error, Ver>, Error> { let mut loader = AtomicStoreLoader::create(storage_path, "my_app") // or `open` .map_err(Error::internal)?; let hotshot_qs = FileSystemDataSource::create_with_store(&mut loader, NoFetching) @@ -88,16 +89,16 @@

Composition

Ok(app) }
-

Aliased Type§

struct FileSystemDataSource<Types, P> { /* private fields */ }

Implementations§

source§

impl<Types: NodeType, P> FileSystemDataSource<Types, P>
where +

Aliased Type§

struct FileSystemDataSource<Types, P> { /* private fields */ }

Implementations§

source§

impl<Types: NodeType, P> FileSystemDataSource<Types, P>
where Payload<Types>: QueryablePayload, Header<Types>: QueryableHeader<Types>, - P: AvailabilityProvider<Types>,

source

pub async fn create(path: &Path, provider: P) -> Result<Self>

Create a new FileSystemDataSource with storage at path.

+ P: AvailabilityProvider<Types>,

source

pub async fn create(path: &Path, provider: P) -> Result<Self>

Create a new FileSystemDataSource with storage at path.

If there is already data at path, it will be archived.

The FileSystemDataSource will manage its own persistence synchronization.

-
source

pub async fn open(path: &Path, provider: P) -> Result<Self>

Open an existing FileSystemDataSource from storage at path.

+
source

pub async fn open(path: &Path, provider: P) -> Result<Self>

Open an existing FileSystemDataSource from storage at path.

If there is no data at path, a new store will be created.

The FileSystemDataSource will manage its own persistence synchronization.

-
source

pub async fn create_with_store( +

source

pub async fn create_with_store( loader: &mut AtomicStoreLoader, provider: P ) -> Result<Self>

Create a new FileSystemDataSource using a persistent storage loader.

@@ -106,7 +107,7 @@

Composition

The FileSystemDataSource will register its persistent data structures with loader. The caller is responsible for creating an AtomicStore from loader and managing synchronization of the store.

-
source

pub async fn open_with_store( +

source

pub async fn open_with_store( loader: &mut AtomicStoreLoader, provider: P ) -> Result<Self>

Open an existing FileSystemDataSource using a persistent storage loader.

@@ -115,7 +116,7 @@

Composition

The FileSystemDataSource will register its persistent data structures with loader. The caller is responsible for creating an AtomicStore from loader and managing synchronization of the store.

-
source

pub async fn skip_version(&mut self) -> Result<()>

Advance the version of the persistent store without committing changes to persistent state.

+
source

pub async fn skip_version(&mut self) -> Result<()>

Advance the version of the persistent store without committing changes to persistent state.

This function is useful when the AtomicStore synchronizing storage for this FileSystemDataSource is being managed by the caller. The caller may want to persist some changes to other modules whose state is managed by the same @@ -124,24 +125,24 @@

Composition

this FileSystemDataSource must be advanced, either by commit or, if there are no outstanding changes, skip_version.

-

Trait Implementations§

source§

impl<P: AvailabilityProvider<MockTypes> + Default> DataSourceLifeCycle for FileSystemDataSource<MockTypes, P>

§

type Storage = TempDir

Backing storage for the data source. Read more
source§

fn create<'async_trait>( +

Trait Implementations§

source§

impl<P: AvailabilityProvider<MockTypes> + Default> DataSourceLifeCycle for FileSystemDataSource<MockTypes, P>

§

type Storage = TempDir

Backing storage for the data source. Read more
source§

fn create<'async_trait>( node_id: usize ) -> Pin<Box<dyn Future<Output = Self::Storage> + Send + 'async_trait>>
where - Self: 'async_trait,

source§

fn connect<'life0, 'async_trait>( + Self: 'async_trait,

source§

fn connect<'life0, 'async_trait>( storage: &'life0 Self::Storage ) -> Pin<Box<dyn Future<Output = Self> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn reset<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

fn reset<'life0, 'async_trait>( storage: &'life0 Self::Storage ) -> Pin<Box<dyn Future<Output = Self> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn handle_event<'life0, 'life1, 'async_trait>( + 'life0: 'async_trait,

source§

fn handle_event<'life0, 'life1, 'async_trait>( &'life0 mut self, event: &'life1 Event<MockTypes> ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, - 'life1: 'async_trait,

source§

fn setup<'life0, 'async_trait>( + 'life1: 'async_trait,

source§

fn setup<'life0, 'async_trait>( _network: &'life0 mut MockNetwork<Self> ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, diff --git a/hotshot_query_service/enum.Error.html b/hotshot_query_service/enum.Error.html index a28bd55e6..5da16f067 100644 --- a/hotshot_query_service/enum.Error.html +++ b/hotshot_query_service/enum.Error.html @@ -1,4 +1,4 @@ -Error in hotshot_query_service - Rust +Error in hotshot_query_service - Rust
pub enum Error {
     Availability {
         source: Error,
@@ -17,13 +17,13 @@
         status: StatusCode,
     },
 }

Variants§

§

Availability

Fields

§source: Error
§

Node

Fields

§source: Error
§

Status

Fields

§source: Error
§

MerklizedState

Fields

§source: Error
§

Custom

Fields

§message: String
§status: StatusCode

Implementations§

source§

impl Error

source

pub fn internal<M: Display>(message: M) -> Self

Trait Implementations§

source§

impl Clone for Error

source§

fn clone(&self) -> Error

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 Error

source§

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

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

impl<'de> Deserialize<'de> for Error

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 Display for Error

source§

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

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

impl Error for Error
where - Self: Debug + Display,

source§

fn description(&self) -> &str

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

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

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

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

The lower-level source of this error, if any. Read more
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 Error for Error

source§

fn catch_all(status: StatusCode, message: String) -> Self

source§

fn status(&self) -> StatusCode

§

fn from_io_error(source: Error) -> Self

§

fn from_config_error(source: ConfigError) -> Self

§

fn from_route_error<E>(source: RouteError<E>) -> Self
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for Error

source§

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

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

impl Error for Error

source§

fn catch_all(status: StatusCode, message: String) -> Self

source§

fn status(&self) -> StatusCode

§

fn from_io_error(source: Error) -> Self

§

fn from_config_error(source: ConfigError) -> Self

§

fn from_route_error<E>(source: RouteError<E>) -> Self
where E: Display,

§

fn from_request_error(source: RequestError) -> Self

§

fn from_socket_error<E>(source: SocketError<E>) -> Self
where - E: Display,

§

fn into_tide_error(self) -> Error

§

fn from_server_error(source: Error) -> Self

source§

impl ErrorCompat for Error

source§

fn backtrace(&self) -> Option<&Backtrace>

Returns a Backtrace that may be printed.
§

fn iter_chain(&self) -> ChainCompat<'_>
where + E: Display,

§

fn into_tide_error(self) -> Error

§

fn from_server_error(source: Error) -> Self

source§

impl Error for Error
where + Self: Debug + Display,

source§

fn description(&self) -> &str

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

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

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

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

The lower-level source of this error, if any. Read more
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 ErrorCompat for Error

source§

fn backtrace(&self) -> Option<&Backtrace>

Returns a Backtrace that may be printed.
§

fn iter_chain(&self) -> ChainCompat<'_, '_>
where Self: AsErrorSource,

Returns an iterator for traversing the chain of errors, starting with the current error -and continuing with recursive calls to Error::source. Read more
source§

impl From<(String, StatusCode)> for Error

source§

fn from(original: (String, StatusCode)) -> Error

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(original: Error) -> Error

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(original: Error) -> Error

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(original: Error) -> Error

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(original: Error) -> Error

Converts to this type from the input type.
source§

impl Serialize for Error

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where +and continuing with recursive calls to Error::source. Read more

source§

impl From<(String, StatusCode)> for Error

source§

fn from(original: (String, StatusCode)) -> Error

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(original: Error) -> Error

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(original: Error) -> Error

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(original: Error) -> Error

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(original: Error) -> Error

Converts to this type from the input type.
source§

impl Serialize for Error

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

§

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
§

impl<T> Any for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

§

fn type_name(&self) -> &'static str

§

impl<T> AnySync for T
where @@ -32,6 +32,9 @@ ) -> <T as Pointee>::Metadata

Converts some archived metadata to the pointer metadata for itself.
§

impl<T> AsErrorSource for T
where T: Error + 'static,

§

fn as_error_source(&self) -> &(dyn Error + 'static)

For maximum effectiveness, this needs to be called as a method to benefit from Rust’s automatic dereferencing of method +receivers.
§

impl<T> AsErrorSource for T
where + T: Error + 'static,

§

fn as_error_source(&self) -> &(dyn Error + 'static)

For maximum effectiveness, this needs to be called as a method +to benefit from Rust’s automatic dereferencing of method receivers.
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where T: 'a,

§

fn implicit( diff --git a/hotshot_query_service/enum.QueryError.html b/hotshot_query_service/enum.QueryError.html index bd91ff013..6fbbfd59b 100644 --- a/hotshot_query_service/enum.QueryError.html +++ b/hotshot_query_service/enum.QueryError.html @@ -1,5 +1,5 @@ -QueryError in hotshot_query_service - Rust -

Implementations§

source§

impl QueryError

source

pub fn status(&self) -> StatusCode

Trait Implementations§

source§

impl Clone for QueryError

source§

fn clone(&self) -> QueryError

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 QueryError

source§

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

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

impl<'de> Deserialize<'de> for QueryError

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 Display for QueryError

source§

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

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

impl Error for QueryError
where - Self: Debug + Display,

source§

fn description(&self) -> &str

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

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

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

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

The lower-level source of this error, if any. Read more
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 ErrorCompat for QueryError

source§

fn backtrace(&self) -> Option<&Backtrace>

Returns a Backtrace that may be printed.
§

fn iter_chain(&self) -> ChainCompat<'_>
where +

Implementations§

source§

impl QueryError

source

pub fn status(&self) -> StatusCode

Trait Implementations§

source§

impl Clone for QueryError

source§

fn clone(&self) -> QueryError

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 QueryError

source§

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

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

impl<'de> Deserialize<'de> for QueryError

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 Display for QueryError

source§

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

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

impl Error for QueryError
where + Self: Debug + Display,

source§

fn description(&self) -> &str

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

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

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

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

The lower-level source of this error, if any. Read more
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 ErrorCompat for QueryError

source§

fn backtrace(&self) -> Option<&Backtrace>

Returns a Backtrace that may be printed.
§

fn iter_chain(&self) -> ChainCompat<'_, '_>
where Self: AsErrorSource,

Returns an iterator for traversing the chain of errors, starting with the current error -and continuing with recursive calls to Error::source. Read more
source§

impl From<QueryError> for Error

source§

fn from(original: QueryError) -> Error

Converts to this type from the input type.
source§

impl From<QueryError> for Error

source§

fn from(original: QueryError) -> Error

Converts to this type from the input type.
source§

impl IntoError<QueryError> for MissingSnafu
where - QueryError: Error + ErrorCompat,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> QueryError

Combine the information to produce the error
source§

impl IntoError<QueryError> for NotFoundSnafu
where - QueryError: Error + ErrorCompat,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> QueryError

Combine the information to produce the error
source§

impl<__T0> IntoError<QueryError> for Snafu<__T0>
where +and continuing with recursive calls to Error::source. Read more

source§

impl From<QueryError> for Error

source§

fn from(original: QueryError) -> Error

Converts to this type from the input type.
source§

impl From<QueryError> for Error

source§

fn from(original: QueryError) -> Error

Converts to this type from the input type.
source§

impl IntoError<QueryError> for MissingSnafu
where + QueryError: Error + ErrorCompat,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> QueryError

Combine the information to produce the error
source§

impl IntoError<QueryError> for NotFoundSnafu
where + QueryError: Error + ErrorCompat,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> QueryError

Combine the information to produce the error
source§

impl<__T0> IntoError<QueryError> for Snafu<__T0>
where QueryError: Error + ErrorCompat, - __T0: Into<String>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> QueryError

Combine the information to produce the error
source§

impl Serialize for QueryError

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __T0: Into<String>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> QueryError

Combine the information to produce the error
source§

impl Serialize for QueryError

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. 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
§

impl<T> Any for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

§

fn type_name(&self) -> &'static str

§

impl<T> AnySync for T
where @@ -27,6 +27,9 @@ ) -> <T as Pointee>::Metadata

Converts some archived metadata to the pointer metadata for itself.
§

impl<T> AsErrorSource for T
where T: Error + 'static,

§

fn as_error_source(&self) -> &(dyn Error + 'static)

For maximum effectiveness, this needs to be called as a method to benefit from Rust’s automatic dereferencing of method +receivers.
§

impl<T> AsErrorSource for T
where + T: Error + 'static,

§

fn as_error_source(&self) -> &(dyn Error + 'static)

For maximum effectiveness, this needs to be called as a method +to benefit from Rust’s automatic dereferencing of method receivers.
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where T: 'a,

§

fn implicit( diff --git a/hotshot_query_service/fetching/provider/struct.AnyProvider.html b/hotshot_query_service/fetching/provider/struct.AnyProvider.html index adfec34d8..a2279ab1e 100644 --- a/hotshot_query_service/fetching/provider/struct.AnyProvider.html +++ b/hotshot_query_service/fetching/provider/struct.AnyProvider.html @@ -1,5 +1,5 @@ AnyProvider in hotshot_query_service::fetching::provider - Rust -
pub struct AnyProvider<Types>
where +
pub struct AnyProvider<Types>
where Types: NodeType,
{ /* private fields */ }
Expand description

Adaptor combining multiple data availability providers.

This provider adaptor implements the Provider protocol by fetching requested objects from several different underlying providers. If any of the underlying sources @@ -16,37 +16,37 @@

Examples

use hotshot_query_service::fetching::provider::{AnyProvider, QueryServiceProvider};
 
-let qs1 = QueryServiceProvider::new("https://backup.query-service.1".parse()?);
-let qs2 = QueryServiceProvider::new("https://backup.query-service.2".parse()?);
+let qs1 = QueryServiceProvider::new("https://backup.query-service.1".parse()?, STATIC_VER_0_1);
+let qs2 = QueryServiceProvider::new("https://backup.query-service.2".parse()?, STATIC_VER_0_1);
 let provider = AnyProvider::<Types>::default()
     .with_provider(qs1)
     .with_provider(qs2);
-

Implementations§

source§

impl<Types> AnyProvider<Types>
where - Types: NodeType,

source

pub fn with_provider<P>(self, provider: P) -> Self
where +

Implementations§

source§

impl<Types> AnyProvider<Types>
where + Types: NodeType,

source

pub fn with_provider<P>(self, provider: P) -> Self
where P: AvailabilityProvider<Types> + Debug + 'static,

Add a sub-provider which fetches both blocks and leaves.

-
source

pub fn with_block_provider<P>(self, provider: P) -> Self
where +

source

pub fn with_block_provider<P>(self, provider: P) -> Self
where P: Provider<Types, PayloadRequest> + Debug + 'static,

Add a sub-provider which fetches blocks.

-
source

pub fn with_leaf_provider<P>(self, provider: P) -> Self
where +

source

pub fn with_leaf_provider<P>(self, provider: P) -> Self
where P: Provider<Types, LeafRequest> + Debug + 'static,

Add a sub-provider which fetches leaves.

-
source

pub fn with_vid_common_provider<P>(self, provider: P) -> Self
where +

source

pub fn with_vid_common_provider<P>(self, provider: P) -> Self
where P: Provider<Types, VidCommonRequest> + Debug + 'static,

Add a sub-provider which fetches VID common data.

-

Trait Implementations§

source§

impl<Types> Clone for AnyProvider<Types>
where - Types: NodeType,

source§

fn clone(&self) -> Self

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<Types> Debug for AnyProvider<Types>
where - Types: NodeType,

source§

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

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

impl<Types> Default for AnyProvider<Types>
where - Types: NodeType,

source§

fn default() -> Self

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

impl<Types> Provider<Types, LeafRequest> for AnyProvider<Types>
where - Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( +

Trait Implementations§

source§

impl<Types> Clone for AnyProvider<Types>
where + Types: NodeType,

source§

fn clone(&self) -> Self

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<Types> Debug for AnyProvider<Types>
where + Types: NodeType,

source§

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

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

impl<Types> Default for AnyProvider<Types>
where + Types: NodeType,

source§

fn default() -> Self

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

impl<Types> Provider<Types, LeafRequest> for AnyProvider<Types>
where + Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( &'life0 self, req: LeafRequest ) -> Pin<Box<dyn Future<Output = Option<LeafQueryData<Types>>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

Fetch a resource.
source§

impl<Types> Provider<Types, PayloadRequest> for AnyProvider<Types>
where - Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( + 'life0: 'async_trait,

Fetch a resource.

source§

impl<Types> Provider<Types, PayloadRequest> for AnyProvider<Types>
where + Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( &'life0 self, req: PayloadRequest ) -> Pin<Box<dyn Future<Output = Option<Payload<Types>>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

Fetch a resource.
source§

impl<Types> Provider<Types, VidCommonRequest> for AnyProvider<Types>
where - Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( + 'life0: 'async_trait,

Fetch a resource.
source§

impl<Types> Provider<Types, VidCommonRequest> for AnyProvider<Types>
where + Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( &'life0 self, req: VidCommonRequest ) -> Pin<Box<dyn Future<Output = Option<VidCommon>> + Send + 'async_trait>>
where diff --git a/hotshot_query_service/fetching/provider/struct.QueryServiceProvider.html b/hotshot_query_service/fetching/provider/struct.QueryServiceProvider.html index e472c1516..f93a295a6 100644 --- a/hotshot_query_service/fetching/provider/struct.QueryServiceProvider.html +++ b/hotshot_query_service/fetching/provider/struct.QueryServiceProvider.html @@ -1,26 +1,26 @@ -QueryServiceProvider in hotshot_query_service::fetching::provider - Rust -
pub struct QueryServiceProvider { /* private fields */ }
Expand description

Data availability provider backed by another instance of this query service.

+QueryServiceProvider in hotshot_query_service::fetching::provider - Rust +
pub struct QueryServiceProvider<Ver: StaticVersionType> { /* private fields */ }
Expand description

Data availability provider backed by another instance of this query service.

This fetcher implements the Provider interface by querying the REST API provided by another instance of this query service to try and retrieve missing objects.

-

Implementations§

source§

impl QueryServiceProvider

source

pub fn new(url: Url) -> Self

Trait Implementations§

source§

impl Clone for QueryServiceProvider

source§

fn clone(&self) -> QueryServiceProvider

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 QueryServiceProvider

source§

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

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

impl<Types> Provider<Types, LeafRequest> for QueryServiceProvider
where - Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( +

Implementations§

source§

impl<Ver: StaticVersionType> QueryServiceProvider<Ver>

source

pub fn new(url: Url, _: Ver) -> Self

Trait Implementations§

source§

impl<Ver: Clone + StaticVersionType> Clone for QueryServiceProvider<Ver>

source§

fn clone(&self) -> QueryServiceProvider<Ver>

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<Ver: Debug + StaticVersionType> Debug for QueryServiceProvider<Ver>

source§

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

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

impl<Types, Ver: StaticVersionType> Provider<Types, LeafRequest> for QueryServiceProvider<Ver>
where + Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( &'life0 self, req: LeafRequest ) -> Pin<Box<dyn Future<Output = Option<LeafQueryData<Types>>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

Fetch a resource.
source§

impl<Types> Provider<Types, PayloadRequest> for QueryServiceProvider
where - Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( + 'life0: 'async_trait,

Fetch a resource.
source§

impl<Types, Ver: StaticVersionType> Provider<Types, PayloadRequest> for QueryServiceProvider<Ver>
where + Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( &'life0 self, req: PayloadRequest ) -> Pin<Box<dyn Future<Output = Option<Payload<Types>>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

Fetch a resource.
source§

impl<Types> Provider<Types, VidCommonRequest> for QueryServiceProvider
where - Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( + 'life0: 'async_trait,

Fetch a resource.
source§

impl<Types, Ver: StaticVersionType> Provider<Types, VidCommonRequest> for QueryServiceProvider<Ver>
where + Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( &'life0 self, req: VidCommonRequest ) -> Pin<Box<dyn Future<Output = Option<VidCommon>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

Fetch a resource.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where + 'life0: 'async_trait,

Fetch a resource.

Auto Trait Implementations§

§

impl<Ver> !RefUnwindSafe for QueryServiceProvider<Ver>

§

impl<Ver> Send for QueryServiceProvider<Ver>

§

impl<Ver> Sync for QueryServiceProvider<Ver>

§

impl<Ver> Unpin for QueryServiceProvider<Ver>

§

impl<Ver> !UnwindSafe for QueryServiceProvider<Ver>

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
§

impl<T> Any for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

§

fn type_name(&self) -> &'static str

§

impl<T> AnySync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

§

impl<T> ArchivePointee for T

§

type ArchivedMetadata = ()

The archived version of the pointer metadata for this type.
§

fn pointer_metadata( diff --git a/hotshot_query_service/fetching/provider/trait.Provider.html b/hotshot_query_service/fetching/provider/trait.Provider.html index f3d2d5a49..feb825022 100644 --- a/hotshot_query_service/fetching/provider/trait.Provider.html +++ b/hotshot_query_service/fetching/provider/trait.Provider.html @@ -23,13 +23,13 @@ req: T ) -> Pin<Box<dyn Future<Output = Option<T::Response>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

Implementors§

source§

impl<Types> Provider<Types, LeafRequest> for AnyProvider<Types>
where - Types: NodeType,

source§

impl<Types> Provider<Types, LeafRequest> for QueryServiceProvider
where - Types: NodeType,

source§

impl<Types> Provider<Types, PayloadRequest> for AnyProvider<Types>
where - Types: NodeType,

source§

impl<Types> Provider<Types, PayloadRequest> for QueryServiceProvider
where - Types: NodeType,

source§

impl<Types> Provider<Types, VidCommonRequest> for AnyProvider<Types>
where - Types: NodeType,

source§

impl<Types> Provider<Types, VidCommonRequest> for QueryServiceProvider
where + 'life0: 'async_trait,

Implementors§

source§

impl<Types> Provider<Types, LeafRequest> for AnyProvider<Types>
where + Types: NodeType,

source§

impl<Types> Provider<Types, PayloadRequest> for AnyProvider<Types>
where + Types: NodeType,

source§

impl<Types> Provider<Types, VidCommonRequest> for AnyProvider<Types>
where Types: NodeType,

source§

impl<Types, P, T> Provider<Types, T> for TestProvider<P>
where Types: NodeType, T: Request<Types> + 'static, - P: Provider<Types, T> + Sync,

source§

impl<Types, T: Send + Request<Types> + 'static> Provider<Types, T> for NoFetching

\ No newline at end of file + P: Provider<Types, T> + Sync,
source§

impl<Types, T: Send + Request<Types> + 'static> Provider<Types, T> for NoFetching

source§

impl<Types, Ver: StaticVersionType> Provider<Types, LeafRequest> for QueryServiceProvider<Ver>
where + Types: NodeType,

source§

impl<Types, Ver: StaticVersionType> Provider<Types, PayloadRequest> for QueryServiceProvider<Ver>
where + Types: NodeType,

source§

impl<Types, Ver: StaticVersionType> Provider<Types, VidCommonRequest> for QueryServiceProvider<Ver>
where + Types: NodeType,

\ No newline at end of file diff --git a/hotshot_query_service/fetching/request/struct.LeafRequest.html b/hotshot_query_service/fetching/request/struct.LeafRequest.html index f42513354..3b279da25 100644 --- a/hotshot_query_service/fetching/request/struct.LeafRequest.html +++ b/hotshot_query_service/fetching/request/struct.LeafRequest.html @@ -1,17 +1,17 @@ -LeafRequest in hotshot_query_service::fetching::request - Rust +LeafRequest in hotshot_query_service::fetching::request - Rust
pub struct LeafRequest(/* private fields */);
Expand description

A request for a leaf with a given height.

-

Trait Implementations§

source§

impl Clone for LeafRequest

source§

fn clone(&self) -> LeafRequest

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 LeafRequest

source§

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

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

impl From<LeafRequest> for usize

source§

fn from(original: LeafRequest) -> Self

Converts to this type from the input type.
source§

impl From<usize> for LeafRequest

source§

fn from(original: usize) -> LeafRequest

Converts to this type from the input type.
source§

impl Hash for LeafRequest

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 +

Trait Implementations§

source§

impl Clone for LeafRequest

source§

fn clone(&self) -> LeafRequest

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 LeafRequest

source§

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

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

impl From<LeafRequest> for usize

source§

fn from(original: LeafRequest) -> Self

Converts to this type from the input type.
source§

impl From<usize> for LeafRequest

source§

fn from(original: usize) -> LeafRequest

Converts to this type from the input type.
source§

impl Hash for LeafRequest

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, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl PartialEq for LeafRequest

source§

fn eq(&self, other: &LeafRequest) -> 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.
source§

impl<Types> Provider<Types, LeafRequest> for AnyProvider<Types>
where - Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( +sufficient, and should not be overridden without very good reason.

source§

impl<Types> Provider<Types, LeafRequest> for AnyProvider<Types>
where + Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( &'life0 self, req: LeafRequest ) -> Pin<Box<dyn Future<Output = Option<LeafQueryData<Types>>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

Fetch a resource.
source§

impl<Types> Provider<Types, LeafRequest> for QueryServiceProvider
where - Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( + 'life0: 'async_trait,

Fetch a resource.
source§

impl<Types, Ver: StaticVersionType> Provider<Types, LeafRequest> for QueryServiceProvider<Ver>
where + Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( &'life0 self, req: LeafRequest ) -> Pin<Box<dyn Future<Output = Option<LeafQueryData<Types>>> + Send + 'async_trait>>
where @@ -53,9 +53,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/fetching/request/struct.PayloadRequest.html b/hotshot_query_service/fetching/request/struct.PayloadRequest.html index de4dcdb1d..ec69bbd2c 100644 --- a/hotshot_query_service/fetching/request/struct.PayloadRequest.html +++ b/hotshot_query_service/fetching/request/struct.PayloadRequest.html @@ -1,17 +1,17 @@ -PayloadRequest in hotshot_query_service::fetching::request - Rust +PayloadRequest in hotshot_query_service::fetching::request - Rust
pub struct PayloadRequest(pub VidCommitment);
Expand description

A request for a payload with a given commitment.

Tuple Fields§

§0: VidCommitment

Trait Implementations§

source§

impl Clone for PayloadRequest

source§

fn clone(&self) -> PayloadRequest

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 PayloadRequest

source§

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

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

impl Hash for PayloadRequest

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, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl PartialEq for PayloadRequest

source§

fn eq(&self, other: &PayloadRequest) -> 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.
source§

impl<Types> Provider<Types, PayloadRequest> for AnyProvider<Types>
where - Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( +sufficient, and should not be overridden without very good reason.

source§

impl<Types> Provider<Types, PayloadRequest> for AnyProvider<Types>
where + Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( &'life0 self, req: PayloadRequest ) -> Pin<Box<dyn Future<Output = Option<Payload<Types>>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

Fetch a resource.
source§

impl<Types> Provider<Types, PayloadRequest> for QueryServiceProvider
where - Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( + 'life0: 'async_trait,

Fetch a resource.
source§

impl<Types, Ver: StaticVersionType> Provider<Types, PayloadRequest> for QueryServiceProvider<Ver>
where + Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( &'life0 self, req: PayloadRequest ) -> Pin<Box<dyn Future<Output = Option<Payload<Types>>> + Send + 'async_trait>>
where @@ -53,9 +53,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/fetching/request/struct.VidCommonRequest.html b/hotshot_query_service/fetching/request/struct.VidCommonRequest.html index 48ec07bde..a36d565fa 100644 --- a/hotshot_query_service/fetching/request/struct.VidCommonRequest.html +++ b/hotshot_query_service/fetching/request/struct.VidCommonRequest.html @@ -1,17 +1,17 @@ -VidCommonRequest in hotshot_query_service::fetching::request - Rust +VidCommonRequest in hotshot_query_service::fetching::request - Rust
pub struct VidCommonRequest(pub VidCommitment);
Expand description

A request for VID common data.

Tuple Fields§

§0: VidCommitment

Trait Implementations§

source§

impl Clone for VidCommonRequest

source§

fn clone(&self) -> VidCommonRequest

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 VidCommonRequest

source§

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

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

impl Hash for VidCommonRequest

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, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl PartialEq for VidCommonRequest

source§

fn eq(&self, other: &VidCommonRequest) -> 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.
source§

impl<Types> Provider<Types, VidCommonRequest> for AnyProvider<Types>
where - Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( +sufficient, and should not be overridden without very good reason.

source§

impl<Types> Provider<Types, VidCommonRequest> for AnyProvider<Types>
where + Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( &'life0 self, req: VidCommonRequest ) -> Pin<Box<dyn Future<Output = Option<VidCommon>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

Fetch a resource.
source§

impl<Types> Provider<Types, VidCommonRequest> for QueryServiceProvider
where - Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( + 'life0: 'async_trait,

Fetch a resource.
source§

impl<Types, Ver: StaticVersionType> Provider<Types, VidCommonRequest> for QueryServiceProvider<Ver>
where + Types: NodeType,

source§

fn fetch<'life0, 'async_trait>( &'life0 self, req: VidCommonRequest ) -> Pin<Box<dyn Future<Output = Option<VidCommon>> + Send + 'async_trait>>
where @@ -53,9 +53,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/fn.run_standalone_service.html b/hotshot_query_service/fn.run_standalone_service.html index ed7444456..3484a9e3a 100644 --- a/hotshot_query_service/fn.run_standalone_service.html +++ b/hotshot_query_service/fn.run_standalone_service.html @@ -1,10 +1,12 @@ run_standalone_service in hotshot_query_service - Rust -
pub async fn run_standalone_service<Types: NodeType, I: NodeImplementation<Types>, D>(
+    
pub async fn run_standalone_service<Types: NodeType, I: NodeImplementation<Types>, D, Ver>(
     options: Options,
     data_source: D,
-    hotshot: SystemContextHandle<Types, I>
+    hotshot: SystemContextHandle<Types, I>,
+    bind_version: Ver
 ) -> Result<(), Error>
Expand description

Run an instance of the HotShot Query service with no customization.

+ D: AvailabilityDataSource<Types> + NodeDataSource<Types> + StatusDataSource + UpdateDataSource<Types> + VersionedDataSource + Send + Sync + 'static, + Ver: StaticVersionType + 'static,
Expand description

Run an instance of the HotShot Query service with no customization.

\ No newline at end of file diff --git a/hotshot_query_service/index.html b/hotshot_query_service/index.html index 50cdab379..c138e4ae9 100644 --- a/hotshot_query_service/index.html +++ b/hotshot_query_service/index.html @@ -1,6 +1,6 @@ hotshot_query_service - Rust -
Expand description

The HotShot Query Service is a minimal, generic query service that can be integrated into any +

Expand description

The HotShot Query Service is a minimal, generic query service that can be integrated into any decentralized application running on the [hotshot] consensus layer. It provides all the features that HotShot itself expects of a query service (such as providing consensus-related data for catchup and synchronization) as well as some application-level features that deal only with @@ -18,6 +18,7 @@

Basic usage

use async_std::{sync::{Arc, RwLock}, task::spawn}; use futures::StreamExt; +use hotshot_types::constants::{Version01, STATIC_VER_0_1}; use hotshot::SystemContext; use tide_disco::App; @@ -28,21 +29,21 @@

Basic usage

// Create hotshot, giving it a handle to the status metrics. let hotshot = SystemContext::<AppTypes, AppNodeImpl>::init( - ConsensusMetricsValue::new(&*data_source.populate_metrics()), + ConsensusMetricsValue::new(&*data_source.populate_metrics()), panic!(), // Other fields omitted ).await.map_err(Error::internal)?.0; // Create API modules. -let availability_api = availability::define_api(&Default::default()) +let availability_api = availability::define_api(&Default::default(), STATIC_VER_0_1) .map_err(Error::internal)?; -let node_api = node::define_api(&Default::default()) +let node_api = node::define_api(&Default::default(), STATIC_VER_0_1) .map_err(Error::internal)?; -let status_api = status::define_api(&Default::default()) +let status_api = status::define_api(&Default::default(), STATIC_VER_0_1) .map_err(Error::internal)?; // Create app. We wrap `data_source` into an `RwLock` so we can share it with the web server. let data_source = Arc::new(RwLock::new(data_source)); -let mut app = App::<_, Error>::with_state(data_source.clone()); +let mut app = App::<_, Error, Version01>::with_state(data_source.clone()); app .register_module("availability", availability_api) .map_err(Error::internal)? @@ -52,7 +53,7 @@

Basic usage

.map_err(Error::internal)?; // Serve app. -spawn(app.serve("0.0.0.0:8080")); +
spawn(app.serve("0.0.0.0:8080", STATIC_VER_0_1)); // Update query data using HotShot events. let mut events = hotshot.get_event_stream(); @@ -70,7 +71,7 @@

Basic usage

use hotshot_query_service::run_standalone_service;
 
 let data_source = FileSystemDataSource::create(storage_path, NoFetching).await.map_err(Error::internal)?;
-spawn(run_standalone_service(options, data_source, hotshot));
+spawn(run_standalone_service(options, data_source, hotshot, STATIC_VER_0_1));

Persistence

Naturally, an archival query service such as this is heavily dependent on a persistent storage implementation. The APIs provided by this query service are generic over the specific type of @@ -122,14 +123,15 @@

Extension

the availability API like so:


-fn define_app_specific_availability_api<State>(
+fn define_app_specific_availability_api<State, Ver: StaticVersionType + 'static>(
     options: &availability::Options,
-) -> Result<Api<State, availability::Error>, ApiError>
+    bind_version: Ver,
+) -> Result<Api<State, availability::Error, Ver>, ApiError>
 where
     State: 'static + Send + Sync + ReadState,
     <State as ReadState>::State: UtxoDataSource + Send + Sync,
 {
-    let mut api = availability::define_api(options)?;
+    let mut api = availability::define_api(options, bind_version)?;
     api.get("get_utxo", |req, state: &<State as ReadState>::State| async move {
         let utxo_index = req.integer_param("index")?;
         let (block_index, txn_index, output_index) = state
@@ -150,13 +152,14 @@ 

Extension

Ok(api) } -fn init_server<D: UtxoDataSource + Send + Sync + 'static>( +fn init_server<D: UtxoDataSource + Send + Sync + 'static, Ver: StaticVersionType + 'static>( options: &availability::Options, data_source: D, -) -> Result<App<RwLock<D>, Error>, availability::Error> { - let api = define_app_specific_availability_api(options) + bind_version: Ver, +) -> Result<App<RwLock<D>, Error, Ver>, availability::Error> { + let api = define_app_specific_availability_api(options, bind_version) .map_err(availability::Error::internal)?; - let mut app = App::with_state(RwLock::new(data_source)); + let mut app = App::<_, _, Ver>::with_state(RwLock::new(data_source)); app.register_module("availability", api).map_err(availability::Error::internal)?; Ok(app) }
diff --git a/hotshot_query_service/merklized_state/enum.Error.html b/hotshot_query_service/merklized_state/enum.Error.html index d242cdb5d..43a9bbbda 100644 --- a/hotshot_query_service/merklized_state/enum.Error.html +++ b/hotshot_query_service/merklized_state/enum.Error.html @@ -1,5 +1,5 @@ -Error in hotshot_query_service::merklized_state - Rust -
pub enum Error {
+Error in hotshot_query_service::merklized_state - Rust
+    
pub enum Error {
     Request {
         source: RequestError,
     },
@@ -10,12 +10,12 @@
         message: String,
         status: StatusCode,
     },
-}

Variants§

§

Request

Fields

§source: RequestError
§

Query

Fields

§source: QueryError
§

Custom

Fields

§message: String
§status: StatusCode

Implementations§

source§

impl Error

source

pub fn status(&self) -> StatusCode

Trait Implementations§

source§

impl Clone for Error

source§

fn clone(&self) -> Error

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 Error

source§

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

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

impl<'de> Deserialize<'de> for Error

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 Display for Error

source§

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

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

impl Error for Error
where - Self: Debug + Display,

source§

fn description(&self) -> &str

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

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

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

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

The lower-level source of this error, if any. Read more
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 ErrorCompat for Error

source§

fn backtrace(&self) -> Option<&Backtrace>

Returns a Backtrace that may be printed.
§

fn iter_chain(&self) -> ChainCompat<'_>
where +}

Variants§

§

Request

Fields

§source: RequestError
§

Query

Fields

§source: QueryError
§

Custom

Fields

§message: String
§status: StatusCode

Implementations§

source§

impl Error

source

pub fn status(&self) -> StatusCode

Trait Implementations§

source§

impl Clone for Error

source§

fn clone(&self) -> Error

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 Error

source§

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

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

impl<'de> Deserialize<'de> for Error

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 Display for Error

source§

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

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

impl Error for Error
where + Self: Debug + Display,

source§

fn description(&self) -> &str

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

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

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

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

The lower-level source of this error, if any. Read more
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 ErrorCompat for Error

source§

fn backtrace(&self) -> Option<&Backtrace>

Returns a Backtrace that may be printed.
§

fn iter_chain(&self) -> ChainCompat<'_, '_>
where Self: AsErrorSource,

Returns an iterator for traversing the chain of errors, starting with the current error -and continuing with recursive calls to Error::source. Read more
source§

impl From<(String, StatusCode)> for Error

source§

fn from(original: (String, StatusCode)) -> Error

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(original: Error) -> Error

Converts to this type from the input type.
source§

impl From<QueryError> for Error

source§

fn from(original: QueryError) -> Error

Converts to this type from the input type.
source§

impl From<RequestError> for Error

source§

fn from(original: RequestError) -> Error

Converts to this type from the input type.
source§

impl Serialize for Error

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where +and continuing with recursive calls to Error::source. Read more

source§

impl From<(String, StatusCode)> for Error

source§

fn from(original: (String, StatusCode)) -> Error

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(original: Error) -> Error

Converts to this type from the input type.
source§

impl From<QueryError> for Error

source§

fn from(original: QueryError) -> Error

Converts to this type from the input type.
source§

impl From<RequestError> for Error

source§

fn from(original: RequestError) -> Error

Converts to this type from the input type.
source§

impl Serialize for Error

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

§

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
§

impl<T> Any for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

§

fn type_name(&self) -> &'static str

§

impl<T> AnySync for T
where @@ -24,6 +24,9 @@ ) -> <T as Pointee>::Metadata

Converts some archived metadata to the pointer metadata for itself.
§

impl<T> AsErrorSource for T
where T: Error + 'static,

§

fn as_error_source(&self) -> &(dyn Error + 'static)

For maximum effectiveness, this needs to be called as a method to benefit from Rust’s automatic dereferencing of method +receivers.
§

impl<T> AsErrorSource for T
where + T: Error + 'static,

§

fn as_error_source(&self) -> &(dyn Error + 'static)

For maximum effectiveness, this needs to be called as a method +to benefit from Rust’s automatic dereferencing of method receivers.
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where T: 'a,

§

fn implicit( diff --git a/hotshot_query_service/merklized_state/enum.Snapshot.html b/hotshot_query_service/merklized_state/enum.Snapshot.html index 17be4cb4e..f0be24fe5 100644 --- a/hotshot_query_service/merklized_state/enum.Snapshot.html +++ b/hotshot_query_service/merklized_state/enum.Snapshot.html @@ -52,9 +52,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/merklized_state/fn.define_api.html b/hotshot_query_service/merklized_state/fn.define_api.html index 8d992f765..81267dc04 100644 --- a/hotshot_query_service/merklized_state/fn.define_api.html +++ b/hotshot_query_service/merklized_state/fn.define_api.html @@ -1,7 +1,7 @@ define_api in hotshot_query_service::merklized_state - Rust -
pub fn define_api<State, Types, M: MerklizedState<Types>>(
+    
pub fn define_api<State, Types, M: MerklizedState<Types>, Ver: StaticVersionType + 'static>(
     options: &Options
-) -> Result<Api<State, Error>, ApiError>
where +) -> Result<Api<State, Error, Ver>, ApiError>
where State: 'static + Send + Sync + ReadState, <State as ReadState>::State: Send + Sync + MerklizedStateDataSource<Types, M>, Types: NodeType, diff --git a/hotshot_query_service/merklized_state/index.html b/hotshot_query_service/merklized_state/index.html index 0286e9618..3a2e14b5e 100644 --- a/hotshot_query_service/merklized_state/index.html +++ b/hotshot_query_service/merklized_state/index.html @@ -1,5 +1,5 @@ hotshot_query_service::merklized_state - Rust -
Expand description

Api for querying merklized state

+
Expand description

Api for querying merklized state

The state API provides an interface for serving queries against arbitrarily old snapshots of the state. This allows a full Merkle tree to be reconstructed from storage. If any parent state is missing then the partial snapshot can not be queried.

diff --git a/hotshot_query_service/merklized_state/struct.Options.html b/hotshot_query_service/merklized_state/struct.Options.html index 162f859bc..ceb705802 100644 --- a/hotshot_query_service/merklized_state/struct.Options.html +++ b/hotshot_query_service/merklized_state/struct.Options.html @@ -1,16 +1,16 @@ Options in hotshot_query_service::merklized_state - Rust -
pub struct Options {
+    
pub struct Options {
     pub api_path: Option<PathBuf>,
     pub extensions: Vec<Value>,
 }

Fields§

§api_path: Option<PathBuf>§extensions: Vec<Value>

Additional API specification files to merge with merklized-state-api-path.

These optional files may contain route definitions for application-specific routes that have been added as extensions to the basic status API.

-

Trait Implementations§

source§

impl Args for Options

source§

fn group_id() -> Option<Id>

Report the [ArgGroup::id][crate::ArgGroup::id] for this set of arguments
source§

fn augment_args<'b>(__clap_app: Command) -> Command

Append to [Command] so it can instantiate Self. Read more
source§

fn augment_args_for_update<'b>(__clap_app: Command) -> Command

Append to [Command] so it can update self. Read more
source§

impl Default for Options

source§

fn default() -> Options

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

impl FromArgMatches for Options

source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn from_arg_matches_mut( +

Trait Implementations§

source§

impl Args for Options

source§

fn group_id() -> Option<Id>

Report the [ArgGroup::id][crate::ArgGroup::id] for this set of arguments
source§

fn augment_args<'b>(__clap_app: Command) -> Command

Append to [Command] so it can instantiate Self. Read more
source§

fn augment_args_for_update<'b>(__clap_app: Command) -> Command

Append to [Command] so it can update self. Read more
source§

impl Default for Options

source§

fn default() -> Options

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

impl FromArgMatches for Options

source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches -) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn update_from_arg_matches( +) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches -) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

fn update_from_arg_matches_mut( +) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches ) -> Result<(), Error>

Assign values from ArgMatches to self.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where diff --git a/hotshot_query_service/merklized_state/trait.MerklizedState.html b/hotshot_query_service/merklized_state/trait.MerklizedState.html index e3bd5a305..ed1ae9e28 100644 --- a/hotshot_query_service/merklized_state/trait.MerklizedState.html +++ b/hotshot_query_service/merklized_state/trait.MerklizedState.html @@ -18,4 +18,4 @@

source

fn header_state_commitment_field() -> &'static str

Retrieves the field in the header containing the Merkle tree commitment for the state implementing this trait.

source

fn tree_height() -> usize

Get the height of the tree

-

Object Safety§

This trait is not object safe.

Implementors§

source§

impl MerklizedState<MockTypes> for MockMerkleTree

§

type Arity = UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>

§

type Key = usize

§

type Entry = usize

§

type T = Sha3Node

§

type Commit = <UniversalMerkleTree<usize, Sha3Digest, usize, UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, Sha3Node> as MerkleTreeScheme>::Commitment

§

type Digest = Sha3Digest

\ No newline at end of file +

Object Safety§

This trait is not object safe.

Implementors§

source§

impl MerklizedState<MockTypes> for MockMerkleTree

§

type Arity = UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>

§

type Key = usize

§

type Entry = usize

§

type T = Sha3Node

§

type Commit = <UniversalMerkleTree<usize, Sha3Digest, usize, UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, Sha3Node> as MerkleTreeScheme>::Commitment

§

type Digest = Sha3Digest

\ No newline at end of file diff --git a/hotshot_query_service/metrics/enum.MetricsError.html b/hotshot_query_service/metrics/enum.MetricsError.html index 0fe8f632d..5a11c1567 100644 --- a/hotshot_query_service/metrics/enum.MetricsError.html +++ b/hotshot_query_service/metrics/enum.MetricsError.html @@ -1,4 +1,4 @@ -MetricsError in hotshot_query_service::metrics - Rust +MetricsError in hotshot_query_service::metrics - Rust
pub enum MetricsError {
     NoSuchSubgroup {
         path: Vec<String>,
@@ -10,8 +10,8 @@
     Prometheus {
         source: Error,
     },
-}

Variants§

§

NoSuchSubgroup

Fields

§path: Vec<String>
§

NoSuchMetric

Fields

§namespace: Vec<String>
§label: String
§

Prometheus

Fields

§source: Error

Trait Implementations§

source§

impl Debug for MetricsError

source§

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

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

impl Display for MetricsError

source§

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

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

impl Error for MetricsError
where - Self: Debug + Display,

source§

fn description(&self) -> &str

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

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

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

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

The lower-level source of this error, if any. Read more
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 ErrorCompat for MetricsError

source§

fn backtrace(&self) -> Option<&Backtrace>

Returns a Backtrace that may be printed.
§

fn iter_chain(&self) -> ChainCompat<'_>
where +}

Variants§

§

NoSuchSubgroup

Fields

§path: Vec<String>
§

NoSuchMetric

Fields

§namespace: Vec<String>
§label: String
§

Prometheus

Fields

§source: Error

Trait Implementations§

source§

impl Debug for MetricsError

source§

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

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

impl Display for MetricsError

source§

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

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

impl Error for MetricsError
where + Self: Debug + Display,

source§

fn description(&self) -> &str

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

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

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

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

The lower-level source of this error, if any. Read more
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 ErrorCompat for MetricsError

source§

fn backtrace(&self) -> Option<&Backtrace>

Returns a Backtrace that may be printed.
§

fn iter_chain(&self) -> ChainCompat<'_, '_>
where Self: AsErrorSource,

Returns an iterator for traversing the chain of errors, starting with the current error and continuing with recursive calls to Error::source. Read more
source§

impl From<Error> for MetricsError

source§

fn from(source: Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where @@ -22,6 +22,9 @@ ) -> <T as Pointee>::Metadata

Converts some archived metadata to the pointer metadata for itself.

§

impl<T> AsErrorSource for T
where T: Error + 'static,

§

fn as_error_source(&self) -> &(dyn Error + 'static)

For maximum effectiveness, this needs to be called as a method to benefit from Rust’s automatic dereferencing of method +receivers.
§

impl<T> AsErrorSource for T
where + T: Error + 'static,

§

fn as_error_source(&self) -> &(dyn Error + 'static)

For maximum effectiveness, this needs to be called as a method +to benefit from Rust’s automatic dereferencing of method receivers.
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where T: 'a,

§

fn implicit( diff --git a/hotshot_query_service/metrics/struct.PrometheusMetrics.html b/hotshot_query_service/metrics/struct.PrometheusMetrics.html index ded25cea7..77e69e3c7 100644 --- a/hotshot_query_service/metrics/struct.PrometheusMetrics.html +++ b/hotshot_query_service/metrics/struct.PrometheusMetrics.html @@ -25,7 +25,7 @@ ) -> Result<PrometheusMetrics, MetricsError>
where I: IntoIterator, I::Item: AsRef<str>,

Get a (possibly nested) subgroup of this group by its path.

-

Trait Implementations§

source§

impl Clone for PrometheusMetrics

source§

fn clone(&self) -> PrometheusMetrics

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 PrometheusMetrics

source§

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

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

impl Default for PrometheusMetrics

source§

fn default() -> PrometheusMetrics

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

impl Metrics for PrometheusMetrics

Trait Implementations§

source§

impl Clone for PrometheusMetrics

source§

fn clone(&self) -> PrometheusMetrics

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 PrometheusMetrics

source§

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

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

impl Default for PrometheusMetrics

source§

fn default() -> PrometheusMetrics

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

impl Metrics for PrometheusMetrics

§

type Error = MetricsError

source§

fn export(&self) -> Result<String, Self::Error>

source§

impl Metrics for PrometheusMetrics

source§

fn create_counter( &self, label: String, unit_label: Option<String> @@ -37,7 +37,7 @@ &self, label: String, unit_label: Option<String> -) -> Box<dyn Histogram>

Create a [Histogram] with an optional unit_label. Read more
source§

fn create_label(&self, name: String) -> Box<dyn Label>

Create a [Label].
source§

fn subgroup(&self, subgroup_name: String) -> Box<dyn Metrics>

Create a subgroup with a specified prefix.
source§

impl Metrics for PrometheusMetrics

§

type Error = MetricsError

source§

fn export(&self) -> Result<String, Self::Error>

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +) -> Box<dyn Histogram>

Create a [Histogram] with an optional unit_label. Read more
source§

fn create_label(&self, name: String) -> Box<dyn Label>

Create a [Label].
source§

fn subgroup(&self, subgroup_name: String) -> Box<dyn Metrics>

Create a subgroup with a specified prefix.

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
§

impl<T> Any for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

§

fn type_name(&self) -> &'static str

§

impl<T> AnySync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

§

impl<T> ArchivePointee for T

§

type ArchivedMetadata = ()

The archived version of the pointer metadata for this type.
§

fn pointer_metadata( diff --git a/hotshot_query_service/node/enum.Error.html b/hotshot_query_service/node/enum.Error.html index 81f643a4f..48e4f5fc9 100644 --- a/hotshot_query_service/node/enum.Error.html +++ b/hotshot_query_service/node/enum.Error.html @@ -1,5 +1,5 @@ -Error in hotshot_query_service::node - Rust -
pub enum Error {
+Error in hotshot_query_service::node - Rust
+    
pub enum Error {
     Request {
         source: RequestError,
     },
@@ -19,22 +19,22 @@
         message: String,
         status: StatusCode,
     },
-}

Variants§

§

Request

Fields

§source: RequestError
§

Query

Fields

§source: QueryError
§

QueryVid

Fields

§source: QueryError
§block: String
§

QueryWindow

Fields

§source: QueryError
§start: String
§end: u64
§

Custom

Fields

§message: String
§status: StatusCode

Implementations§

source§

impl Error

source

pub fn internal<M: Display>(message: M) -> Self

source

pub fn status(&self) -> StatusCode

Trait Implementations§

source§

impl Clone for Error

source§

fn clone(&self) -> Error

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 Error

source§

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

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

impl<'de> Deserialize<'de> for Error

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 Display for Error

source§

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

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

impl Error for Error
where - Self: Debug + Display,

source§

fn description(&self) -> &str

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

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

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

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

The lower-level source of this error, if any. Read more
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 ErrorCompat for Error

source§

fn backtrace(&self) -> Option<&Backtrace>

Returns a Backtrace that may be printed.
§

fn iter_chain(&self) -> ChainCompat<'_>
where +}

Variants§

§

Request

Fields

§source: RequestError
§

Query

Fields

§source: QueryError
§

QueryVid

Fields

§source: QueryError
§block: String
§

QueryWindow

Fields

§source: QueryError
§start: String
§end: u64
§

Custom

Fields

§message: String
§status: StatusCode

Implementations§

source§

impl Error

source

pub fn internal<M: Display>(message: M) -> Self

source

pub fn status(&self) -> StatusCode

Trait Implementations§

source§

impl Clone for Error

source§

fn clone(&self) -> Error

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 Error

source§

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

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

impl<'de> Deserialize<'de> for Error

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 Display for Error

source§

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

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

impl Error for Error
where + Self: Debug + Display,

source§

fn description(&self) -> &str

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

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

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

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

The lower-level source of this error, if any. Read more
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 ErrorCompat for Error

source§

fn backtrace(&self) -> Option<&Backtrace>

Returns a Backtrace that may be printed.
§

fn iter_chain(&self) -> ChainCompat<'_, '_>
where Self: AsErrorSource,

Returns an iterator for traversing the chain of errors, starting with the current error -and continuing with recursive calls to Error::source. Read more
source§

impl From<(String, StatusCode)> for Error

source§

fn from(original: (String, StatusCode)) -> Error

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(original: Error) -> Error

Converts to this type from the input type.
source§

impl From<QueryError> for Error

source§

fn from(original: QueryError) -> Error

Converts to this type from the input type.
source§

impl From<RequestError> for Error

source§

fn from(original: RequestError) -> Error

Converts to this type from the input type.
source§

impl<__T0, __T1> IntoError<Error> for CustomSnafu<__T0, __T1>
where +and continuing with recursive calls to Error::source. Read more

source§

impl From<(String, StatusCode)> for Error

source§

fn from(original: (String, StatusCode)) -> Error

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(original: Error) -> Error

Converts to this type from the input type.
source§

impl From<QueryError> for Error

source§

fn from(original: QueryError) -> Error

Converts to this type from the input type.
source§

impl From<RequestError> for Error

source§

fn from(original: RequestError) -> Error

Converts to this type from the input type.
source§

impl<__T0, __T1> IntoError<Error> for CustomSnafu<__T0, __T1>
where Error: Error + ErrorCompat, __T0: Into<String>, - __T1: Into<StatusCode>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl IntoError<Error> for QuerySnafu
where - Error: Error + ErrorCompat,

§

type Source = QueryError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0> IntoError<Error> for QueryVidSnafu<__T0>
where + __T1: Into<StatusCode>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl IntoError<Error> for QuerySnafu
where + Error: Error + ErrorCompat,

§

type Source = QueryError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0> IntoError<Error> for QueryVidSnafu<__T0>
where Error: Error + ErrorCompat, - __T0: Into<String>,

§

type Source = QueryError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0, __T1> IntoError<Error> for QueryWindowSnafu<__T0, __T1>
where + __T0: Into<String>,

§

type Source = QueryError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0, __T1> IntoError<Error> for QueryWindowSnafu<__T0, __T1>
where Error: Error + ErrorCompat, __T0: Into<String>, - __T1: Into<u64>,

§

type Source = QueryError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl IntoError<Error> for RequestSnafu
where - Error: Error + ErrorCompat,

§

type Source = RequestError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl Serialize for Error

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __T1: Into<u64>,

§

type Source = QueryError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl IntoError<Error> for RequestSnafu
where + Error: Error + ErrorCompat,

§

type Source = RequestError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl Serialize for Error

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

§

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
§

impl<T> Any for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

§

fn type_name(&self) -> &'static str

§

impl<T> AnySync for T
where @@ -43,6 +43,9 @@ ) -> <T as Pointee>::Metadata

Converts some archived metadata to the pointer metadata for itself.
§

impl<T> AsErrorSource for T
where T: Error + 'static,

§

fn as_error_source(&self) -> &(dyn Error + 'static)

For maximum effectiveness, this needs to be called as a method to benefit from Rust’s automatic dereferencing of method +receivers.
§

impl<T> AsErrorSource for T
where + T: Error + 'static,

§

fn as_error_source(&self) -> &(dyn Error + 'static)

For maximum effectiveness, this needs to be called as a method +to benefit from Rust’s automatic dereferencing of method receivers.
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where T: 'a,

§

fn implicit( diff --git a/hotshot_query_service/node/fn.define_api.html b/hotshot_query_service/node/fn.define_api.html index b6c2c3575..4e986d774 100644 --- a/hotshot_query_service/node/fn.define_api.html +++ b/hotshot_query_service/node/fn.define_api.html @@ -1,6 +1,7 @@ define_api in hotshot_query_service::node - Rust -
pub fn define_api<State, Types: NodeType>(
-    options: &Options
-) -> Result<Api<State, Error>, ApiError>
where +
pub fn define_api<State, Types: NodeType, Ver: StaticVersionType + 'static>(
+    options: &Options,
+    _: Ver
+) -> Result<Api<State, Error, Ver>, ApiError>
where State: 'static + Send + Sync + ReadState, <State as ReadState>::State: Send + Sync + NodeDataSource<Types>,
\ No newline at end of file diff --git a/hotshot_query_service/node/index.html b/hotshot_query_service/node/index.html index 56a2ea62c..af82a61be 100644 --- a/hotshot_query_service/node/index.html +++ b/hotshot_query_service/node/index.html @@ -1,5 +1,5 @@ hotshot_query_service::node - Rust -
Expand description

A node’s view of a HotShot chain

+
Expand description

A node’s view of a HotShot chain

The node API provides a subjective view of the HotShot blockchain, from the perspective of one particular node. It provides access to information that the availability API does not, because this information depends on the diff --git a/hotshot_query_service/node/struct.CustomSnafu.html b/hotshot_query_service/node/struct.CustomSnafu.html index 3ea0b6f85..4af540c7e 100644 --- a/hotshot_query_service/node/struct.CustomSnafu.html +++ b/hotshot_query_service/node/struct.CustomSnafu.html @@ -1,18 +1,18 @@ CustomSnafu in hotshot_query_service::node - Rust

-
pub struct CustomSnafu<__T0, __T1> {
+    
pub struct CustomSnafu<__T0, __T1> {
     pub message: __T0,
     pub status: __T1,
 }
Expand description

SNAFU context selector for the Error::Custom variant

-

Fields§

§message: __T0§status: __T1

Implementations§

source§

impl<__T0, __T1> CustomSnafu<__T0, __T1>

source

pub fn build(self) -> Error
where +

Fields§

§message: __T0§status: __T1

Implementations§

source§

impl<__T0, __T1> CustomSnafu<__T0, __T1>

source

pub fn build(self) -> Error
where __T0: Into<String>, __T1: Into<StatusCode>,

Consume the selector and return the associated error

-
source

pub fn fail<__T>(self) -> Result<__T, Error>
where +

source

pub fn fail<__T>(self) -> Result<__T, Error>
where __T0: Into<String>, __T1: Into<StatusCode>,

Consume the selector and return a Result with the associated error

-

Trait Implementations§

source§

impl<__T0: Clone, __T1: Clone> Clone for CustomSnafu<__T0, __T1>

source§

fn clone(&self) -> CustomSnafu<__T0, __T1>

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<__T0: Debug, __T1: Debug> Debug for CustomSnafu<__T0, __T1>

source§

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

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

impl<__T0, __T1> IntoError<Error> for CustomSnafu<__T0, __T1>
where +

Trait Implementations§

source§

impl<__T0: Clone, __T1: Clone> Clone for CustomSnafu<__T0, __T1>

source§

fn clone(&self) -> CustomSnafu<__T0, __T1>

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<__T0: Debug, __T1: Debug> Debug for CustomSnafu<__T0, __T1>

source§

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

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

impl<__T0, __T1> IntoError<Error> for CustomSnafu<__T0, __T1>
where Error: Error + ErrorCompat, __T0: Into<String>, - __T1: Into<StatusCode>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0: Copy, __T1: Copy> Copy for CustomSnafu<__T0, __T1>

Auto Trait Implementations§

§

impl<__T0, __T1> RefUnwindSafe for CustomSnafu<__T0, __T1>
where + __T1: Into<StatusCode>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0: Copy, __T1: Copy> Copy for CustomSnafu<__T0, __T1>

Auto Trait Implementations§

§

impl<__T0, __T1> RefUnwindSafe for CustomSnafu<__T0, __T1>
where __T0: RefUnwindSafe, __T1: RefUnwindSafe,

§

impl<__T0, __T1> Send for CustomSnafu<__T0, __T1>
where __T0: Send, diff --git a/hotshot_query_service/node/struct.Options.html b/hotshot_query_service/node/struct.Options.html index d48dbb49d..a56deed32 100644 --- a/hotshot_query_service/node/struct.Options.html +++ b/hotshot_query_service/node/struct.Options.html @@ -1,16 +1,16 @@ Options in hotshot_query_service::node - Rust -
pub struct Options {
+    
pub struct Options {
     pub api_path: Option<PathBuf>,
     pub extensions: Vec<Value>,
 }

Fields§

§api_path: Option<PathBuf>§extensions: Vec<Value>

Additional API specification files to merge with node-api-path.

These optional files may contain route definitions for application-specific routes that have been added as extensions to the basic node API.

-

Trait Implementations§

source§

impl Args for Options

source§

fn group_id() -> Option<Id>

Report the [ArgGroup::id][crate::ArgGroup::id] for this set of arguments
source§

fn augment_args<'b>(__clap_app: Command) -> Command

Append to [Command] so it can instantiate Self. Read more
source§

fn augment_args_for_update<'b>(__clap_app: Command) -> Command

Append to [Command] so it can update self. Read more
source§

impl Default for Options

source§

fn default() -> Options

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

impl FromArgMatches for Options

source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn from_arg_matches_mut( +

Trait Implementations§

source§

impl Args for Options

source§

fn group_id() -> Option<Id>

Report the [ArgGroup::id][crate::ArgGroup::id] for this set of arguments
source§

fn augment_args<'b>(__clap_app: Command) -> Command

Append to [Command] so it can instantiate Self. Read more
source§

fn augment_args_for_update<'b>(__clap_app: Command) -> Command

Append to [Command] so it can update self. Read more
source§

impl Default for Options

source§

fn default() -> Options

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

impl FromArgMatches for Options

source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches -) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn update_from_arg_matches( +) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches -) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

fn update_from_arg_matches_mut( +) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches ) -> Result<(), Error>

Assign values from ArgMatches to self.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where diff --git a/hotshot_query_service/node/struct.QuerySnafu.html b/hotshot_query_service/node/struct.QuerySnafu.html index 7e090d56a..5deaa74cf 100644 --- a/hotshot_query_service/node/struct.QuerySnafu.html +++ b/hotshot_query_service/node/struct.QuerySnafu.html @@ -1,7 +1,7 @@ QuerySnafu in hotshot_query_service::node - Rust -
pub struct QuerySnafu;
Expand description

SNAFU context selector for the Error::Query variant

-

Trait Implementations§

source§

impl Clone for QuerySnafu

source§

fn clone(&self) -> QuerySnafu

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 QuerySnafu

source§

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

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

impl IntoError<Error> for QuerySnafu
where - Error: Error + ErrorCompat,

§

type Source = QueryError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl Copy for QuerySnafu

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +
pub struct QuerySnafu;
Expand description

SNAFU context selector for the Error::Query variant

+

Trait Implementations§

source§

impl Clone for QuerySnafu

source§

fn clone(&self) -> QuerySnafu

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 QuerySnafu

source§

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

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

impl IntoError<Error> for QuerySnafu
where + Error: Error + ErrorCompat,

§

type Source = QueryError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl Copy for QuerySnafu

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
§

impl<T> Any for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

§

fn type_name(&self) -> &'static str

§

impl<T> AnySync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

§

impl<T> ArchivePointee for T

§

type ArchivedMetadata = ()

The archived version of the pointer metadata for this type.
§

fn pointer_metadata( diff --git a/hotshot_query_service/node/struct.QueryVidSnafu.html b/hotshot_query_service/node/struct.QueryVidSnafu.html index 3e50755a1..7953de434 100644 --- a/hotshot_query_service/node/struct.QueryVidSnafu.html +++ b/hotshot_query_service/node/struct.QueryVidSnafu.html @@ -1,10 +1,10 @@ QueryVidSnafu in hotshot_query_service::node - Rust -
pub struct QueryVidSnafu<__T0> {
+    
pub struct QueryVidSnafu<__T0> {
     pub block: __T0,
 }
Expand description

SNAFU context selector for the Error::QueryVid variant

-

Fields§

§block: __T0

Trait Implementations§

source§

impl<__T0: Clone> Clone for QueryVidSnafu<__T0>

source§

fn clone(&self) -> QueryVidSnafu<__T0>

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<__T0: Debug> Debug for QueryVidSnafu<__T0>

source§

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

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

impl<__T0> IntoError<Error> for QueryVidSnafu<__T0>
where +

Fields§

§block: __T0

Trait Implementations§

source§

impl<__T0: Clone> Clone for QueryVidSnafu<__T0>

source§

fn clone(&self) -> QueryVidSnafu<__T0>

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<__T0: Debug> Debug for QueryVidSnafu<__T0>

source§

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

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

impl<__T0> IntoError<Error> for QueryVidSnafu<__T0>
where Error: Error + ErrorCompat, - __T0: Into<String>,

§

type Source = QueryError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0: Copy> Copy for QueryVidSnafu<__T0>

Auto Trait Implementations§

§

impl<__T0> RefUnwindSafe for QueryVidSnafu<__T0>
where + __T0: Into<String>,

§

type Source = QueryError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0: Copy> Copy for QueryVidSnafu<__T0>

Auto Trait Implementations§

§

impl<__T0> RefUnwindSafe for QueryVidSnafu<__T0>
where __T0: RefUnwindSafe,

§

impl<__T0> Send for QueryVidSnafu<__T0>
where __T0: Send,

§

impl<__T0> Sync for QueryVidSnafu<__T0>
where __T0: Sync,

§

impl<__T0> Unpin for QueryVidSnafu<__T0>
where diff --git a/hotshot_query_service/node/struct.QueryWindowSnafu.html b/hotshot_query_service/node/struct.QueryWindowSnafu.html index 8df576850..8f5c201dd 100644 --- a/hotshot_query_service/node/struct.QueryWindowSnafu.html +++ b/hotshot_query_service/node/struct.QueryWindowSnafu.html @@ -1,12 +1,12 @@ QueryWindowSnafu in hotshot_query_service::node - Rust -
pub struct QueryWindowSnafu<__T0, __T1> {
+    
pub struct QueryWindowSnafu<__T0, __T1> {
     pub start: __T0,
     pub end: __T1,
 }
Expand description

SNAFU context selector for the Error::QueryWindow variant

-

Fields§

§start: __T0§end: __T1

Trait Implementations§

source§

impl<__T0: Clone, __T1: Clone> Clone for QueryWindowSnafu<__T0, __T1>

source§

fn clone(&self) -> QueryWindowSnafu<__T0, __T1>

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<__T0: Debug, __T1: Debug> Debug for QueryWindowSnafu<__T0, __T1>

source§

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

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

impl<__T0, __T1> IntoError<Error> for QueryWindowSnafu<__T0, __T1>
where +

Fields§

§start: __T0§end: __T1

Trait Implementations§

source§

impl<__T0: Clone, __T1: Clone> Clone for QueryWindowSnafu<__T0, __T1>

source§

fn clone(&self) -> QueryWindowSnafu<__T0, __T1>

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<__T0: Debug, __T1: Debug> Debug for QueryWindowSnafu<__T0, __T1>

source§

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

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

impl<__T0, __T1> IntoError<Error> for QueryWindowSnafu<__T0, __T1>
where Error: Error + ErrorCompat, __T0: Into<String>, - __T1: Into<u64>,

§

type Source = QueryError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0: Copy, __T1: Copy> Copy for QueryWindowSnafu<__T0, __T1>

Auto Trait Implementations§

§

impl<__T0, __T1> RefUnwindSafe for QueryWindowSnafu<__T0, __T1>
where + __T1: Into<u64>,

§

type Source = QueryError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl<__T0: Copy, __T1: Copy> Copy for QueryWindowSnafu<__T0, __T1>

Auto Trait Implementations§

§

impl<__T0, __T1> RefUnwindSafe for QueryWindowSnafu<__T0, __T1>
where __T0: RefUnwindSafe, __T1: RefUnwindSafe,

§

impl<__T0, __T1> Send for QueryWindowSnafu<__T0, __T1>
where __T0: Send, diff --git a/hotshot_query_service/node/struct.RequestSnafu.html b/hotshot_query_service/node/struct.RequestSnafu.html index 4766c6782..15aedc66f 100644 --- a/hotshot_query_service/node/struct.RequestSnafu.html +++ b/hotshot_query_service/node/struct.RequestSnafu.html @@ -1,7 +1,7 @@ RequestSnafu in hotshot_query_service::node - Rust -
pub struct RequestSnafu;
Expand description

SNAFU context selector for the Error::Request variant

-

Trait Implementations§

source§

impl Clone for RequestSnafu

source§

fn clone(&self) -> RequestSnafu

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 RequestSnafu

source§

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

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

impl IntoError<Error> for RequestSnafu
where - Error: Error + ErrorCompat,

§

type Source = RequestError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl Copy for RequestSnafu

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +
pub struct RequestSnafu;
Expand description

SNAFU context selector for the Error::Request variant

+

Trait Implementations§

source§

impl Clone for RequestSnafu

source§

fn clone(&self) -> RequestSnafu

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 RequestSnafu

source§

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

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

impl IntoError<Error> for RequestSnafu
where + Error: Error + ErrorCompat,

§

type Source = RequestError

The underlying error
source§

fn into_error(self, error: Self::Source) -> Error

Combine the information to produce the error
source§

impl Copy for RequestSnafu

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
§

impl<T> Any for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

§

fn type_name(&self) -> &'static str

§

impl<T> AnySync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

§

impl<T> ArchivePointee for T

§

type ArchivedMetadata = ()

The archived version of the pointer metadata for this type.
§

fn pointer_metadata( diff --git a/hotshot_query_service/node/struct.SyncStatus.html b/hotshot_query_service/node/struct.SyncStatus.html index 232f4827b..f9ea54188 100644 --- a/hotshot_query_service/node/struct.SyncStatus.html +++ b/hotshot_query_service/node/struct.SyncStatus.html @@ -55,9 +55,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/node/struct.TimeWindowQueryData.html b/hotshot_query_service/node/struct.TimeWindowQueryData.html index 756ff46cc..6e1a11c6c 100644 --- a/hotshot_query_service/node/struct.TimeWindowQueryData.html +++ b/hotshot_query_service/node/struct.TimeWindowQueryData.html @@ -51,9 +51,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/node/trait.NodeDataSource.html b/hotshot_query_service/node/trait.NodeDataSource.html index 63f57f8e7..47c9bd02b 100644 --- a/hotshot_query_service/node/trait.NodeDataSource.html +++ b/hotshot_query_service/node/trait.NodeDataSource.html @@ -63,7 +63,7 @@ end: u64 ) -> Pin<Box<dyn Future<Output = QueryResult<TimeWindowQueryData<Header<Types>>>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

Object Safety§

This trait is not object safe.

Implementors§

source§

impl NodeDataSource<MockTypes> for DataSource

source§

impl<D, U, Types> NodeDataSource<Types> for ExtensibleDataSource<D, U>
where + 'life0: 'async_trait,

Object Safety§

This trait is not object safe.

Implementors§

source§

impl NodeDataSource<MockTypes> for DataSource

source§

impl<D, U, Types> NodeDataSource<Types> for ExtensibleDataSource<D, U>
where D: NodeDataSource<Types> + Send + Sync, U: Send + Sync, Types: NodeType,

source§

impl<Types> NodeDataSource<Types> for SqlStorage
where diff --git a/hotshot_query_service/status/enum.Error.html b/hotshot_query_service/status/enum.Error.html index 9dedbcc0f..789995a77 100644 --- a/hotshot_query_service/status/enum.Error.html +++ b/hotshot_query_service/status/enum.Error.html @@ -1,17 +1,17 @@ -Error in hotshot_query_service::status - Rust -
pub enum Error {
+Error in hotshot_query_service::status - Rust
+    
pub enum Error {
     Request {
         source: RequestError,
     },
     Internal {
         reason: String,
     },
-}

Variants§

§

Request

Fields

§source: RequestError
§

Internal

Fields

§reason: String

Implementations§

source§

impl Error

source

pub fn status(&self) -> StatusCode

Trait Implementations§

source§

impl Clone for Error

source§

fn clone(&self) -> Error

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 Error

source§

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

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

impl<'de> Deserialize<'de> for Error

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 Display for Error

source§

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

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

impl Error for Error
where - Self: Debug + Display,

source§

fn description(&self) -> &str

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

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

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

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

The lower-level source of this error, if any. Read more
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 ErrorCompat for Error

source§

fn backtrace(&self) -> Option<&Backtrace>

Returns a Backtrace that may be printed.
§

fn iter_chain(&self) -> ChainCompat<'_>
where +}

Variants§

§

Request

Fields

§source: RequestError
§

Internal

Fields

§reason: String

Implementations§

source§

impl Error

source

pub fn status(&self) -> StatusCode

Trait Implementations§

source§

impl Clone for Error

source§

fn clone(&self) -> Error

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 Error

source§

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

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

impl<'de> Deserialize<'de> for Error

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 Display for Error

source§

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

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

impl Error for Error
where + Self: Debug + Display,

source§

fn description(&self) -> &str

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

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

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

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

The lower-level source of this error, if any. Read more
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 ErrorCompat for Error

source§

fn backtrace(&self) -> Option<&Backtrace>

Returns a Backtrace that may be printed.
§

fn iter_chain(&self) -> ChainCompat<'_, '_>
where Self: AsErrorSource,

Returns an iterator for traversing the chain of errors, starting with the current error -and continuing with recursive calls to Error::source. Read more
source§

impl From<Error> for Error

source§

fn from(original: Error) -> Error

Converts to this type from the input type.
source§

impl From<RequestError> for Error

source§

fn from(original: RequestError) -> Error

Converts to this type from the input type.
source§

impl From<String> for Error

source§

fn from(original: String) -> Error

Converts to this type from the input type.
source§

impl Serialize for Error

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where +and continuing with recursive calls to Error::source. Read more

source§

impl From<Error> for Error

source§

fn from(original: Error) -> Error

Converts to this type from the input type.
source§

impl From<RequestError> for Error

source§

fn from(original: RequestError) -> Error

Converts to this type from the input type.
source§

impl From<String> for Error

source§

fn from(original: String) -> Error

Converts to this type from the input type.
source§

impl Serialize for Error

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

§

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
§

impl<T> Any for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

§

fn type_name(&self) -> &'static str

§

impl<T> AnySync for T
where @@ -20,6 +20,9 @@ ) -> <T as Pointee>::Metadata

Converts some archived metadata to the pointer metadata for itself.

§

impl<T> AsErrorSource for T
where T: Error + 'static,

§

fn as_error_source(&self) -> &(dyn Error + 'static)

For maximum effectiveness, this needs to be called as a method to benefit from Rust’s automatic dereferencing of method +receivers.
§

impl<T> AsErrorSource for T
where + T: Error + 'static,

§

fn as_error_source(&self) -> &(dyn Error + 'static)

For maximum effectiveness, this needs to be called as a method +to benefit from Rust’s automatic dereferencing of method receivers.
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where T: 'a,

§

fn implicit( diff --git a/hotshot_query_service/status/fn.define_api.html b/hotshot_query_service/status/fn.define_api.html index 3aded2fa1..abcc3e82a 100644 --- a/hotshot_query_service/status/fn.define_api.html +++ b/hotshot_query_service/status/fn.define_api.html @@ -1,6 +1,7 @@ define_api in hotshot_query_service::status - Rust -
pub fn define_api<State>(
-    options: &Options
-) -> Result<Api<State, Error>, ApiError>
where +
pub fn define_api<State, Ver: StaticVersionType + 'static>(
+    options: &Options,
+    _: Ver
+) -> Result<Api<State, Error, Ver>, ApiError>
where State: 'static + Send + Sync + ReadState, <State as ReadState>::State: Send + Sync + StatusDataSource,
\ No newline at end of file diff --git a/hotshot_query_service/status/index.html b/hotshot_query_service/status/index.html index 32620ac39..6c920b3a6 100644 --- a/hotshot_query_service/status/index.html +++ b/hotshot_query_service/status/index.html @@ -1,5 +1,5 @@ hotshot_query_service::status - Rust -
Expand description

Queries for node-specific state and uncommitted data.

+
Expand description

Queries for node-specific state and uncommitted data.

Unlike the availability and node APIs, which deal only with committed data (albeit with different consistency properties), the status API offers a glimpse into internal consensus state and uncommitted data. Here you can find low-level diff --git a/hotshot_query_service/status/struct.MempoolQueryData.html b/hotshot_query_service/status/struct.MempoolQueryData.html index fce3e4b8b..710694a71 100644 --- a/hotshot_query_service/status/struct.MempoolQueryData.html +++ b/hotshot_query_service/status/struct.MempoolQueryData.html @@ -52,9 +52,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/status/struct.Options.html b/hotshot_query_service/status/struct.Options.html index e6d8d1583..c84031eed 100644 --- a/hotshot_query_service/status/struct.Options.html +++ b/hotshot_query_service/status/struct.Options.html @@ -1,16 +1,16 @@ Options in hotshot_query_service::status - Rust -
pub struct Options {
+    
pub struct Options {
     pub api_path: Option<PathBuf>,
     pub extensions: Vec<Value>,
 }

Fields§

§api_path: Option<PathBuf>§extensions: Vec<Value>

Additional API specification files to merge with status-api-path.

These optional files may contain route definitions for application-specific routes that have been added as extensions to the basic status API.

-

Trait Implementations§

source§

impl Args for Options

source§

fn group_id() -> Option<Id>

Report the [ArgGroup::id][crate::ArgGroup::id] for this set of arguments
source§

fn augment_args<'b>(__clap_app: Command) -> Command

Append to [Command] so it can instantiate Self. Read more
source§

fn augment_args_for_update<'b>(__clap_app: Command) -> Command

Append to [Command] so it can update self. Read more
source§

impl Default for Options

source§

fn default() -> Options

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

impl FromArgMatches for Options

source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn from_arg_matches_mut( +

Trait Implementations§

source§

impl Args for Options

source§

fn group_id() -> Option<Id>

Report the [ArgGroup::id][crate::ArgGroup::id] for this set of arguments
source§

fn augment_args<'b>(__clap_app: Command) -> Command

Append to [Command] so it can instantiate Self. Read more
source§

fn augment_args_for_update<'b>(__clap_app: Command) -> Command

Append to [Command] so it can update self. Read more
source§

impl Default for Options

source§

fn default() -> Options

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

impl FromArgMatches for Options

source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches -) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn update_from_arg_matches( +) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches -) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

fn update_from_arg_matches_mut( +) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches ) -> Result<(), Error>

Assign values from ArgMatches to self.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where diff --git a/hotshot_query_service/status/trait.StatusDataSource.html b/hotshot_query_service/status/trait.StatusDataSource.html index 5c7fcd907..01993535f 100644 --- a/hotshot_query_service/status/trait.StatusDataSource.html +++ b/hotshot_query_service/status/trait.StatusDataSource.html @@ -41,7 +41,7 @@ &'life0 self ) -> Pin<Box<dyn Future<Output = QueryResult<f64>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, - 'life0: 'async_trait,

Implementors§

Implementors§

source§

impl StatusDataSource for DataSource

source§

impl StatusDataSource for MetricsDataSource

source§

impl<D, U> StatusDataSource for ExtensibleDataSource<D, U>
where D: StatusDataSource + Send + Sync, U: Send + Sync,

source§

impl<Types, S, P> StatusDataSource for FetchingDataSource<Types, S, P>
where Types: NodeType, diff --git a/hotshot_query_service/struct.Leaf.html b/hotshot_query_service/struct.Leaf.html index ae54e91d6..cf004b9a3 100644 --- a/hotshot_query_service/struct.Leaf.html +++ b/hotshot_query_service/struct.Leaf.html @@ -1,4 +1,4 @@ -Leaf in hotshot_query_service - Rust +Leaf in hotshot_query_service - Rust
pub struct Leaf<TYPES>
where TYPES: NodeType,
{ pub view_number: <TYPES as NodeType>::Time, @@ -49,7 +49,6 @@
Errors

pub fn get_block_payload(&self) -> Option<<TYPES as NodeType>::BlockPayload>

Optional block payload.

pub fn get_payload_commitment(&self) -> <VidSchemeType as VidScheme>::Commit

A commitment to the block payload contained in this leaf.

pub fn get_proposer_id(&self) -> <TYPES as NodeType>::SignatureKey

Identity of the network participant who proposed this leaf.

-

pub fn from_stored_view(stored_view: StoredView<TYPES>) -> Leaf<TYPES>

Create a leaf from information stored about a view.

Trait Implementations§

§

impl<TYPES> Clone for Leaf<TYPES>
where TYPES: Clone + NodeType, <TYPES as NodeType>::Time: Clone, @@ -149,9 +148,9 @@
Errors
Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/struct.MissingSnafu.html b/hotshot_query_service/struct.MissingSnafu.html index cc29f9606..810d1e828 100644 --- a/hotshot_query_service/struct.MissingSnafu.html +++ b/hotshot_query_service/struct.MissingSnafu.html @@ -1,9 +1,9 @@ MissingSnafu in hotshot_query_service - Rust -
pub struct MissingSnafu;
Expand description

SNAFU context selector for the QueryError::Missing variant

-

Implementations§

source§

impl MissingSnafu

source

pub fn build(self) -> QueryError

Consume the selector and return the associated error

-
source

pub fn fail<__T>(self) -> Result<__T, QueryError>

Consume the selector and return a Result with the associated error

-

Trait Implementations§

source§

impl Clone for MissingSnafu

source§

fn clone(&self) -> MissingSnafu

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 MissingSnafu

source§

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

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

impl IntoError<QueryError> for MissingSnafu
where - QueryError: Error + ErrorCompat,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> QueryError

Combine the information to produce the error
source§

impl Copy for MissingSnafu

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +
pub struct MissingSnafu;
Expand description

SNAFU context selector for the QueryError::Missing variant

+

Implementations§

source§

impl MissingSnafu

source

pub fn build(self) -> QueryError

Consume the selector and return the associated error

+
source

pub fn fail<__T>(self) -> Result<__T, QueryError>

Consume the selector and return a Result with the associated error

+

Trait Implementations§

source§

impl Clone for MissingSnafu

source§

fn clone(&self) -> MissingSnafu

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 MissingSnafu

source§

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

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

impl IntoError<QueryError> for MissingSnafu
where + QueryError: Error + ErrorCompat,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> QueryError

Combine the information to produce the error
source§

impl Copy for MissingSnafu

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
§

impl<T> Any for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

§

fn type_name(&self) -> &'static str

§

impl<T> AnySync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

§

impl<T> ArchivePointee for T

§

type ArchivedMetadata = ()

The archived version of the pointer metadata for this type.
§

fn pointer_metadata( diff --git a/hotshot_query_service/struct.NotFoundSnafu.html b/hotshot_query_service/struct.NotFoundSnafu.html index a4033009b..d61ddf9a1 100644 --- a/hotshot_query_service/struct.NotFoundSnafu.html +++ b/hotshot_query_service/struct.NotFoundSnafu.html @@ -1,9 +1,9 @@ NotFoundSnafu in hotshot_query_service - Rust -
pub struct NotFoundSnafu;
Expand description

SNAFU context selector for the QueryError::NotFound variant

-

Implementations§

source§

impl NotFoundSnafu

source

pub fn build(self) -> QueryError

Consume the selector and return the associated error

-
source

pub fn fail<__T>(self) -> Result<__T, QueryError>

Consume the selector and return a Result with the associated error

-

Trait Implementations§

source§

impl Clone for NotFoundSnafu

source§

fn clone(&self) -> NotFoundSnafu

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 NotFoundSnafu

source§

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

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

impl IntoError<QueryError> for NotFoundSnafu
where - QueryError: Error + ErrorCompat,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> QueryError

Combine the information to produce the error
source§

impl Copy for NotFoundSnafu

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +
pub struct NotFoundSnafu;
Expand description

SNAFU context selector for the QueryError::NotFound variant

+

Implementations§

source§

impl NotFoundSnafu

source

pub fn build(self) -> QueryError

Consume the selector and return the associated error

+
source

pub fn fail<__T>(self) -> Result<__T, QueryError>

Consume the selector and return a Result with the associated error

+

Trait Implementations§

source§

impl Clone for NotFoundSnafu

source§

fn clone(&self) -> NotFoundSnafu

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 NotFoundSnafu

source§

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

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

impl IntoError<QueryError> for NotFoundSnafu
where + QueryError: Error + ErrorCompat,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> QueryError

Combine the information to produce the error
source§

impl Copy for NotFoundSnafu

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
§

impl<T> Any for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

§

fn type_name(&self) -> &'static str

§

impl<T> AnySync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

§

impl<T> ArchivePointee for T

§

type ArchivedMetadata = ()

The archived version of the pointer metadata for this type.
§

fn pointer_metadata( diff --git a/hotshot_query_service/struct.Options.html b/hotshot_query_service/struct.Options.html index 4e26c5aac..23f3377e8 100644 --- a/hotshot_query_service/struct.Options.html +++ b/hotshot_query_service/struct.Options.html @@ -1,15 +1,15 @@ Options in hotshot_query_service - Rust -
pub struct Options {
+    
pub struct Options {
     pub availability: Options,
     pub node: Options,
     pub status: Options,
     pub port: u16,
-}

Fields§

§availability: Options§node: Options§status: Options§port: u16

Trait Implementations§

source§

impl Args for Options

source§

fn group_id() -> Option<Id>

Report the [ArgGroup::id][crate::ArgGroup::id] for this set of arguments
source§

fn augment_args<'b>(__clap_app: Command) -> Command

Append to [Command] so it can instantiate Self. Read more
source§

fn augment_args_for_update<'b>(__clap_app: Command) -> Command

Append to [Command] so it can update self. Read more
source§

impl Default for Options

source§

fn default() -> Options

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

impl FromArgMatches for Options

source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn from_arg_matches_mut( +}

Fields§

§availability: Options§node: Options§status: Options§port: u16

Trait Implementations§

source§

impl Args for Options

source§

fn group_id() -> Option<Id>

Report the [ArgGroup::id][crate::ArgGroup::id] for this set of arguments
source§

fn augment_args<'b>(__clap_app: Command) -> Command

Append to [Command] so it can instantiate Self. Read more
source§

fn augment_args_for_update<'b>(__clap_app: Command) -> Command

Append to [Command] so it can update self. Read more
source§

impl Default for Options

source§

fn default() -> Options

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

impl FromArgMatches for Options

source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches -) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn update_from_arg_matches( +) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches -) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

fn update_from_arg_matches_mut( +) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches ) -> Result<(), Error>

Assign values from ArgMatches to self.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where diff --git a/hotshot_query_service/struct.Snafu.html b/hotshot_query_service/struct.Snafu.html index 4f608904f..da250a9fb 100644 --- a/hotshot_query_service/struct.Snafu.html +++ b/hotshot_query_service/struct.Snafu.html @@ -1,14 +1,14 @@ Snafu in hotshot_query_service - Rust -
pub struct Snafu<__T0> {
+    
pub struct Snafu<__T0> {
     pub message: __T0,
 }
Expand description

SNAFU context selector for the QueryError::Error variant

-

Fields§

§message: __T0

Implementations§

source§

impl<__T0> Snafu<__T0>

source

pub fn build(self) -> QueryError
where +

Fields§

§message: __T0

Implementations§

source§

impl<__T0> Snafu<__T0>

source

pub fn build(self) -> QueryError
where __T0: Into<String>,

Consume the selector and return the associated error

-
source

pub fn fail<__T>(self) -> Result<__T, QueryError>
where +

source

pub fn fail<__T>(self) -> Result<__T, QueryError>
where __T0: Into<String>,

Consume the selector and return a Result with the associated error

-

Trait Implementations§

source§

impl<__T0: Clone> Clone for Snafu<__T0>

source§

fn clone(&self) -> Snafu<__T0>

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<__T0: Debug> Debug for Snafu<__T0>

source§

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

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

impl<__T0> IntoError<QueryError> for Snafu<__T0>
where +

Trait Implementations§

source§

impl<__T0: Clone> Clone for Snafu<__T0>

source§

fn clone(&self) -> Snafu<__T0>

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<__T0: Debug> Debug for Snafu<__T0>

source§

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

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

impl<__T0> IntoError<QueryError> for Snafu<__T0>
where QueryError: Error + ErrorCompat, - __T0: Into<String>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> QueryError

Combine the information to produce the error
source§

impl<__T0: Copy> Copy for Snafu<__T0>

Auto Trait Implementations§

§

impl<__T0> RefUnwindSafe for Snafu<__T0>
where + __T0: Into<String>,

§

type Source = NoneError

The underlying error
source§

fn into_error(self, error: Self::Source) -> QueryError

Combine the information to produce the error
source§

impl<__T0: Copy> Copy for Snafu<__T0>

Auto Trait Implementations§

§

impl<__T0> RefUnwindSafe for Snafu<__T0>
where __T0: RefUnwindSafe,

§

impl<__T0> Send for Snafu<__T0>
where __T0: Send,

§

impl<__T0> Sync for Snafu<__T0>
where __T0: Sync,

§

impl<__T0> Unpin for Snafu<__T0>
where diff --git a/hotshot_query_service/testing/consensus/index.html b/hotshot_query_service/testing/consensus/index.html index 39983c60e..f4f57ee33 100644 --- a/hotshot_query_service/testing/consensus/index.html +++ b/hotshot_query_service/testing/consensus/index.html @@ -1,2 +1,2 @@ hotshot_query_service::testing::consensus - Rust -
\ No newline at end of file +
\ No newline at end of file diff --git a/hotshot_query_service/testing/consensus/struct.MockNetwork.html b/hotshot_query_service/testing/consensus/struct.MockNetwork.html index 285fea952..c6774ff34 100644 --- a/hotshot_query_service/testing/consensus/struct.MockNetwork.html +++ b/hotshot_query_service/testing/consensus/struct.MockNetwork.html @@ -1,5 +1,5 @@ MockNetwork in hotshot_query_service::testing::consensus - Rust -
pub struct MockNetwork<D: DataSourceLifeCycle> { /* private fields */ }

Implementations§

source§

impl<D: DataSourceLifeCycle + UpdateStatusData> MockNetwork<D>

source

pub async fn init() -> Self

source§

impl<D: DataSourceLifeCycle> MockNetwork<D>

source

pub fn handle(&self) -> SystemContextHandle<MockTypes, MockNodeImpl>

source

pub async fn submit_transaction(&self, tx: MockTransaction)

source

pub fn num_nodes(&self) -> usize

source

pub fn proposer(&self, i: usize) -> SignatureKey<MockTypes>

source

pub fn data_source_index(&self, i: usize) -> Arc<RwLock<D>>

source

pub fn data_source(&self) -> Arc<RwLock<D>>

source

pub fn storage(&self) -> &D::Storage

source

pub fn spawn(&mut self, name: impl Display, task: impl Future + Send + 'static)

source

pub async fn shut_down(self)

source§

impl<D: DataSourceLifeCycle> MockNetwork<D>

source

pub async fn start(&mut self)

Trait Implementations§

source§

impl<D: DataSourceLifeCycle> Drop for MockNetwork<D>

source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

§

impl<D> !RefUnwindSafe for MockNetwork<D>

§

impl<D> Send for MockNetwork<D>

§

impl<D> Sync for MockNetwork<D>

§

impl<D> Unpin for MockNetwork<D>
where +
pub struct MockNetwork<D: DataSourceLifeCycle> { /* private fields */ }

Implementations§

source§

impl<D: DataSourceLifeCycle + UpdateStatusData> MockNetwork<D>

source

pub async fn init() -> Self

source§

impl<D: DataSourceLifeCycle> MockNetwork<D>

source

pub fn handle(&self) -> SystemContextHandle<MockTypes, MockNodeImpl>

source

pub async fn submit_transaction(&self, tx: MockTransaction)

source

pub fn num_nodes(&self) -> usize

source

pub fn proposer(&self, i: usize) -> SignatureKey<MockTypes>

source

pub fn data_source_index(&self, i: usize) -> Arc<RwLock<D>>

source

pub fn data_source(&self) -> Arc<RwLock<D>>

source

pub fn storage(&self) -> &D::Storage

source

pub fn spawn(&mut self, name: impl Display, task: impl Future + Send + 'static)

source

pub async fn shut_down(self)

source§

impl<D: DataSourceLifeCycle> MockNetwork<D>

source

pub async fn start(&mut self)

Trait Implementations§

source§

impl<D: DataSourceLifeCycle> Drop for MockNetwork<D>

source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

§

impl<D> !RefUnwindSafe for MockNetwork<D>

§

impl<D> Send for MockNetwork<D>

§

impl<D> Sync for MockNetwork<D>

§

impl<D> Unpin for MockNetwork<D>

§

impl<D> !UnwindSafe for MockNetwork<D>

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
§

impl<T> Any for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

§

fn type_name(&self) -> &'static str

§

impl<T> AnySync for T
where diff --git a/hotshot_query_service/testing/consensus/trait.DataSourceLifeCycle.html b/hotshot_query_service/testing/consensus/trait.DataSourceLifeCycle.html index f7ceac9d0..a60ad57e2 100644 --- a/hotshot_query_service/testing/consensus/trait.DataSourceLifeCycle.html +++ b/hotshot_query_service/testing/consensus/trait.DataSourceLifeCycle.html @@ -1,5 +1,5 @@ DataSourceLifeCycle in hotshot_query_service::testing::consensus - Rust -
pub trait DataSourceLifeCycle: Send + Sync + Sized + 'static {
+    
pub trait DataSourceLifeCycle: Send + Sync + Sized + 'static {
     type Storage: Send + Sync;
 
     // Required methods
@@ -31,31 +31,31 @@
     ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
        where Self: 'async_trait,
              'life0: 'async_trait { ... }
-}

Required Associated Types§

source

type Storage: Send + Sync

Backing storage for the data source.

+}

Required Associated Types§

source

type Storage: Send + Sync

Backing storage for the data source.

This can be used to connect to data sources to the same underlying data. It must be kept alive as long as the related data sources are open.

-

Required Methods§

source

fn create<'async_trait>( +

Required Methods§

source

fn create<'async_trait>( node_id: usize ) -> Pin<Box<dyn Future<Output = Self::Storage> + Send + 'async_trait>>
where - Self: 'async_trait,

source

fn connect<'life0, 'async_trait>( + Self: 'async_trait,

source

fn connect<'life0, 'async_trait>( storage: &'life0 Self::Storage ) -> Pin<Box<dyn Future<Output = Self> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source

fn reset<'life0, 'async_trait>( + 'life0: 'async_trait,

source

fn reset<'life0, 'async_trait>( storage: &'life0 Self::Storage ) -> Pin<Box<dyn Future<Output = Self> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source

fn handle_event<'life0, 'life1, 'async_trait>( + 'life0: 'async_trait,

source

fn handle_event<'life0, 'life1, 'async_trait>( &'life0 mut self, event: &'life1 Event<MockTypes> ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, - 'life1: 'async_trait,

Provided Methods§

source

fn setup<'life0, 'async_trait>( + 'life1: 'async_trait,

Provided Methods§

source

fn setup<'life0, 'async_trait>( _network: &'life0 mut MockNetwork<Self> ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Setup runs after setting up the network but before starting a test.

-

Object Safety§

This trait is not object safe.

Implementors§

Object Safety§

This trait is not object safe.

Implementors§

\ No newline at end of file + U: Default + Send + Sync + 'static,

source§

impl<P: AvailabilityProvider<MockTypes> + Default> DataSourceLifeCycle for SqlDataSource<MockTypes, P>

source§

impl<P: AvailabilityProvider<MockTypes> + Default> DataSourceLifeCycle for FileSystemDataSource<MockTypes, P>

\ No newline at end of file diff --git a/hotshot_query_service/testing/consensus/trait.TestableDataSource.html b/hotshot_query_service/testing/consensus/trait.TestableDataSource.html index abfa0e876..ab39bc68f 100644 --- a/hotshot_query_service/testing/consensus/trait.TestableDataSource.html +++ b/hotshot_query_service/testing/consensus/trait.TestableDataSource.html @@ -1,3 +1,3 @@ TestableDataSource in hotshot_query_service::testing::consensus - Rust -
pub trait TestableDataSource: DataSourceLifeCycle + AvailabilityDataSource<MockTypes> + NodeDataSource<MockTypes> + StatusDataSource + UpdateDataSource<MockTypes> + VersionedDataSource { }

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<T> TestableDataSource for T
where +
\ No newline at end of file diff --git a/hotshot_query_service/testing/mocks/index.html b/hotshot_query_service/testing/mocks/index.html index 44346f43a..816ae57f1 100644 --- a/hotshot_query_service/testing/mocks/index.html +++ b/hotshot_query_service/testing/mocks/index.html @@ -1,2 +1,2 @@ hotshot_query_service::testing::mocks - Rust -
\ No newline at end of file +
\ No newline at end of file diff --git a/hotshot_query_service/testing/mocks/sidebar-items.js b/hotshot_query_service/testing/mocks/sidebar-items.js index 67e890a27..e5a34e5e1 100644 --- a/hotshot_query_service/testing/mocks/sidebar-items.js +++ b/hotshot_query_service/testing/mocks/sidebar-items.js @@ -1 +1 @@ -window.SIDEBAR_ITEMS = {"fn":["mock_transaction"],"struct":["MockNodeImpl","MockTypes"],"type":["MockHeader","MockMembership","MockMerkleTree","MockNetwork","MockPayload","MockQuorumProposal","MockTransaction"]}; \ No newline at end of file +window.SIDEBAR_ITEMS = {"fn":["mock_transaction"],"struct":["MockNodeImpl","MockTypes"],"type":["MockHeader","MockMembership","MockMerkleTree","MockNetwork","MockPayload","MockQuorumProposal","MockStorage","MockTransaction"]}; \ No newline at end of file diff --git a/hotshot_query_service/testing/mocks/struct.MockNodeImpl.html b/hotshot_query_service/testing/mocks/struct.MockNodeImpl.html index e4a1f0522..d3bfe547b 100644 --- a/hotshot_query_service/testing/mocks/struct.MockNodeImpl.html +++ b/hotshot_query_service/testing/mocks/struct.MockNodeImpl.html @@ -1,16 +1,16 @@ MockNodeImpl in hotshot_query_service::testing::mocks - Rust -
pub struct MockNodeImpl;

Trait Implementations§

source§

impl Clone for MockNodeImpl

source§

fn clone(&self) -> MockNodeImpl

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 MockNodeImpl

source§

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

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

impl Default for MockNodeImpl

source§

fn default() -> MockNodeImpl

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

impl<'de> Deserialize<'de> for MockNodeImpl

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 MockNodeImpl

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 +
pub struct MockNodeImpl;

Trait Implementations§

source§

impl Clone for MockNodeImpl

source§

fn clone(&self) -> MockNodeImpl

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 MockNodeImpl

source§

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

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

impl Default for MockNodeImpl

source§

fn default() -> MockNodeImpl

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

impl<'de> Deserialize<'de> for MockNodeImpl

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 MockNodeImpl

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, - Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl NodeImplementation<MockTypes> for MockNodeImpl

§

type Storage = MemoryStorage<MockTypes>

Storage type for this consensus implementation
§

type QuorumNetwork = MemoryNetwork<Message<MockTypes>, VerKey>

Network for all nodes
§

type CommitteeNetwork = MemoryNetwork<Message<MockTypes>, VerKey>

Network for those in the DA committee
source§

impl Ord for MockNodeImpl

source§

fn cmp(&self, other: &MockNodeImpl) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where + Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl NodeImplementation<MockTypes> for MockNodeImpl

§

type QuorumNetwork = MemoryNetwork<Message<MockTypes>, VerKey>

Network for all nodes
§

type CommitteeNetwork = MemoryNetwork<Message<MockTypes>, VerKey>

Network for those in the DA committee
§

type Storage = TestStorage<MockTypes>

Storage for DA layer interactions
source§

impl Ord for MockNodeImpl

source§

fn cmp(&self, other: &MockNodeImpl) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Self
where - Self: Sized + PartialOrd,

Restrict a value to a certain interval. Read more
source§

impl PartialEq for MockNodeImpl

source§

fn eq(&self, other: &MockNodeImpl) -> bool

This method tests for self and other values to be equal, and is used + Self: Sized + PartialOrd,

Restrict a value to a certain interval. Read more
source§

impl PartialEq for MockNodeImpl

source§

fn eq(&self, other: &MockNodeImpl) -> 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.
source§

impl PartialOrd for MockNodeImpl

source§

fn partial_cmp(&self, other: &MockNodeImpl) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= +sufficient, and should not be overridden without very good reason.
source§

impl PartialOrd for MockNodeImpl

source§

fn partial_cmp(&self, other: &MockNodeImpl) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
source§

impl Serialize for MockNodeImpl

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Copy for MockNodeImpl

source§

impl Eq for MockNodeImpl

source§

impl StructuralEq for MockNodeImpl

source§

impl StructuralPartialEq for MockNodeImpl

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +operator. Read more

source§

impl Serialize for MockNodeImpl

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Copy for MockNodeImpl

source§

impl Eq for MockNodeImpl

source§

impl StructuralEq for MockNodeImpl

source§

impl StructuralPartialEq for MockNodeImpl

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
§

impl<T> Any for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

§

fn type_name(&self) -> &'static str

§

impl<T> AnySync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

§

impl<T> ArchivePointee for T

§

type ArchivedMetadata = ()

The archived version of the pointer metadata for this type.
§

fn pointer_metadata( @@ -49,9 +49,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/testing/mocks/struct.MockTypes.html b/hotshot_query_service/testing/mocks/struct.MockTypes.html index 98767d4ac..607ffd839 100644 --- a/hotshot_query_service/testing/mocks/struct.MockTypes.html +++ b/hotshot_query_service/testing/mocks/struct.MockTypes.html @@ -1,5 +1,5 @@ MockTypes in hotshot_query_service::testing::mocks - Rust -
pub struct MockTypes;

Trait Implementations§

source§

impl AvailabilityDataSource<MockTypes> for DataSource

source§

fn get_block_with_transaction<'life0, 'async_trait>( +
pub struct MockTypes;

Trait Implementations§

source§

impl AvailabilityDataSource<MockTypes> for DataSource

source§

fn get_block_with_transaction<'life0, 'async_trait>( &'life0 self, hash: TransactionHash<MockTypes> ) -> Pin<Box<dyn Future<Output = Fetch<(BlockQueryData<MockTypes>, TransactionIndex<MockTypes>)>> + Send + 'async_trait>>
where @@ -14,49 +14,49 @@ where R: RangeBounds<usize> + Send

§

type VidCommonRange<R> = Pin<Box<dyn Stream<Item = Fetch<VidCommonQueryData<MockTypes>>> + Send>> where - R: RangeBounds<usize> + Send

source§

fn get_leaf<'life0, 'async_trait, ID>( + R: RangeBounds<usize> + Send

source§

fn get_leaf<'life0, 'async_trait, ID>( &'life0 self, id: ID ) -> Pin<Box<dyn Future<Output = Fetch<LeafQueryData<MockTypes>>> + Send + 'async_trait>>
where ID: Into<LeafId<MockTypes>> + Send + Sync + 'async_trait, Self: 'async_trait, - 'life0: 'async_trait,

source§

fn get_block<'life0, 'async_trait, ID>( + 'life0: 'async_trait,

source§

fn get_block<'life0, 'async_trait, ID>( &'life0 self, id: ID ) -> Pin<Box<dyn Future<Output = Fetch<BlockQueryData<MockTypes>>> + Send + 'async_trait>>
where ID: Into<BlockId<MockTypes>> + Send + Sync + 'async_trait, Self: 'async_trait, - 'life0: 'async_trait,

source§

fn get_payload<'life0, 'async_trait, ID>( + 'life0: 'async_trait,

source§

fn get_payload<'life0, 'async_trait, ID>( &'life0 self, id: ID ) -> Pin<Box<dyn Future<Output = Fetch<PayloadQueryData<MockTypes>>> + Send + 'async_trait>>
where ID: Into<BlockId<MockTypes>> + Send + Sync + 'async_trait, Self: 'async_trait, - 'life0: 'async_trait,

source§

fn get_vid_common<'life0, 'async_trait, ID>( + 'life0: 'async_trait,

source§

fn get_vid_common<'life0, 'async_trait, ID>( &'life0 self, id: ID ) -> Pin<Box<dyn Future<Output = Fetch<VidCommonQueryData<MockTypes>>> + Send + 'async_trait>>
where ID: Into<BlockId<MockTypes>> + Send + Sync + 'async_trait, Self: 'async_trait, - 'life0: 'async_trait,

source§

fn get_leaf_range<'life0, 'async_trait, R>( + 'life0: 'async_trait,

source§

fn get_leaf_range<'life0, 'async_trait, R>( &'life0 self, range: R ) -> Pin<Box<dyn Future<Output = Self::LeafRange<R>> + Send + 'async_trait>>
where R: RangeBounds<usize> + Send + 'static + 'async_trait, Self: 'async_trait, - 'life0: 'async_trait,

source§

fn get_block_range<'life0, 'async_trait, R>( + 'life0: 'async_trait,

source§

fn get_block_range<'life0, 'async_trait, R>( &'life0 self, range: R ) -> Pin<Box<dyn Future<Output = Self::BlockRange<R>> + Send + 'async_trait>>
where R: RangeBounds<usize> + Send + 'static + 'async_trait, Self: 'async_trait, - 'life0: 'async_trait,

source§

fn get_payload_range<'life0, 'async_trait, R>( + 'life0: 'async_trait,

source§

fn get_payload_range<'life0, 'async_trait, R>( &'life0 self, range: R ) -> Pin<Box<dyn Future<Output = Self::PayloadRange<R>> + Send + 'async_trait>>
where R: RangeBounds<usize> + Send + 'static + 'async_trait, Self: 'async_trait, - 'life0: 'async_trait,

source§

fn get_vid_common_range<'life0, 'async_trait, R>( + 'life0: 'async_trait,

source§

fn get_vid_common_range<'life0, 'async_trait, R>( &'life0 self, range: R ) -> Pin<Box<dyn Future<Output = Self::VidCommonRange<R>> + Send + 'async_trait>>
where @@ -85,36 +85,36 @@ 'life0: 'async_trait,

source§

impl Clone for MockTypes

source§

fn clone(&self) -> MockTypes

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 MockTypes

source§

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

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

impl Default for MockTypes

source§

fn default() -> MockTypes

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

impl<'de> Deserialize<'de> for MockTypes

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 MockTypes

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, - Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl MerklizedState<MockTypes> for MockMerkleTree

§

type Arity = UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>

§

type Key = usize

§

type Entry = usize

§

type T = Sha3Node

§

type Commit = <UniversalMerkleTree<usize, Sha3Digest, usize, UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, Sha3Node> as MerkleTreeScheme>::Commitment

§

type Digest = Sha3Digest

source§

fn state_type() -> &'static str

Retrieves the name of the state being queried.
source§

fn header_state_commitment_field() -> &'static str

Retrieves the field in the header containing the Merkle tree commitment -for the state implementing this trait.
source§

fn tree_height() -> usize

Get the height of the tree
source§

impl NodeDataSource<MockTypes> for DataSource

source§

fn block_height<'life0, 'async_trait>( + Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl MerklizedState<MockTypes> for MockMerkleTree

§

type Arity = UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>

§

type Key = usize

§

type Entry = usize

§

type T = Sha3Node

§

type Commit = <UniversalMerkleTree<usize, Sha3Digest, usize, UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, Sha3Node> as MerkleTreeScheme>::Commitment

§

type Digest = Sha3Digest

source§

fn state_type() -> &'static str

Retrieves the name of the state being queried.
source§

fn header_state_commitment_field() -> &'static str

Retrieves the field in the header containing the Merkle tree commitment +for the state implementing this trait.
source§

fn tree_height() -> usize

Get the height of the tree
source§

impl NodeDataSource<MockTypes> for DataSource

source§

fn block_height<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = QueryResult<usize>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn count_transactions<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

fn count_transactions<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = QueryResult<usize>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn payload_size<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

fn payload_size<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = QueryResult<usize>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn vid_share<'life0, 'async_trait, ID>( + 'life0: 'async_trait,

source§

fn vid_share<'life0, 'async_trait, ID>( &'life0 self, id: ID ) -> Pin<Box<dyn Future<Output = QueryResult<VidShare>> + Send + 'async_trait>>
where ID: Into<BlockId<MockTypes>> + Send + Sync + 'async_trait, Self: 'async_trait, - 'life0: 'async_trait,

source§

fn sync_status<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

fn sync_status<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = QueryResult<SyncStatus>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn get_header_window<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

fn get_header_window<'life0, 'async_trait>( &'life0 self, start: impl 'async_trait + Into<WindowStart<MockTypes>> + Send + Sync, end: u64 ) -> Pin<Box<dyn Future<Output = QueryResult<TimeWindowQueryData<Header<MockTypes>>>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

impl NodeImplementation<MockTypes> for MockNodeImpl

§

type Storage = MemoryStorage<MockTypes>

Storage type for this consensus implementation
§

type QuorumNetwork = MemoryNetwork<Message<MockTypes>, VerKey>

Network for all nodes
§

type CommitteeNetwork = MemoryNetwork<Message<MockTypes>, VerKey>

Network for those in the DA committee
source§

impl NodeType for MockTypes

§

type Time = ViewNumber

The time type that this hotshot setup is using. Read more
§

type BlockHeader = TestBlockHeader

The block header type that this hotshot setup is using.
§

type BlockPayload = TestBlockPayload

The block type that this hotshot setup is using. Read more
§

type SignatureKey = VerKey

The signature key that this hotshot setup is using.
§

type Transaction = TestTransaction

The transaction type that this hotshot setup is using. Read more
§

type ElectionConfigType = StaticElectionConfig

The election config type that this hotshot setup is using.
§

type InstanceState = TestInstanceState

The instance-level state type that this hotshot setup is using.
§

type ValidatedState = TestValidatedState

The validated state type that this hotshot setup is using.
§

type Membership = GeneralStaticCommittee<MockTypes, VerKey>

Membership used for this implementation
source§

impl Ord for MockTypes

source§

fn cmp(&self, other: &MockTypes) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where + 'life0: 'async_trait,

source§

impl NodeImplementation<MockTypes> for MockNodeImpl

§

type QuorumNetwork = MemoryNetwork<Message<MockTypes>, VerKey>

Network for all nodes
§

type CommitteeNetwork = MemoryNetwork<Message<MockTypes>, VerKey>

Network for those in the DA committee
§

type Storage = TestStorage<MockTypes>

Storage for DA layer interactions
source§

impl NodeType for MockTypes

§

type Time = ViewNumber

The time type that this hotshot setup is using. Read more
§

type BlockHeader = TestBlockHeader

The block header type that this hotshot setup is using.
§

type BlockPayload = TestBlockPayload

The block type that this hotshot setup is using. Read more
§

type SignatureKey = VerKey

The signature key that this hotshot setup is using.
§

type Transaction = TestTransaction

The transaction type that this hotshot setup is using. Read more
§

type ElectionConfigType = StaticElectionConfig

The election config type that this hotshot setup is using.
§

type InstanceState = TestInstanceState

The instance-level state type that this hotshot setup is using.
§

type ValidatedState = TestValidatedState

The validated state type that this hotshot setup is using.
§

type Membership = GeneralStaticCommittee<MockTypes, VerKey>

Membership used for this implementation
source§

impl Ord for MockTypes

source§

fn cmp(&self, other: &MockTypes) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized + PartialOrd,

Restrict a value to a certain interval. Read more
source§

impl PartialEq for MockTypes

source§

fn eq(&self, other: &MockTypes) -> bool

This method tests for self and other values to be equal, and is used @@ -122,17 +122,17 @@ sufficient, and should not be overridden without very good reason.
source§

impl PartialOrd for MockTypes

source§

fn partial_cmp(&self, other: &MockTypes) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl QueryableHeader<MockTypes> for MockHeader

source§

fn timestamp(&self) -> u64

source§

impl Serialize for MockTypes

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl UpdateAvailabilityData<MockTypes> for DataSource

§

type Error = QueryError

source§

fn insert_leaf<'life0, 'async_trait>( + __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl UpdateAvailabilityData<MockTypes> for DataSource

§

type Error = QueryError

source§

fn insert_leaf<'life0, 'async_trait>( &'life0 mut self, leaf: LeafQueryData<MockTypes> ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn insert_block<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

fn insert_block<'life0, 'async_trait>( &'life0 mut self, block: BlockQueryData<MockTypes> ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where Self: 'async_trait, - 'life0: 'async_trait,

source§

fn insert_vid<'life0, 'async_trait>( + 'life0: 'async_trait,

source§

fn insert_vid<'life0, 'async_trait>( &'life0 mut self, common: VidCommonQueryData<MockTypes>, share: Option<VidShare> @@ -186,9 +186,9 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where diff --git a/hotshot_query_service/testing/mocks/type.MockMerkleTree.html b/hotshot_query_service/testing/mocks/type.MockMerkleTree.html index 2032e2c3f..40e084877 100644 --- a/hotshot_query_service/testing/mocks/type.MockMerkleTree.html +++ b/hotshot_query_service/testing/mocks/type.MockMerkleTree.html @@ -1,3 +1,3 @@ MockMerkleTree in hotshot_query_service::testing::mocks - Rust -
pub type MockMerkleTree = UniversalMerkleTree<usize, Sha3Digest, usize, U8, Sha3Node>;

Aliased Type§

struct MockMerkleTree { /* private fields */ }

Trait Implementations§

source§

impl MerklizedState<MockTypes> for MockMerkleTree

§

type Arity = UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>

§

type Key = usize

§

type Entry = usize

§

type T = Sha3Node

§

type Commit = <UniversalMerkleTree<usize, Sha3Digest, usize, UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, Sha3Node> as MerkleTreeScheme>::Commitment

§

type Digest = Sha3Digest

source§

fn state_type() -> &'static str

Retrieves the name of the state being queried.
source§

fn header_state_commitment_field() -> &'static str

Retrieves the field in the header containing the Merkle tree commitment -for the state implementing this trait.
source§

fn tree_height() -> usize

Get the height of the tree
\ No newline at end of file +
pub type MockMerkleTree = UniversalMerkleTree<usize, Sha3Digest, usize, U8, Sha3Node>;

Aliased Type§

struct MockMerkleTree { /* private fields */ }

Trait Implementations§

source§

impl MerklizedState<MockTypes> for MockMerkleTree

§

type Arity = UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>

§

type Key = usize

§

type Entry = usize

§

type T = Sha3Node

§

type Commit = <UniversalMerkleTree<usize, Sha3Digest, usize, UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, Sha3Node> as MerkleTreeScheme>::Commitment

§

type Digest = Sha3Digest

source§

fn state_type() -> &'static str

Retrieves the name of the state being queried.
source§

fn header_state_commitment_field() -> &'static str

Retrieves the field in the header containing the Merkle tree commitment +for the state implementing this trait.
source§

fn tree_height() -> usize

Get the height of the tree
\ No newline at end of file diff --git a/hotshot_query_service/testing/mocks/type.MockStorage.html b/hotshot_query_service/testing/mocks/type.MockStorage.html new file mode 100644 index 000000000..1bb3c99d6 --- /dev/null +++ b/hotshot_query_service/testing/mocks/type.MockStorage.html @@ -0,0 +1,6 @@ +MockStorage in hotshot_query_service::testing::mocks - Rust +
pub type MockStorage = TestStorage<MockTypes>;

Aliased Type§

struct MockStorage {
+    pub should_return_err: bool,
+    /* private fields */
+}

Fields§

§should_return_err: bool

should_return_err is a testing utility to validate negative cases.

+
\ No newline at end of file diff --git a/hotshot_query_service/type.Header.html b/hotshot_query_service/type.Header.html index 0298007d4..e4a12ee1e 100644 --- a/hotshot_query_service/type.Header.html +++ b/hotshot_query_service/type.Header.html @@ -1,2 +1,2 @@ Header in hotshot_query_service - Rust -

Type Alias hotshot_query_service::Header

source ·
pub type Header<Types> = <Types as NodeType>::BlockHeader;
\ No newline at end of file +

Type Alias hotshot_query_service::Header

source ·
pub type Header<Types> = <Types as NodeType>::BlockHeader;
\ No newline at end of file diff --git a/hotshot_query_service/type.Metadata.html b/hotshot_query_service/type.Metadata.html index 3bb5d8f68..08bbe1bf5 100644 --- a/hotshot_query_service/type.Metadata.html +++ b/hotshot_query_service/type.Metadata.html @@ -1,2 +1,2 @@ Metadata in hotshot_query_service - Rust -
pub type Metadata<Types> = <Payload<Types> as BlockPayload>::Metadata;
\ No newline at end of file +
pub type Metadata<Types> = <Payload<Types> as BlockPayload>::Metadata;
\ No newline at end of file diff --git a/hotshot_query_service/type.Payload.html b/hotshot_query_service/type.Payload.html index 8187dd972..6b89066c6 100644 --- a/hotshot_query_service/type.Payload.html +++ b/hotshot_query_service/type.Payload.html @@ -1,2 +1,2 @@ Payload in hotshot_query_service - Rust -
pub type Payload<Types> = <Types as NodeType>::BlockPayload;
\ No newline at end of file +
pub type Payload<Types> = <Types as NodeType>::BlockPayload;
\ No newline at end of file diff --git a/hotshot_query_service/type.QueryResult.html b/hotshot_query_service/type.QueryResult.html index a827b3383..e7a5b5c54 100644 --- a/hotshot_query_service/type.QueryResult.html +++ b/hotshot_query_service/type.QueryResult.html @@ -1,5 +1,5 @@ QueryResult in hotshot_query_service - Rust -
pub type QueryResult<T> = Result<T, QueryError>;

Aliased Type§

enum QueryResult<T> {
+    
pub type QueryResult<T> = Result<T, QueryError>;

Aliased Type§

enum QueryResult<T> {
     Ok(T),
     Err(QueryError),
 }

Variants§

§1.0.0

Ok(T)

Contains the success value

diff --git a/hotshot_query_service/type.SignatureKey.html b/hotshot_query_service/type.SignatureKey.html index aaab93778..e4268ddc2 100644 --- a/hotshot_query_service/type.SignatureKey.html +++ b/hotshot_query_service/type.SignatureKey.html @@ -1,2 +1,2 @@ SignatureKey in hotshot_query_service - Rust -
pub type SignatureKey<Types> = <Types as NodeType>::SignatureKey;
\ No newline at end of file +
pub type SignatureKey<Types> = <Types as NodeType>::SignatureKey;
\ No newline at end of file diff --git a/hotshot_query_service/type.Transaction.html b/hotshot_query_service/type.Transaction.html index a5ce2a7f4..4eb465270 100644 --- a/hotshot_query_service/type.Transaction.html +++ b/hotshot_query_service/type.Transaction.html @@ -1,3 +1,3 @@ Transaction in hotshot_query_service - Rust -
pub type Transaction<Types> = <Payload<Types> as BlockPayload>::Transaction;
Expand description

Item within a Payload.

+
pub type Transaction<Types> = <Payload<Types> as BlockPayload>::Transaction;
Expand description

Item within a Payload.

\ No newline at end of file diff --git a/search-index.js b/search-index.js index f9c6195ca..e0975394f 100644 --- a/search-index.js +++ b/search-index.js @@ -1,5 +1,5 @@ var searchIndex = new Map(JSON.parse('[\ -["hotshot_query_service",{"doc":"The HotShot Query Service is a minimal, generic query …","t":"PPPGPIFPIPFPPFPFIGIKIFPIIIINNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCONNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNQNNNNNNNQQQQQNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNCOCCOONNNNNNNOOHNNNNNCNNOCNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNCNNONNNNNNNOOOOOOOKIGFRFPFGRGPFPFPFPPRFPFRIGFRPPFPFRPKKPPFIIIIRFFKFRNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNNMMMMMMNNNNNNNNNNNNNNNNNNNNNONNONNNNNNNNNNNNNNNNNNNMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNOMNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONOOONNNNNNNNNNNNNNONNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOERFEIFEKKNNNNNNNNNNCNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNNCNNNNNNNMNNCCCNNNNNNNNNNNMNNNHHKFFFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHHHHHHHHIEFFEIENNNNNQENCNEHKEEECMMMMMMMMMMCCCFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNNNNNNGPPPPGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNORKKFKNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFFKFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNQQNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNENNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKFKEENNNNNNNNNNNNNNNNNNNNNNNNNCCMMNNNNNNNNFFKFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFKRFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNRPRPRRGPRKKFPPGRKKNNONNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNMNNNNMNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNMNNNNNNNNNNNNNNMNNNOOOOFFFFGPPPFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOEEPFGPPKFPFPFPFPFFPFGNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNOMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOONMNNNNNNNNNNOONNNNONOMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNOOOOOOOOOOGPFFPKKNNNNONNNNNNNNNNNMNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNMNNNNMNNNNNNNNNONNNNNNNNNNNNNNNNNOOCCHHKIFSRKNNNNMMNNNNNNNNNMNNNNNNNNNNNNNMNNNNNNNNNNNIIIIFIIIFNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHNNONNONNNONONNNONNNNNNNNNOOONNKM","n":["Availability","Custom","Err","Error","Error","Header","Leaf","MerklizedState","Metadata","Missing","MissingSnafu","Node","NotFound","NotFoundSnafu","Ok","Options","Payload","QueryError","QueryResult","Resolvable","SignatureKey","Snafu","Status","Transaction","VidCommitment","VidCommon","VidShare","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_error","as_error","as_error_source","as_error_source","augment_args","augment_args_for_update","availability","availability","backtrace","backtrace","block_header","block_payload","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","catch_all","cause","cause","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","commit","commitment","commitment","create_random_transaction","data_source","default","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","description","description","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","eq","equivalent","equivalent","equivalent","equivalent","fail","fail","fail","fetching","fill_block_payload","fill_block_payload_unchecked","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from_arg_matches","from_arg_matches_mut","from_stored_view","genesis","get_block_header","get_block_payload","get_hash","get_height","get_justify_qc","get_parent_commitment","get_payload_commitment","get_proposer_id","get_view_number","group_id","hash","header","header","header","in_current_span","in_current_span","include_migrations","init","init","init","init","init","init","init","instantiate_availability_tests","instantiate_data_source_tests","instantiate_node_tests","instantiate_persistence_tests","instantiate_status_tests","internal","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_error","into_error","into_error","justify_qc","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","merklized_state","message","metrics","node","node","parent_commitment","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","port","proposer_id","run_standalone_service","serialize","serialize","serialize","source","source","status","status","status","status","testing","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","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_resolve","try_resolve","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_name","type_name","type_name","type_name","type_name","type_name","type_name","types","update_from_arg_matches","update_from_arg_matches_mut","view_number","vzip","vzip","vzip","vzip","vzip","vzip","vzip","message","source","source","source","source","status","message","AvailabilityDataSource","BlockHash","BlockId","BlockQueryData","BlockRange","BlockSummaryQueryData","Custom","CustomSnafu","Error","Error","Fetch","FetchBlock","FetchBlockSnafu","FetchLeaf","FetchLeafSnafu","FetchTransaction","FetchTransactionSnafu","Hash","Hash","InclusionProof","InconsistentLeafError","InvalidTransactionIndex","InvalidTransactionIndexSnafu","Iter","LeafHash","LeafId","LeafQueryData","LeafRange","Number","Number","Options","PayloadHash","PayloadQueryData","PayloadRange","Pending","QueryableHeader","QueryablePayload","Ready","Request","RequestSnafu","Timestamp","TransactionHash","TransactionInclusionProof","TransactionIndex","TransactionIndex","TransactionQueryData","TransactionSummaryQueryData","UpdateAvailabilityData","VidCommonQueryData","VidCommonRange","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","api_path","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_error","as_error","as_error_source","as_error_source","augment_args","augment_args_for_update","backtrace","backtrace","block_hash","block_hash","block_hash","block_hash","borrow","borrow","borrow","borrow","borrow","borrow","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","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","by_hash","by_hash","cause","cause","clone","clone","clone","clone","clone","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","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","common","compare","compare","context","data","default","define_api","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","description","description","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","enumerate","enumerate","enumerate","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","extensions","fail","fail","fail","fail","fail","fetch_timeout","fmt","fmt","fmt","fmt","fmt","fmt","fmt","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","from","from","from","from","from","from","from","from","from_arg_matches","from_arg_matches_mut","genesis","genesis","genesis","genesis","get_block","get_block_range","get_block_with_transaction","get_hash","get_hash","get_leaf","get_leaf_range","get_payload","get_payload_range","get_vid_common","get_vid_common_range","group_id","hash","hash","hash","hash","hash","hash","hash","header","header","header","header","header","header","header","height","height","height","height","height","height","height","in_current_span","in_current_span","index","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","insert_block","insert_leaf","insert_vid","internal","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_error","into_error","into_error","into_error","into_error","into_error","into_future","is_empty","is_empty","is_empty","iter","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","leaf","leaf","len","len","map","message","metadata","new","new","new","nth","nth","nth_transaction","nth_transaction","nth_transaction_with_proof","nth_transaction_with_proof","num_transactions","num_transactions","partial_cmp","partial_cmp","payload","payload_hash","payload_hash","payload_hash","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","proof","proof","qc","qc_leaf","resolve","resource","resource","resource","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","size","size","size","source","source","status","status","subscribe_blocks","subscribe_blocks","subscribe_leaves","subscribe_leaves","subscribe_payloads","subscribe_payloads","subscribe_vid_common","subscribe_vid_common","timestamp","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_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","transaction","transaction","transaction","transaction","transaction_by_hash","transaction_by_hash","transaction_by_hash","transaction_by_hash_with_proof","transaction_by_hash_with_proof","transaction_with_proof","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_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","try_into","try_into","try_into","try_into","try_into","try_into","try_resolve","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","type_id","type_id","type_id","type_id","type_id","type_id","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","update_from_arg_matches","update_from_arg_matches_mut","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_timeout","height","index","message","resource","resource","resource","source","status","AvailabilityProvider","Error","ExtensibleDataSource","FetchingDataSource","FileSystemDataSource","MetricsDataSource","SqlDataSource","UpdateDataSource","VersionedDataSource","__clone_box","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any_mut","as_any_mut","as_mut","as_ref","availability_tests","block_height","block_height","block_height","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","commit","commit","connect","connect","connect","count_transactions","create","create","create","create","create_with_store","default","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","fetching","fmt","fmt","from","from","get_block","get_block_range","get_block_with_transaction","get_header_window","get_leaf","get_leaf_range","get_path","get_payload","get_payload_range","get_vid_common","get_vid_common_range","handle_event","handle_event","handle_event","init","init","inner","inner_mut","insert_block","insert_leaf","insert_merkle_nodes","insert_vid","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","metrics","metrics","new","node_tests","open","open_with_store","payload_size","persistence_tests","pointer_metadata","pointer_metadata","populate_metrics","populate_metrics","reset","reset","reset","revert","revert","skip_version","sql","status_tests","storage","sync_status","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","type_name","type_name","update","vid_share","vzip","vzip","test_range","test_update","AvailabilityProvider","Builder","FetchingDataSource","Pruner","StorageReadGuard","StorageWriteGuard","__clone_box","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","block_height","block_height","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","builder","clone","clone","clone_into","clone_into","commit","connect","count_transactions","create","create_with_store","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","disable_proactive_fetching","drop","drop","drop","drop","drop","fmt","fmt","from","from","from","from","from","from","from","get_block","get_block_range","get_block_with_transaction","get_header_window","get_leaf","get_leaf_range","get_path","get_payload","get_payload_range","get_vid_common","get_vid_common_range","init","init","init","init","init","insert_block","insert_leaf","insert_merkle_nodes","insert_vid","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","metrics","new","open","open_with_store","payload_size","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","populate_metrics","revert","skip_version","storage","storage_mut","sync_status","to_owned","to_owned","transaction","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","type_name","type_name","type_name","type_name","type_name","vid_share","vzip","vzip","vzip","vzip","vzip","with_major_scan_interval","with_minor_scan_interval","with_proactive_range_chunk_size","with_range_chunk_size","with_retry_delay","test_counters","test_sync_status","test_timestamp_window","test_vid_monotonicity","test_vid_recovery","test_vid_shares","test_reset","test_revert","Builder","Config","Error","Migration","Query","SqlDataSource","Transaction","client","connect","connect","create","handle_event","include_migrations","postgres","reset","testing","transaction","TmpDb","test_metrics","AvailabilityStorage","FileSystemStorage","NoStorage","SqlStorage","fs","get_block","get_block_range","get_block_with_transaction","get_header","get_leaf","get_leaf_range","get_payload","get_payload_range","get_vid_common","get_vid_common_range","no_storage","pruning","sql","FileSystemStorage","as_any","as_any_mut","block_height","borrow","borrow_mut","commit","count_transactions","create","create_with_store","deref","deref_mut","deserialize","drop","fmt","from","get_block","get_block_range","get_block_with_transaction","get_header","get_header_window","get_leaf","get_leaf_range","get_payload","get_payload_range","get_vid_common","get_vid_common_range","init","insert_block","insert_leaf","insert_vid","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","layout_raw","open","open_with_store","payload_size","pointer_metadata","revert","skip_version","sync_status","try_from","try_into","type_id","type_name","vid_share","vzip","NoStorage","__clone_box","__clone_box","as_any","as_any_mut","block_height","borrow","borrow_mut","clone","clone_into","commit","count_transactions","default","deref","deref_mut","deserialize","drop","fmt","from","get_block","get_block_range","get_block_with_transaction","get_header","get_header_window","get_leaf","get_leaf_range","get_payload","get_payload_range","get_vid_common","get_vid_common_range","init","insert_block","insert_leaf","insert_vid","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","layout_raw","payload_size","pointer_metadata","revert","sync_status","testing","to_owned","try_from","try_into","type_id","type_name","vid_share","vzip","DataSource","NoStorage","NoStorage","Sql","Sql","Storage","as_any","as_any","as_any_mut","as_any_mut","block_height","block_height","borrow","borrow","borrow_mut","borrow_mut","commit","connect","count_transactions","create","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","from","from","get_block","get_block_range","get_block_with_transaction","get_header_window","get_leaf","get_leaf_range","get_payload","get_payload_range","get_vid_common","get_vid_common_range","handle_event","init","init","insert_block","insert_leaf","insert_vid","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","metrics","payload_size","pointer_metadata","pointer_metadata","populate_metrics","reset","revert","setup","sync_status","try_from","try_from","try_into","try_into","type_id","type_id","type_name","type_name","vid_share","vzip","vzip","fetch_from_port","Error","PruneStorage","PrunedHeightStorage","PrunerCfg","PrunerConfig","__clone_box","__clone_box","as_any","as_any_mut","batch_size","borrow","borrow_mut","clone","clone_into","default","deref","deref_mut","deserialize","drop","fmt","from","get_disk_usage","get_pruning_config","init","interval","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","layout_raw","load_pruned_height","max_usage","minimum_retention","new","pointer_metadata","prune","pruning_threshold","save_pruned_height","set_pruning_config","target_retention","to_owned","try_from","try_into","type_id","type_name","validate","vzip","with_batch_size","with_interval","with_max_usage","with_minimum_retention","with_pruning_threshold","with_target_retention","Config","Error","LTree","Migration","Query","SqlStorage","Transaction","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","accepts","accepts","applied_on","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_ref","as_ref","backtrace","block_height","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_to_sql","builder","chain","checksum","client","client","client","clone","clone","clone","clone_into","clone_into","clone_into","cmp","commit","compare","connect","connect","context","count_transactions","database","default","default","default_migrations","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","downcast","downcast_mut","downcast_ref","drop","drop","drop","drop","drop","drop","drop","eq","equivalent","equivalent","equivalent","equivalent","execute","execute_many","execute_many_with_retries","execute_one","execute_one_with_retries","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from_sql","from_str","get_block","get_block_range","get_block_with_transaction","get_disk_usage","get_header","get_header_window","get_leaf","get_leaf_range","get_path","get_payload","get_payload_range","get_pruning_config","get_vid_common","get_vid_common_range","header","header","host","include_dir","include_migrations","init","init","init","init","init","init","insert_block","insert_leaf","insert_merkle_nodes","insert_vid","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","load_pruned_height","migrations","msg","name","new","no_migrations","partial_cmp","password","payload_size","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","port","postgres","prefix","prune","pruner_cfg","query","query_one","query_one_static","query_opt","query_opt_static","query_static","reset_schema","revert","root_cause","save_pruned_height","schema","serialize","set_pruning_config","sql","sync_status","testing","tls","to_owned","to_owned","to_owned","to_sql","to_sql_checked","to_string","to_string","transaction","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","type_name","type_name","type_name","type_name","type_name","type_name","unapplied","upsert","user","version","vid_share","vzip","vzip","vzip","vzip","vzip","vzip","TestMerkleTreeMigration","TmpDb","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","config","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","drop","fmt","from","from","host","init","init","init","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","pointer_metadata","pointer_metadata","port","try_from","try_from","try_into","try_into","type_id","type_id","type_name","type_name","vzip","vzip","Callback","Fetcher","LocalCallback","Provider","Request","__clone_box","__clone_box","as_any","as_any_mut","borrow","borrow_mut","clone","clone_into","default","deref","deref_mut","deserialize","drop","fmt","from","init","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","layout_raw","pointer_metadata","provider","request","run","run","spawn_fetch","to_owned","try_from","try_into","type_id","type_name","vzip","with_retry_delay","AnyProvider","NoFetching","Provider","QueryServiceProvider","TestProvider","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","block","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","default","default","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","fail","fetch","fetch","fetch","fetch","fetch","fetch","fetch","fetch","fetch","fmt","fmt","fmt","fmt","from","from","from","from","init","init","init","init","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","layout_raw","layout_raw","new","new","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_name","type_name","type_name","type_name","unblock","unfail","vzip","vzip","vzip","vzip","with_block_provider","with_leaf_provider","with_provider","with_vid_common_provider","LeafRequest","PayloadRequest","Request","Response","VidCommonRequest","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","from","from","from","from","get_hash","get_hash","get_hash","hash","hash","hash","init","init","init","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","layout_raw","pointer_metadata","pointer_metadata","pointer_metadata","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","type_name","type_name","type_name","vzip","vzip","vzip","Arity","Commit","Commit","Custom","Digest","Entry","Error","Index","Key","MerklizedState","MerklizedStateDataSource","Options","Query","Request","Snapshot","T","UpdateStateData","UpdateStateStorage","__clone_box","__clone_box","api_path","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_error","as_error_source","augment_args","augment_args_for_update","backtrace","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","cause","clone","clone_into","cmp","compare","default","define_api","deref","deref","deref","deref_mut","deref_mut","deref_mut","description","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","eq","equivalent","equivalent","equivalent","equivalent","extensions","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from_arg_matches","from_arg_matches_mut","get_hash","get_path","group_id","hash","header","header","header_state_commitment_field","in_current_span","init","init","init","insert_merkle_nodes","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","layout_raw","partial_cmp","pointer_metadata","pointer_metadata","pointer_metadata","serialize","source","state_type","status","to_owned","to_string","to_string","tree_height","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","type_name","type_name","type_name","update_from_arg_matches","update_from_arg_matches_mut","update_storage","vzip","vzip","vzip","message","source","source","status","Counter","Gauge","Histogram","Label","MetricsError","NoSuchMetric","NoSuchSubgroup","Prometheus","PrometheusMetrics","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","add","add_point","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_error","as_error_source","backtrace","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cause","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","create_counter","create_gauge","create_histogram","create_label","default","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","description","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","export","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","get","get","get","get_counter","get_gauge","get_histogram","get_label","get_subgroup","header","in_current_span","init","init","init","init","init","init","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","mean","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","sample_count","set","set","source","subgroup","sum","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_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_name","type_name","type_name","type_name","type_name","type_name","update","vzip","vzip","vzip","vzip","vzip","vzip","label","namespace","path","source","BlockHash","BlockId","Custom","CustomSnafu","Error","Hash","Height","NodeDataSource","Options","Query","QuerySnafu","QueryVid","QueryVidSnafu","QueryWindow","QueryWindowSnafu","Request","RequestSnafu","SyncStatus","Time","TimeWindowQueryData","WindowStart","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","api_path","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_error","as_error_source","augment_args","augment_args_for_update","backtrace","block","block_height","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","build","cause","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","cmp","compare","count_transactions","default","default","define_api","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","description","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","end","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","extensions","fail","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_arg_matches","from_arg_matches_mut","fully_synced","get_hash","get_header_window","group_id","hash","header","in_current_span","init","init","init","init","init","init","init","init","init","init","internal","into","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_error","into_error","into_error","into_error","into_error","is_fully_synced","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","message","missing_blocks","missing_leaves","missing_vid_common","missing_vid_shares","next","partial_cmp","payload_size","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","prev","pruned_height","serialize","serialize","serialize","source","start","status","status","sync_status","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_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_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","update_from_arg_matches","update_from_arg_matches_mut","vid_share","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","window","block","end","message","source","source","source","source","start","status","Error","Internal","MempoolQueryData","Options","Request","StatusDataSource","UpdateStatusData","__clone_box","__clone_box","__clone_box","__clone_box","api_path","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_error","as_error_source","augment_args","augment_args_for_update","backtrace","block_height","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","cause","clone","clone","clone_into","clone_into","cmp","compare","consensus_metrics","consensus_metrics","default","default","define_api","deref","deref","deref","deref_mut","deref_mut","deref_mut","description","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","elapsed_time_since_last_decide","elapsed_time_since_last_decide","eq","equivalent","equivalent","equivalent","equivalent","extensions","fmt","fmt","fmt","from","from","from","from","from","from_arg_matches","from_arg_matches_mut","get_hash","group_id","hash","header","in_current_span","init","init","init","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","layout_raw","memory_footprint","mempool_info","mempool_info","metrics","partial_cmp","pointer_metadata","pointer_metadata","pointer_metadata","populate_metrics","serialize","serialize","source","status","success_rate","success_rate","to_owned","to_owned","to_string","transaction_count","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","type_name","type_name","type_name","update_from_arg_matches","update_from_arg_matches_mut","vzip","vzip","vzip","reason","source","consensus","mocks","setup_test","sleep","DataSourceLifeCycle","MockDataSource","MockNetwork","NUM_NODES","Storage","TestableDataSource","as_any","as_any_mut","borrow","borrow_mut","connect","create","data_source","data_source_index","deref","deref_mut","deserialize","drop","drop","from","handle","handle_event","init","init","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","layout_raw","num_nodes","pointer_metadata","proposer","reset","setup","shut_down","spawn","start","storage","submit_transaction","try_from","try_into","type_id","type_name","vzip","MockHeader","MockMembership","MockMerkleTree","MockNetwork","MockNodeImpl","MockPayload","MockQuorumProposal","MockTransaction","MockTypes","__clone_box","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any_mut","as_any_mut","block_header","block_number","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cmp","cmp","compare","compare","default","default","deref","deref","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","get_hash","get_hash","hash","hash","header_state_commitment_field","height","init","init","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","iter","justify_qc","layout_raw","layout_raw","len","mock_transaction","partial_cmp","partial_cmp","payload_commitment","pointer_metadata","pointer_metadata","proposer_id","serialize","serialize","state_type","timeout_certificate","timestamp","timestamp","to_owned","to_owned","transaction_with_proof","transactions","tree_height","try_from","try_from","try_into","try_into","type_id","type_id","type_name","type_name","upgrade_certificate","view_number","view_sync_certificate","vzip","vzip","HeightIndexed","height"],"q":[[0,"hotshot_query_service"],[338,"hotshot_query_service::Error"],[344,"hotshot_query_service::QueryError"],[345,"hotshot_query_service::availability"],[1191,"hotshot_query_service::availability::Error"],[1199,"hotshot_query_service::data_source"],[1329,"hotshot_query_service::data_source::availability_tests"],[1331,"hotshot_query_service::data_source::fetching"],[1517,"hotshot_query_service::data_source::node_tests"],[1523,"hotshot_query_service::data_source::persistence_tests"],[1525,"hotshot_query_service::data_source::sql"],[1542,"hotshot_query_service::data_source::sql::testing"],[1543,"hotshot_query_service::data_source::status_tests"],[1544,"hotshot_query_service::data_source::storage"],[1562,"hotshot_query_service::data_source::storage::fs"],[1614,"hotshot_query_service::data_source::storage::no_storage"],[1668,"hotshot_query_service::data_source::storage::no_storage::testing"],[1750,"hotshot_query_service::data_source::storage::no_storage::testing::Storage"],[1751,"hotshot_query_service::data_source::storage::pruning"],[1807,"hotshot_query_service::data_source::storage::sql"],[2093,"hotshot_query_service::data_source::storage::sql::testing"],[2149,"hotshot_query_service::fetching"],[2191,"hotshot_query_service::fetching::provider"],[2337,"hotshot_query_service::fetching::request"],[2454,"hotshot_query_service::merklized_state"],[2597,"hotshot_query_service::merklized_state::Error"],[2601,"hotshot_query_service::metrics"],[2819,"hotshot_query_service::metrics::MetricsError"],[2823,"hotshot_query_service::node"],[3216,"hotshot_query_service::node::Error"],[3225,"hotshot_query_service::status"],[3368,"hotshot_query_service::status::Error"],[3370,"hotshot_query_service::testing"],[3374,"hotshot_query_service::testing::consensus"],[3421,"hotshot_query_service::testing::mocks"],[3536,"hotshot_query_service::types"],[3538,"dyn_clone::sealed"],[3539,"dyn_clone::sealed"],[3540,"core::error"],[3541,"clap_builder::builder::command"],[3542,"snafu::backtrace_shim"],[3543,"core::option"],[3544,"alloc::string"],[3545,"core::convert"],[3546,"tide_disco::status"],[3547,"core::clone"],[3548,"hotshot_types::traits::node_implementation"],[3549,"commit"],[3550,"commit"],[3551,"rkyv::with"],[3552,"core::result"],[3553,"serde::de"],[3554,"hotshot_types::data"],[3555,"core::fmt"],[3556,"core::fmt"],[3557,"clap_builder"],[3558,"hotshot_types::traits::storage"],[3559,"core::hash"],[3560,"core::marker"],[3561,"core::hash"],[3562,"hotshot_types::simple_certificate"],[3563,"hotshot_types::simple_certificate"],[3564,"core::hash"],[3565,"core::fmt"],[3566,"alloc::sync"],[3567,"alloc::rc"],[3568,"core::alloc::layout"],[3569,"core::alloc::layout"],[3570,"hotshot_types::traits::node_implementation"],[3571,"serde::ser"],[3572,"core::cmp"],[3573,"core::cmp"],[3574,"snafu"],[3575,"tide_disco::api"],[3576,"tide_disco::request"],[3577,"core::future::future"],[3578,"core::pin"],[3579,"futures_core::stream"],[3580,"core::marker"],[3581,"core::ops::function"],[3582,"hotshot_types::simple_certificate"],[3583,"std::path"],[3584,"anyhow"],[3585,"atomic_store::atomic_store"],[3586,"hotshot_types::event"],[3587,"core::default"],[3588,"jf_primitives::merkle_tree::internal"],[3589,"alloc::vec"],[3590,"hotshot_types::traits::metrics"],[3591,"async_lock::rwlock"],[3592,"async_lock::rwlock"],[3593,"postgres_types"],[3594,"time::offset_date_time"],[3595,"std::backtrace"],[3596,"postgres_types"],[3597,"core::iter::traits::collect"],[3598,"tokio_postgres::config"],[3599,"core::iter::traits::double_ended"],[3600,"refinery_core::runner"],[3601,"bytes::bytes_mut"],[3602,"postgres_types"],[3603,"postgres_types"],[3604,"hotshot_types::traits::metrics"],[3605,"serde::de"]],"d":["","","Contains the error value","","There was an error while trying to fetch the requested …","","This is the consensus-internal analogous concept to a …","","","The requested resource exists but is not currently …","SNAFU context selector for the QueryError::Missing variant","","The requested resource does not exist or is not known to …","SNAFU context selector for the QueryError::NotFound variant","Contains the success value","","","","","A reference to a T which can be resolved into a whole T.","","SNAFU context selector for the QueryError::Error variant","","Item within a Payload.","VID commitment type","VID common type","VID share type","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Queries for HotShot chain state.","","","","Block header.","Optional block payload.","","","","","","","","","","","","","","","Consume the selector and return the associated error","Consume the selector and return the associated error","Consume the selector and return the associated error","","","","","","","","","","","","","","","","","Get a commitment to the underlying object.","","","Persistent storage and sources of data consumed by APIs.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Consume the selector and return a Result with the …","Consume the selector and return a Result with the …","Consume the selector and return a Result with the …","Fetching missing data from remote providers.","Fill this leaf with the block payload.","Fill this leaf with the block payload, without checking …","","","","","","","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Create a leaf from information stored about a view.","Create a new leaf from its components.","The block header contained in this leaf.","Optional block payload.","","Height of this leaf in the chain.","The QC linking this leaf to its parent in the chain.","Commitment to this leaf’s parent.","A commitment to the block payload contained in this leaf.","Identity of the network participant who proposed this leaf.","Time when this leaf was created.","","","","","","","","Embed migrations from the given directory into the current …","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Per spec, justification","","","","","","","","Api for querying merklized state","","","A node’s view of a HotShot chain","","The hash of the parent Leaf So we can ask if it extends","","","","","","","","","the proposer id of the leaf","Run an instance of the HotShot Query service with no …","","","","","","Queries for node-specific state and uncommitted data.","","","","","","","","","","","","","","","","","","","","","","","","","","","","Get the underlying object if it is available without …","","","","","","","","","","","","","","","","Common functionality provided by types used in this crate.","","","CurView from leader when proposing leaf","","","","","","","","","","","","","","","An interface for querying a HotShot blockchain.","A block hash is the hash of the block header.","","","","","","SNAFU context selector for the Error::Custom variant","","","An in-progress request to fetch some data.","","SNAFU context selector for the Error::FetchBlock variant","","SNAFU context selector for the Error::FetchLeaf variant","","SNAFU context selector for the Error::FetchTransaction …","","","A proof that a certain transaction exists in the block.","","","SNAFU context selector for the …","Enumerate the transactions in this block.","","","","","","","","","","","","","A block payload whose contents (e.g. individual …","","","SNAFU context selector for the Error::Request variant","","","","","An index which can be used to efficiently retrieve a …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Consume the selector and return the associated error","Consume the selector and return the associated error","Consume the selector and return the associated error","Consume the selector and return the associated error","Consume the selector and return the associated error","Get the index of the transaction with a given hash, if it …","Get the index of the transaction with a given hash, if it …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Convert this Fetch to a Result with the provided error …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Enumerate the transactions in the block with their indices.","Enumerate the transactions in the block with their indices.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Additional API specification files to merge with …","Consume the selector and return a Result with the …","Consume the selector and return a Result with the …","Consume the selector and return a Result with the …","Consume the selector and return a Result with the …","Consume the selector and return a Result with the …","Timeout for failing requests due to missing data.","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","","","","","Returns the block containing a transaction with the given …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Whether this block is empty of transactions.","Whether this block is empty of transactions.","","List the transaction indices in the block.","","","","","","","","","","","","","","","","","","","","","","The number of transactions in the block.","","Transform the result of this fetch.","","","Collect information about a Leaf.","","","Get the index of the nth transaction.","Get the index of the nth transaction.","Get the nth transaction.","Get the nth transaction.","Get the nth transaction, along with an inclusion proof.","Get the nth transaction, along with an inclusion proof.","","","","","","","","","","","","","","","","","","","","","","","","","","","","Get an inclusion proof for a transaction with a given …","Get an inclusion proof for a transaction with a given …","","","Wait for the data to become available, if it is not …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Get a transaction by its block-specific index.","Get a transaction by its block-specific index.","","","Get the transaction with a given hash, if it is in the …","Get the transaction with a given hash, if it is in the …","","Get the transaction with a given hash, if it is in the …","Get the transaction with a given hash, if it is in the …","Get a transaction by its block-specific index, along with …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Get the requested data if it is available immediately.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Convert this Fetch to a Result with the provided error …","Wait for the requested data to become available, but only …","","","","","","","","","","","Wrapper to add extensibility to an existing data source.","","A data source for the APIs provided in this crate, backed …","A minimal data source for the status API provided in this …","","An extension trait for types which implement the update …","A data source with an atomic transaction-based …","","","","","","","","","","","Generic tests we can instantiate for all the availability …","","","","","","","","","","","","Atomically commit to all outstanding modifications to the …","","","","","","Create a new FileSystemDataSource with storage at path.","","","","Create a new FileSystemDataSource using a persistent …","","","","","","","","","","Asynchronous retrieval of missing data.","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","Access the underlying data source.","Mutably access the underlying data source.","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","Generic tests we can instantiate for all the node data …","Open an existing FileSystemDataSource from storage at path.","Open an existing FileSystemDataSource using a persistent …","","Generic tests we can instantiate for any data source with …","","","","","","","","Erase all oustanding modifications to the data.","","Advance the version of the persistent store without …","","Generic tests we can instantiate for all the status data …","Persistent storage for data sources.","","","","","","","","","","","","Update query state based on a new consensus event.","","","","","","A provider which can be used as a fetcher by the …","Builder for FetchingDataSource with configuration.","The most basic kind of data source.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Build a FetchingDataSource with these options.","Build a FetchingDataSource with the given storage and …","","","","","","Connect to a remote database.","","Create a new FileSystemDataSource with storage at path.","Create a new FileSystemDataSource using a persistent …","","","","","","","","","","","","","","","","","","","Run without proactive fetching.","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Construct a new builder with the given storage and fetcher …","Open an existing FileSystemDataSource from storage at path.","Open an existing FileSystemDataSource using a persistent …","","","","","","","","","Advance the version of the persistent store without …","Obtain direct, read-only access to the underlying local …","Obtain direct, mutable access the underlying local storage.","","","","Access the transaction which is accumulating all …","","","","","","","","","","","","","","","","","","","","","","","","","","","Set the interval (denominated in minor scans) between …","Set the time interval between minor proactive fetching …","Set the number of items to process at a time when scanning …","Set the number of items to process at a time when loading …","Set the maximum delay between retries of fetches.","","","","","","","","","","","The Error type, a wrapper around a dynamic error type.","Represents a schema migration to be run on the database, …","","A data source for the APIs provided in this crate, backed …","","","","Connect to a remote database.","","","Embed migrations from the given directory into the current …","","","","Access the transaction which is accumulating all …","","","Persistent storage for a HotShot blockchain.","","","","","","","","","","","","","","","","","","Storage for the APIs provided in this crate, backed by a …","","","","","","","","Create a new FileSystemStorage with storage at path.","Create a new FileSystemStorage using a persistent storage …","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","Calls U::from(self).","","","","","","","","Open an existing FileSystemStorage from storage at path.","Open an existing FileSystemStorage using a persistent …","","","","Advance the version of the persistent store without …","","","","","","","","Mock storage implementation which doesn’t actually store …","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","Either Postgres or no storage.","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Returns the block containing a transaction with the given …","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Number of blocks to remove in a single pruning operation.","","","","","","","","","","","Returns the argument unchanged.","","","","Pruning interval","Calls U::from(self).","","","","","","","","","Maximum disk usage (in basis points).","Minimum data retention period","","","","Disk space threshold (in bytes).","","","Target data retention period","","","","","","","","","","","","","","Postgres client config.","The Error type, a wrapper around a dynamic error type.","LTree SQL data type","Represents a schema migration to be run on the database, …","","Storage for the APIs provided in this crate, backed by a …","An atomic SQL transaction.","","","","","","","","","Get the timestamp from when the Migration was applied. None…","","","","","","","","","","","","","","","Get the backtrace for this Error.","","","","","","","","","","","","","","","Connect to the database, setting options on the underlying …","An iterator of the chain of source errors contained by …","Get the Migration checksum. Checksum is formed from the …","","","","","","","","","","","","","Connect to the database with this config.","Connect to a remote database.","Wrap the error value with additional context.","","Set the name of the database to connect to.","","","The migrations requied to build the default schema for …","","","","","","","","","","","","","","","","","","","","","","Attempt to downcast the error object to a concrete type.","Downcast this error object by mutable reference.","Downcast this error object by reference.","","","","","","","","","","","","","Execute a statement against the underlying database.","Execute a statement that is expected to modify at least …","Execute a statement that is expected to modify at least …","Execute a statement that is expected to modify exactly one …","Execute a statement that is expected to modify exactly one …","","","","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","Retreives a Merkle path from the database","","","","","","","","Set the hostname of the database server.","Embed the contents of a directory in your crate.","Embed migrations from the given directory into the current …","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns true if E is the type held by this error object.","","","","","","","","Add custom migrations to run when connecting to the …","Create a new error object from a printable error message.","Get the Migration Name","Create a new error object from any error type.","Skip all migrations when connecting to the database.","","Set a password for connecting to the database.","","","","","","","","Set the port on which to connect to the database.","","Get the Prefix","","","","Query the underlying SQL database, returning exactly one …","Query the underlying SQL database with no parameters, …","Query the underlying SQL database, returning zero or one …","Query the underlying SQL database with no parameters, …","Query the underlying SQL database with no parameters.","Reset the schema on connection.","","The lowest level cause of this error — this error’s …","","Set the name of the schema to use for queries.","","","","","","Use TLS for an encrypted connection to the database.","","","","","","","","Access the transaction which is accumulating all …","","","","","","","","","","","","","","","","","","","","","","","","","Create an unapplied migration, name and version are parsed …","","Set the DB user to connect as.","Get the Migration version","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","A callback to process the result of a request.","Management of concurrent requests to fetch resources.","A callback to process the result of a request.","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","Asynchronous fetching from external data availability …","Requests for fetching resources.","","","Fetch a resource, if it is not already being fetched.","","","","","","","","Adaptor combining multiple data availability providers.","Trivial Provider where fetching always fails.","A provider which is able to satisfy requests for data of …","Data availability provider backed by another instance of …","Adaptor to add test-only functionality to an existing …","","","","","","","","","","","","","","","","","Delay fetch requests until unblock.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Cause subsequent requests to fail.","Fetch a resource.","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Allow blocked fetch requests to proceed.","Stop requests from failing as a result of a previous call …","","","","","Add a sub-provider which fetches blocks.","Add a sub-provider which fetches leaves.","Add a sub-provider which fetches both blocks and leaves.","Add a sub-provider which fetches VID common data.","A request for a leaf with a given height.","A request for a payload with a given commitment.","A request for a resource.","The type of resource that will be returned as a successful …","A request for VID common data.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","This trait should be implemented by the MerkleTree that …","This trait defines methods that a data source should …","","","","","","This trait defines methods for updating the storage with …","This trait should be implemented by types that represent …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Additional API specification files to merge with …","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","","","","","","Retrieves the field in the header containing the Merkle …","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","Retrieves the name of the state being queried.","","","","","Get the height of the tree","","","","","","","","","","","","","","","","","","","","","","","A Counter metric.","A Gauge metric.","A Histogram metric.","A Label metric.","","","","","A Prometheus-based implementation of a Metrics registry.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Get a counter in this sub-group by name.","Get a gauge in this sub-group by name.","Get a histogram in this sub-group by name.","Get a label in this sub-group by name.","Get a (possibly nested) subgroup of this group by its path.","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","SNAFU context selector for the Error::Custom variant","","","","","","","SNAFU context selector for the Error::Query variant","","SNAFU context selector for the Error::QueryVid variant","","SNAFU context selector for the Error::QueryWindow variant","","SNAFU context selector for the Error::Request variant","","","Response to a /:resource/window query.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Consume the selector and return the associated error","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Additional API specification files to merge with …","Consume the selector and return a Result with the …","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","The block height of the block that starts the window.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Additional API specification files to merge with …","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Backing storage for the data source.","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","Calls U::from(self).","","","","","","","","","","","","Setup runs after setting up the network but before …","","","","","","","","","","","","","","","","","","","","","","","","","","","","The block header to append","Block number.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","Per spec, justification","","","","","","","VID commitment to the payload.","","","the propser id","","","","Possible timeout certificate. Only present if the …","","Timestamp when this header was created.","","","","List of transactions.","","","","","","","","","","Possible upgrade certificate, which the leader may …","CurView from leader when proposing leaf","Possible view sync certificate. Only present if the …","","","Types which have a notion of “height” within a chain.",""],"i":[7,7,169,0,10,0,0,7,0,10,0,7,10,0,169,0,0,0,0,0,0,0,7,0,0,0,0,17,17,7,7,11,11,12,12,13,13,10,10,17,7,11,12,13,10,25,17,7,11,12,13,10,25,7,10,7,10,25,25,0,25,7,10,17,17,17,7,11,12,13,10,25,17,7,11,12,13,10,25,11,12,13,7,7,10,17,7,11,12,13,10,17,7,11,12,13,10,17,21,17,17,0,25,17,7,11,12,13,10,25,17,7,11,12,13,10,25,7,10,17,17,7,7,11,12,13,10,10,25,17,7,11,12,13,10,25,17,17,17,17,17,11,12,13,0,17,17,17,17,7,7,11,12,13,10,10,17,7,7,7,7,7,7,11,12,13,10,25,25,25,17,17,17,17,17,17,17,17,17,17,17,25,17,17,7,10,7,10,0,17,7,11,12,13,10,25,0,0,0,0,0,7,17,7,11,12,13,10,25,17,17,7,7,11,11,12,12,13,13,10,10,25,25,17,17,7,7,11,11,12,12,13,13,10,10,25,25,17,17,7,7,11,11,12,12,13,13,10,10,25,25,11,12,13,17,17,7,11,12,13,10,25,0,13,0,0,25,17,17,7,11,12,13,10,25,25,17,0,17,7,10,7,10,0,7,10,25,0,17,7,11,12,13,10,17,7,10,17,7,11,12,13,10,25,17,7,11,12,13,10,25,21,17,17,7,11,12,13,10,25,17,7,11,12,13,10,25,0,25,25,17,17,7,11,12,13,10,25,251,252,253,254,255,251,256,0,0,0,0,62,0,40,0,0,127,0,40,0,40,0,40,0,92,93,85,0,40,0,85,0,0,0,62,92,93,0,93,0,62,100,0,0,100,40,0,0,0,0,0,85,0,0,0,0,62,92,92,93,93,72,72,71,71,94,94,74,74,75,75,76,76,95,95,96,96,97,97,77,77,78,78,79,79,80,80,81,81,40,40,106,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,40,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,40,71,40,71,40,106,106,71,40,72,74,75,76,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,40,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,40,77,78,79,80,81,85,85,71,40,92,93,72,71,94,74,75,76,95,96,97,77,78,79,80,81,40,92,93,72,71,94,74,75,76,95,96,97,77,78,79,80,81,40,92,93,75,92,93,100,74,106,0,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,40,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,40,71,40,100,92,93,72,72,71,94,94,74,74,75,75,76,76,95,95,96,96,106,97,77,78,79,80,81,40,40,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,40,85,85,94,92,93,72,94,74,75,76,95,96,92,92,92,92,93,93,93,93,72,72,72,72,94,94,94,94,74,74,74,74,75,75,75,75,76,76,76,76,95,95,95,95,96,96,96,96,106,77,78,79,80,81,106,92,92,93,93,72,71,71,94,74,75,76,95,96,97,77,78,79,80,81,40,40,100,92,92,92,93,93,93,72,71,94,74,74,75,76,95,95,96,106,97,77,78,79,80,81,40,40,40,106,106,72,94,74,75,62,62,62,92,93,62,62,62,62,62,62,106,92,93,72,94,74,76,95,92,93,72,71,94,95,40,72,94,74,75,76,95,80,71,40,80,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,40,127,127,127,40,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,40,100,100,92,92,93,93,72,72,71,71,94,94,74,74,75,75,76,76,95,95,96,96,106,106,97,97,77,77,78,78,79,79,80,80,81,81,40,40,92,92,93,93,72,72,71,71,94,94,74,74,75,75,76,76,95,95,96,96,106,106,97,97,77,77,78,78,79,79,80,80,81,81,40,40,100,100,92,92,93,93,72,72,71,71,94,94,74,74,75,75,76,76,95,95,96,96,106,106,97,97,77,77,78,78,79,79,80,80,81,81,40,40,97,77,78,79,80,81,100,85,85,94,85,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,40,72,71,85,94,100,81,94,72,94,75,85,85,85,85,85,85,94,95,92,93,94,72,94,75,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,40,85,85,72,71,100,77,78,79,72,94,74,75,76,95,96,40,94,74,95,71,40,40,81,62,62,62,62,62,62,62,62,133,92,93,72,71,94,74,75,76,95,96,97,77,78,79,80,81,40,92,93,71,40,85,85,94,76,85,85,94,85,85,85,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,40,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,40,100,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,40,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,40,106,106,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,40,100,100,257,257,258,259,260,261,262,258,0,66,0,0,0,0,0,0,0,135,135,136,136,135,136,135,136,135,135,0,135,135,136,135,136,135,136,135,136,135,136,66,135,138,135,136,135,138,138,135,136,138,136,135,136,135,136,135,136,135,136,0,135,136,135,136,135,135,135,135,135,135,135,135,135,135,135,138,135,136,135,136,135,135,135,135,135,135,135,136,135,135,136,136,135,135,136,136,135,135,136,136,135,136,135,136,135,0,138,138,135,0,135,136,135,136,138,135,136,66,135,138,0,0,0,135,135,136,135,136,135,136,135,136,135,136,65,135,135,136,0,0,0,0,0,0,0,0,155,155,158,158,156,155,158,163,164,156,155,158,163,164,155,155,156,155,158,163,164,156,155,158,163,164,156,155,155,158,155,158,155,155,155,155,155,156,155,158,163,163,164,164,156,155,158,163,164,164,156,155,158,163,164,156,156,155,158,163,164,155,158,156,155,158,163,163,164,164,155,155,155,155,155,155,155,155,155,155,155,156,155,158,163,164,155,155,155,155,156,155,158,163,164,156,156,155,155,158,158,163,163,164,164,156,156,155,155,158,158,163,163,164,164,156,156,155,155,158,158,163,163,164,164,156,155,158,163,164,155,156,155,155,155,156,155,158,163,164,155,155,155,155,155,155,155,158,155,156,155,158,163,164,156,155,158,163,164,156,155,158,163,164,156,155,158,163,164,155,156,155,158,163,164,156,156,156,156,156,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,170,170,170,170,0,0,170,0,170,0,0,0,0,0,0,0,157,157,157,157,157,157,157,157,157,157,0,0,0,0,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,0,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,0,172,172,172,172,172,172,172,0,263,173,263,173,0,263,173,263,173,173,173,263,173,263,173,173,173,173,173,263,173,263,173,263,173,263,173,263,173,173,173,173,173,173,173,173,173,173,173,173,263,173,173,173,173,263,173,263,263,173,173,263,263,173,173,263,263,173,173,263,173,173,173,263,173,173,173,173,173,173,263,173,263,173,263,173,263,173,173,263,173,264,178,0,0,0,0,175,175,175,175,175,175,175,175,175,175,175,175,175,175,175,175,176,177,175,175,175,175,175,175,175,175,175,175,178,175,175,175,175,176,175,178,177,175,175,175,175,175,175,175,175,175,175,175,175,175,175,0,0,0,0,0,0,0,181,181,159,159,187,187,187,187,181,161,181,168,159,167,187,161,181,168,159,167,187,161,161,161,167,161,181,168,159,167,187,161,181,168,159,167,187,187,159,161,181,186,168,167,181,159,187,181,159,187,181,167,181,159,167,161,167,159,159,187,0,161,161,181,168,159,167,187,161,161,181,168,159,167,187,161,181,168,159,167,187,187,161,161,161,161,161,181,168,159,167,187,181,181,181,181,181,168,168,168,168,168,161,161,181,181,159,167,187,161,161,161,181,168,159,159,167,187,187,187,159,167,167,167,167,167,167,167,167,167,167,167,167,167,167,161,181,159,0,0,161,181,168,159,167,187,167,167,167,167,161,181,168,159,167,187,161,161,181,181,168,168,159,159,167,167,187,187,161,161,181,181,168,168,159,159,167,167,187,187,161,161,181,181,168,168,159,159,167,167,187,187,161,161,181,168,159,167,187,167,159,161,181,161,159,181,159,167,161,181,168,159,167,187,159,0,181,167,159,186,186,186,186,186,186,159,167,161,167,159,187,167,181,167,0,159,181,159,187,187,187,161,181,167,161,181,168,159,167,187,161,181,168,159,167,187,161,181,168,159,167,187,161,181,168,159,167,187,181,168,159,181,167,161,181,168,159,167,187,0,0,265,202,265,202,265,202,265,202,202,265,202,265,202,265,202,265,202,202,202,265,202,202,265,202,202,265,202,265,265,202,202,265,265,202,202,265,265,202,202,265,202,265,202,202,265,202,265,202,265,202,265,202,265,202,0,0,0,0,0,203,203,203,203,203,203,203,203,203,203,203,203,203,203,203,203,203,203,203,203,203,203,203,203,203,0,0,204,205,203,203,203,203,203,203,203,203,0,0,0,0,0,209,209,210,210,208,208,211,211,209,210,208,211,209,210,208,211,208,209,210,208,211,209,210,208,211,209,210,208,211,209,210,208,211,209,211,209,210,208,211,209,210,208,211,209,210,208,211,209,210,208,211,208,207,209,209,209,210,210,210,208,211,209,210,208,211,209,210,208,211,209,210,208,211,209,210,208,211,209,209,210,210,208,208,211,211,209,209,210,210,208,208,211,211,209,209,210,210,208,208,211,211,209,210,208,211,210,208,209,210,208,211,209,210,208,211,209,210,208,211,209,210,208,211,209,210,208,211,209,210,208,211,208,208,209,210,208,211,209,209,209,209,0,0,0,206,0,213,213,212,212,214,214,213,212,214,213,212,214,213,212,214,213,212,214,213,212,214,213,212,214,213,212,214,213,212,214,213,212,214,213,212,214,213,212,214,213,213,213,213,212,212,212,212,214,214,214,214,213,212,214,213,212,214,214,213,212,214,213,212,214,213,212,214,213,212,214,213,213,212,212,214,214,213,213,212,212,214,214,213,213,212,212,214,214,213,212,214,213,212,214,213,212,214,213,212,214,213,212,214,213,212,214,213,212,214,213,212,214,144,143,144,37,144,144,0,143,144,0,0,0,37,37,0,144,0,0,37,37,216,143,216,37,143,216,37,37,37,216,216,37,143,216,37,143,216,37,37,37,37,143,143,216,0,143,216,37,143,216,37,37,143,216,37,37,143,216,37,143,143,143,143,143,216,143,143,37,37,143,216,37,37,37,37,216,216,143,145,216,143,143,37,144,37,143,216,37,152,143,216,37,143,143,216,216,37,37,143,143,216,216,37,37,143,143,216,216,37,37,143,216,37,143,143,216,37,37,37,144,37,37,143,37,144,143,216,37,143,216,37,143,216,37,143,216,37,216,216,217,143,216,37,266,267,268,266,0,0,0,0,0,221,221,221,0,153,153,218,218,222,222,219,219,223,223,218,219,221,153,218,222,219,223,221,153,218,222,219,223,221,221,221,221,153,218,222,219,223,221,153,218,222,219,223,221,153,218,222,219,223,153,218,222,219,223,153,153,153,153,153,221,153,218,222,219,223,221,153,218,222,219,223,221,221,153,218,222,219,223,221,153,218,222,219,223,153,221,221,153,218,222,219,223,221,221,153,218,222,219,223,218,222,223,153,153,153,153,153,221,221,221,153,218,222,219,223,221,153,218,222,219,223,221,221,153,153,218,218,222,222,219,219,223,223,221,221,153,153,218,218,222,222,219,219,223,223,221,221,153,153,218,218,222,222,219,219,223,223,221,153,218,222,219,223,219,221,153,218,222,219,223,219,222,223,221,153,219,153,218,222,219,223,221,221,153,218,222,219,223,221,153,218,222,219,223,221,153,218,222,219,223,221,153,218,222,219,223,222,221,153,218,222,219,223,269,269,270,271,0,0,38,0,0,142,142,0,0,38,0,38,0,38,0,38,0,0,142,0,0,142,142,231,231,232,232,233,233,234,234,235,235,236,236,230,230,38,38,237,142,231,232,237,233,234,235,236,230,38,142,231,232,237,233,234,235,236,230,38,38,38,237,237,38,235,63,142,231,232,237,233,234,235,236,230,38,142,231,232,237,233,234,235,236,230,38,230,38,142,231,232,233,234,235,236,230,38,142,231,232,233,234,235,236,230,38,231,231,63,232,237,0,142,231,232,237,233,234,235,236,230,38,142,231,232,237,233,234,235,236,230,38,38,142,231,231,232,232,237,233,234,235,236,230,38,38,142,231,232,237,233,234,235,236,230,38,236,231,232,231,231,231,231,232,232,232,232,237,230,142,231,232,233,234,235,236,230,38,38,142,142,231,232,232,237,233,234,235,236,230,38,38,38,38,237,237,231,231,63,237,231,38,38,142,231,232,237,233,234,235,236,230,38,38,142,231,232,237,233,234,235,236,230,38,142,142,231,231,232,232,237,237,233,233,234,234,235,235,236,236,230,230,38,38,142,142,231,231,232,232,237,237,233,233,234,234,235,235,236,236,230,230,38,38,142,142,231,231,232,232,237,237,233,233,234,234,235,235,236,236,230,230,38,38,233,234,235,236,230,231,142,231,232,237,233,234,235,236,230,38,230,231,231,231,231,232,231,63,142,231,232,237,233,234,235,236,230,38,232,231,231,232,38,38,236,38,230,63,142,231,232,233,234,235,236,230,38,38,142,231,232,237,233,234,235,236,230,38,142,231,232,237,233,234,235,236,230,38,142,231,232,237,233,234,235,236,230,38,142,231,232,237,233,234,235,236,230,38,237,237,63,142,231,232,237,233,234,235,236,230,38,232,272,273,274,275,276,272,273,273,274,0,39,0,0,39,0,0,240,240,39,39,241,240,241,39,240,241,39,39,39,241,241,39,64,240,241,39,240,241,39,39,240,39,240,39,240,240,64,64,240,241,0,240,241,39,240,241,39,39,240,240,241,39,39,240,241,39,64,64,240,240,240,240,240,241,240,39,39,240,241,39,39,39,241,241,240,241,240,39,39,240,241,39,240,241,39,240,240,241,241,39,39,240,240,241,241,39,39,240,240,241,241,39,39,240,241,39,240,64,64,64,240,240,241,39,242,240,39,39,39,64,64,240,39,39,240,240,241,39,240,241,39,240,241,39,240,241,39,241,241,240,241,39,277,278,0,0,0,0,0,0,0,0,244,0,174,174,174,174,244,244,174,174,174,174,174,174,174,174,174,244,174,174,174,174,174,174,174,174,174,174,174,174,174,244,244,174,174,174,174,174,174,174,174,174,174,0,0,0,0,0,0,0,0,0,146,146,245,245,146,245,146,245,279,249,146,245,146,245,146,245,146,245,146,245,146,245,146,245,146,245,146,245,146,146,245,245,146,245,146,245,146,146,146,146,245,245,245,245,146,245,146,245,146,245,146,245,280,249,146,245,146,245,146,146,245,245,146,146,245,245,146,146,245,245,250,279,146,245,250,0,146,245,249,146,245,279,146,245,280,279,249,249,146,245,250,250,280,146,245,146,245,146,245,146,245,279,279,279,146,245,0,239],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,5,[]],[-1,5,[]],[-1,5,[]],[-1,5,[]],[6,6],[6,6],0,0,[7,[[9,[8]]]],[10,[[9,[8]]]],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[11,10],[12,10],[[[13,[-1]]],10,[[15,[14]]]],[[16,14],7],[7,[[9,[5]]]],[10,[[9,[5]]]],[[[17,[-1]]],[[17,[-1]]],[18,19]],[7,7],[11,11],[12,12],[[[13,[-1]]],[[13,[-1]]],18],[10,10],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[[17,[-1]]],[[20,[[17,[-1]]]]],19],[21,[[20,[-1]]],22],[-1,[[20,[-2]]],[],[]],[[[17,[-1]],23,24],[],19],0,[[],25],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[7,27],[10,27],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[-1,[[29,[[17,[-2]]]]],30,19],[-1,[[29,[7]]],30],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[-1,[[29,[10]]],30],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[[[17,[-1]],[17,[-1]]],31,19],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[11,[[29,[-1,10]]],[]],[12,[[29,[-1,10]]],[]],[[[13,[-1]]],[[29,[-2,10]]],[[15,[14]]],[]],0,[[[17,[-1]],26],[[29,[2,32]]],19],[[[17,[-1]]],2,19],[[[17,[-1]],33],[[29,[2,34]]],19],[[[17,[-1]],33],[[29,[2,34]]],[35,19]],[[7,33],36],[[7,33],36],[[11,33],36],[[12,33],36],[[[13,[-1]],33],36,35],[[10,33],36],[[10,33],36],[-1,-1,[]],[37,7],[38,7],[[[2,[14,16]]],7],[-1,-1,[]],[39,7],[40,7],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[41,[[29,[25,42]]]],[41,[[29,[25,42]]]],[[[43,[-1]]],[[17,[-1]]],19],[[],[[17,[-1]]],19],[[[17,[-1]]],[],19],[[[17,[-1]]],9,19],[[-1,-2],24,[44,45],46],[[[17,[-1]]],24,19],[[[17,[-1]]],[[49,[-1,[47,[-1]],48]]],19],[[[17,[-1]]],[[20,[[17,[-1]]]]],19],[[[17,[-1]]],[],19],[[[17,[-1]]],[],19],[[[17,[-1]]],[],19],[[],[[9,[50]]]],[[[17,[-1]],-2],2,19,51],[[-1,-2],[[52,[-2,-3]]],[],[53,54,55],[]],[[-1,-2],[[52,[-2,-3]]],[],[53,54,55],[]],[[-1,-2],[[52,[-2,-3]]],[],[53,54,55],[]],[-1,[],[]],[-1,[],[]],0,[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],0,0,0,0,0,[-1,7,53],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[11,-1],10,[]],[[12,-1],10,[]],[[[13,[-1]],-2],10,[[15,[14]]],[]],0,[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[25,-2,[61,[-1,-3]]],[[29,[2,7]]],19,[[62,[-1]],[63,[-1]],64,[65,[-1]],66,54,55],[[67,[-1]]]],[[[17,[-1]],-2],29,[19,68],69],[[7,-1],29,69],[[10,-1],29,69],[7,[[9,[5]]]],[10,[[9,[5]]]],0,[7,16],[10,16],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,14,[]],[-1,14,[]],[-1,14,[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[21,[[29,[-1,21]]],22],[-1,[[29,[-2,-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],0,[[25,41],[[29,[2,42]]]],[[25,41],[[29,[2,42]]]],0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],0,[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,5,[]],[-1,5,[]],[-1,5,[]],[-1,5,[]],[6,6],[6,6],[[[71,[-1]]],[[9,[8]]],19],[40,[[9,[8]]]],[[[72,[-1]]],[[73,[-1]]],19],[[[74,[-1]]],[[73,[-1]]],19],[[[75,[-1]]],[[73,[-1]]],19],[[[76,[-1]]],[[73,[-1]]],19],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[77,[-1]]],40,[[15,[14]]]],[[[78,[-1]]],40,[[15,[14]]]],[[[79,[-1]]],40,[[15,[14]]]],[[[80,[-1,-2]]],40,[[15,[24]]],[[15,[24]]]],[[[81,[-1,-2]]],40,[[15,[14]]],[[15,[16]]]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,[20,[-5]]],[[9,[-1]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,[20,[-5]]],[[9,[-1]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[71,[-1]]],[[9,[5]]],19],[40,[[9,[5]]]],[[[92,[-1]]],[[92,[-1]]],19],[[[93,[-1]]],[[93,[-1]]],19],[[[72,[-1]]],[[72,[-1]]],[18,19]],[[[71,[-1]]],[[71,[-1]]],[18,19]],[[[94,[-1]]],[[94,[-1]]],[18,19]],[[[74,[-1]]],[[74,[-1]]],[18,19]],[[[75,[-1]]],[[75,[-1]]],[18,19]],[[[76,[-1]]],[[76,[-1]]],[18,19]],[[[95,[-1]]],[[95,[-1]]],[18,19]],[[[96,[-1]]],[[96,[-1]]],[18,19]],[97,97],[[[77,[-1]]],[[77,[-1]]],18],[[[78,[-1]]],[[78,[-1]]],18],[[[79,[-1]]],[[79,[-1]]],18],[[[80,[-1,-2]]],[[80,[-1,-2]]],18,18],[[[81,[-1,-2]]],[[81,[-1,-2]]],18,18],[40,40],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[[92,[-1]],[92,[-1]]],98,19],[[[93,[-1]],[93,[-1]]],98,19],[[[75,[-1]]],99,19],[[-1,-2],98,[],[]],[[-1,-2],98,[],[]],[[[100,[-1]],-3],[[29,[-1,-2]]],[],[5,101],[[104,[-2],[[102,[103]]]]]],[[[74,[-1]]],[[105,[-1]]],19],[[],106],[106,[[29,[[107,[-1,40]],108]]],[54,55,109]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[[71,[-1]]],27,19],[40,27],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[-1,[[29,[[72,[-2]]]]],30,19],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[-1,[[29,[[94,[-2]]]]],30,19],[-1,[[29,[[74,[-2]]]]],30,19],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[-1,[[29,[[75,[-2]]]]],30,19],[-1,[[29,[[76,[-2]]]]],30,19],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[-1,[[29,[[95,[-2]]]]],30,19],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[-1,[[29,[[96,[-2]]]]],30,19],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[-1,[[29,[40]]],30],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4],[[56,[91]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4],[[56,[91]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[94,[-1]]],[[0,[[91,[],[[90,[[2,[[110,[-1]],[111,[-1]]]]]]]]]]],19],[[[92,[-1]],[92,[-1]]],31,19],[[[93,[-1]],[93,[-1]]],31,19],[[[72,[-1]],[72,[-1]]],31,[86,19]],[[[94,[-1]],[94,[-1]]],31,[86,19]],[[[74,[-1]],[74,[-1]]],31,[86,19]],[[[75,[-1]],[75,[-1]]],31,[86,19]],[[[76,[-1]],[76,[-1]]],31,[86,19]],[[[95,[-1]],[95,[-1]]],31,[86,19]],[[[96,[-1]],[96,[-1]]],31,[86,19]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],0,[[[77,[-1]]],[[29,[-2,40]]],[[15,[14]]],[]],[[[78,[-1]]],[[29,[-2,40]]],[[15,[14]]],[]],[[[79,[-1]]],[[29,[-2,40]]],[[15,[14]]],[]],[[[80,[-1,-2]]],[[29,[-3,40]]],[[15,[24]]],[[15,[24]]],[]],[[[81,[-1,-2]]],[[29,[-3,40]]],[[15,[14]]],[[15,[16]]],[]],0,[[[92,[-1]],33],36,19],[[[92,[-1]],33],36,19],[[[93,[-1]],33],36,19],[[[93,[-1]],33],36,19],[[[72,[-1]],33],36,[35,19]],[[[71,[-1]],33],36,19],[[[71,[-1]],33],36,[35,19]],[[[94,[-1]],33],36,[35,19]],[[[74,[-1]],33],36,[35,19]],[[[75,[-1]],33],36,[35,19]],[[[76,[-1]],33],36,[35,19]],[[[95,[-1]],33],36,[35,19]],[[[96,[-1]],33],36,[35,19]],[[97,33],36],[[[77,[-1]],33],36,35],[[[78,[-1]],33],36,35],[[[79,[-1]],33],36,35],[[[80,[-1,-2]],33],36,35,35],[[[81,[-1,-2]],33],36,35,35],[[40,33],36],[[40,33],36],[-1,-1,[]],[26,[[92,[-1]]],19],[[[112,[-1]]],[[92,[-1]]],19],[-1,-1,[]],[-1,-1,[]],[26,[[93,[-1]]],19],[[[73,[-1]]],[[93,[-1]]],19],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[[[94,[-1]]],[[74,[-1]]],19],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[[[94,[-1]]],[[95,[-1]]],19],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[[[2,[14,16]]],40],[-1,-1,[]],[113,40],[41,[[29,[106,42]]]],[41,[[29,[106,42]]]],[[],[[72,[-1]]],19],[[],[[94,[-1]]],19],[[],[[74,[-1]]],19],[[],[[75,[-1]]],19],[[[62,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],-6],[[119,[[56,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,54],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,54],[[15,[[93,[-2]]]],54,55]],[[[62,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],-6],[[119,[[56,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,54],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,54],[[122,[26]],54]],[[[62,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],[123,[-2]]],[[119,[[56,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,54],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,54]],[[-1,-2],24,[44,45],46],[[-1,-2],24,[44,45],46],[[[62,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],-6],[[119,[[56,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,54],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,54],[[15,[[92,[-2]]]],54,55]],[[[62,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],-6],[[119,[[56,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,54],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,54],[[122,[26]],54]],[[[62,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],-6],[[119,[[56,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,54],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,54],[[15,[[93,[-2]]]],54,55]],[[[62,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],-6],[[119,[[56,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,54],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,54],[[122,[26]],54]],[[[62,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],-6],[[119,[[56,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,54],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,54],[[15,[[93,[-2]]]],54,55]],[[[62,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],-6],[[119,[[56,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,54],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,54],[[122,[26]],54]],[[],[[9,[50]]]],[[[92,[-1]],-2],2,19,51],[[[93,[-1]],-2],2,19,51],[[[72,[-1]]],[[112,[-1]]],19],[[[94,[-1]]],[[73,[-1]]],19],[[[74,[-1]]],124,19],[[[76,[-1]]],[[123,[-1]]],19],[[[95,[-1]]],[[73,[-1]]],19],[[-1,-2],[[52,[-2,-3]]],[],[53,54,55],[]],[[-1,-2],[[52,[-2,-3]]],[],[53,54,55],[]],[[[72,[-1]]],[[125,[-1]]],19],[[-1,-2],[[52,[-2,-3]]],[],[53,54,55],[]],[[[94,[-1]]],[[125,[-1]]],19],[[[95,[-1]]],[[125,[-1]]],19],[[-1,-2],[[52,[-2,-3]]],[],[53,54,55],[]],[[[72,[-1]]],24,19],[[[94,[-1]]],24,19],[[[74,[-1]]],24,19],[[[75,[-1]]],24,19],[[[76,[-1]]],24,19],[[[95,[-1]]],24,19],0,[-1,[],[]],[-1,[],[]],0,[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[[127,[],[[126,[-1]]]],[94,[-2]]],[[119,[[56,[118]]]]],[5,35,54,55],19],[[[127,[],[[126,[-1]]]],[72,[-2]]],[[119,[[56,[118]]]]],[5,35,54,55],19],[[[127,[],[[126,[-1]]]],[75,[-2]],[9,[128]]],[[119,[[56,[118]]]]],[5,35,54,55],19],[-1,40,53],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[97,-1],40,[]],[[[77,[-1]],-2],40,[[15,[14]]],[]],[[[78,[-1]],-2],40,[[15,[14]]],[]],[[[79,[-1]],-2],40,[[15,[14]]],[]],[[[80,[-1,-2]],-3],40,[[15,[24]]],[[15,[24]]],[]],[[[81,[-1,-2]],-3],40,[[15,[14]]],[[15,[16]]],[]],[[[100,[-1]]],-2,54,[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4],31,[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4],31,[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[94,[-1]]],31,19],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4],-2,[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[[72,[-1]]],[[17,[-1]]],19],0,[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4],26,[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[94,[-1]]],26,19],[[[100,[-1]],-3],[[100,[-2]]],[],[],[54,[130,[-1],[[129,[-2]]]]]],0,[[[94,[-1]]],[[131,[-1]]],19],[[[17,[-1]],[132,[-1]]],[[29,[[72,[-1]],[71,[-1]]]]],19],[[[125,[-1]],[105,[-1]]],[[94,[-1]]],19],[[[125,[-1]],99],[[75,[-1]]],19],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,26],[[9,[-1]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,26],[[9,[-1]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,26],[[9,[-5]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,26],[[9,[-5]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,26],[[9,[[2,[-5,-3]]]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,26],[[9,[[2,[-5,-3]]]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[94,[-1]]],24,19],[[[95,[-1]]],24,19],[[[92,[-1]],[92,[-1]]],[[9,[98]]],19],[[[93,[-1]],[93,[-1]]],[[9,[98]]],19],[[[94,[-1]]],[[105,[-1]]],19],[[[72,[-1]]],124,19],[[[94,[-1]]],124,19],[[[75,[-1]]],124,19],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,-1],[[9,[-3]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,-1],[[9,[-3]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[72,[-1]]],[[132,[-1]]],19],0,[[[100,[-1]]],-1,54],0,0,0,[[[72,[-1]],-2],29,19,69],[[[94,[-1]],-2],29,19,69],[[[74,[-1]],-2],29,19,69],[[[75,[-1]],-2],29,19,69],[[[76,[-1]],-2],29,19,69],[[[95,[-1]],-2],29,19,69],[[[96,[-1]],-2],29,19,69],[[40,-1],29,69],[[[94,[-1]]],24,19],[[[74,[-1]]],24,19],[[[95,[-1]]],24,19],[[[71,[-1]]],[[9,[5]]],19],[40,[[9,[5]]]],[40,16],0,[[[62,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],26],[[119,[[56,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,54],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,54]],[[[62,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],26],[[119,[[56,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,54],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,54]],[[[62,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],26],[[119,[[56,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,54],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,54]],[[[62,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],26],[[119,[[56,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,54],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,54]],[[[62,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],26],[[119,[[56,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,54],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,54]],[[[62,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],26],[[119,[[56,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,54],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,54]],[[[62,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],26],[[119,[[56,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,54],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,54]],[[[62,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],26],[[119,[[56,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,54],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,54],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,54]],[133,24],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,14,[]],[-1,14,[]],[-1,14,[]],[-1,14,[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,-1],[[9,[-5]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,-1],[[9,[-5]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[94,[-1]],[110,[-1]]],[[9,[[76,[-1]]]]],19],[[[76,[-1]]],[[111,[-1]]],19],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,[20,[-5]]],[[9,[-5]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,[20,[-5]]],[[9,[-5]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[94,[-1]],[20,[[111,[-1]]]]],[[9,[[110,[-1]]]]],19],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,[20,[-5]]],[[9,[[2,[-5,-3]]]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,[20,[-5]]],[[9,[[2,[-5,-3]]]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,-1],[[9,[[2,[-5,-3]]]]],[18,35,86,87,88,68,89,54,55],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[[[100,[-1]]],[[29,[-1,[100,[-1]]]]],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[[106,41],[[29,[2,42]]]],[[106,41],[[29,[2,42]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[100,[-1]],-4],[[29,[-1,-2]]],[],[5,101],[[104,[-2],[[102,[103]]]]],[[130,[],[[129,[-3]]]]]],[[[100,[-1]],134],[[9,[-1]]],54],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[[[135,[-1,-2]]],-2,[],[]],[[[135,[-1,-2]]],-2,[],[]],0,[[[135,[-1,-2]]],[[119,[[56,[118]]]]],[64,54,55],[54,55]],[[[135,[-2,-3]]],[[119,[[56,[118]]]]],19,[[63,[-1]],54,55],[54,55]],[136,[[119,[[56,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[135,[-1,-2]]],[[135,[-1,-2]]],18,18],[136,136],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[[66,[],[[126,[-1]]]]],[[119,[[56,[118]]]]],[5,35,54,55]],[[[135,[-1,-2]]],[[119,[[56,[118]]]]],[66,54],54],[-1,[[119,[[56,[118]]]]],[]],[-1,[[119,[[56,[118]]]]],[]],[-1,[[119,[[56,[118]]]]],[]],[[[135,[-2,-3]]],[[119,[[56,[118]]]]],19,[[63,[-1]],54,55],[54,55]],[[137,-2],[[139,[[138,[-1,-2]]]]],19,[[140,[-1]]]],[26,[[119,[[56,[118]]]]]],[26,[[119,[[56,[118]]]]]],[26,[[119,[[56,[118]]]]]],[[141,-2],[[139,[[138,[-1,-2]]]]],19,[[140,[-1]]]],[[],136],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[26,2],[26,2],0,[[[135,[-1,-2]],33],36,35,35],[[136,33],36],[-1,-1,[]],[-1,-1,[]],[[[135,[-2,-3]],-4],[[119,[[56,[118]]]]],19,[[62,[-1]],54,55],[54,55],[[15,[[93,[-1]]]],54,55]],[[[135,[-2,-3]],-4],[[119,[[56,[118]]]]],19,[[62,[-1]],54,55],[54,55],[[122,[26]],54]],[[[135,[-2,-3]],[123,[-1]]],[[119,[[56,[118]]]]],19,[[62,[-1]],54,55],[54,55]],[[[135,[-2,-3]],-4,24],[[119,[[56,[118]]]]],19,[[63,[-1]],54,55],[54,55],[[15,[[142,[-1]]]],54,55]],[[[135,[-2,-3]],-4],[[119,[[56,[118]]]]],19,[[62,[-1]],54,55],[54,55],[[15,[[92,[-1]]]],54,55]],[[[135,[-2,-3]],-4],[[119,[[56,[118]]]]],19,[[62,[-1]],54,55],[54,55],[[122,[26]],54]],[[[135,[-3,-4]],[143,[-1,-2]]],[[119,[[56,[118]]]]],19,[[144,[-1]]],[[145,[-1,-2]],54,55],[54,55]],[[[135,[-2,-3]],-4],[[119,[[56,[118]]]]],19,[[62,[-1]],54,55],[54,55],[[15,[[93,[-1]]]],54,55]],[[[135,[-2,-3]],-4],[[119,[[56,[118]]]]],19,[[62,[-1]],54,55],[54,55],[[122,[26]],54]],[[[135,[-2,-3]],-4],[[119,[[56,[118]]]]],19,[[62,[-1]],54,55],[54,55],[[15,[[93,[-1]]]],54,55]],[[[135,[-2,-3]],-4],[[119,[[56,[118]]]]],19,[[62,[-1]],54,55],[54,55],[[122,[26]],54]],[[[138,[146,-1]],[147,[146]]],[[119,[[56,[118]]]]],[[140,[146]],148]],[[[135,[-1,-2]],[147,[146]]],[[119,[[56,[118]]]]],149,[148,54,55]],[[136,[147,[146]]],[[119,[[56,[118]]]]]],[[],26],[[],26],[[[135,[-1,-2]]],-1,[],[]],[[[135,[-1,-2]]],-1,[],[]],[[[135,[-2,-3]],[94,[-1]]],[[119,[[56,[118]]]]],19,[[127,[-1]],54,55],[54,55]],[[[135,[-2,-3]],[72,[-1]]],[[119,[[56,[118]]]]],19,[[127,[-1]],54,55],[54,55]],[[[135,[-3,-4]],150,[151,[26]],24],[[119,[[56,[118]]]]],19,[[144,[-1]]],[[152,[-1,-2]],54,55],[54,55]],[[[135,[-2,-3]],[75,[-1]],[9,[128]]],[[119,[[56,[118]]]]],19,[[127,[-1]],54,55],[54,55]],[-1,-2,[],[]],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[[135,[-1,-2]]],153,[64,54,55],[54,55]],[136,153],[[-1,-2],[[135,[-1,-2]]],[],[]],0,[[137,-2],[[139,[[138,[-1,-2]]]]],19,[[140,[-1]]]],[[141,-2],[[139,[[138,[-1,-2]]]]],19,[[140,[-1]]]],[[[135,[-2,-3]]],[[119,[[56,[118]]]]],19,[[63,[-1]],54,55],[54,55]],0,[[]],[[]],[-1,[[56,[154]]],[]],[-1,[[56,[154]]],[]],[-1,[[119,[[56,[118]]]]],[]],[-1,[[119,[[56,[118]]]]],[]],[-1,[[119,[[56,[118]]]]],[]],[[[66,[],[[126,[-1]]]]],[[119,[[56,[118]]]]],[5,35,54,55]],[[[135,[-1,-2]]],[[119,[[56,[118]]]]],[66,54],54],[[[138,[-1,-2]]],[[139,[2]]],19,[[140,[-1]]]],0,0,0,[[[135,[-2,-3]]],[[119,[[56,[118]]]]],19,[[63,[-1]],54,55],[54,55]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[[65,[147,[-1]]],[[119,[[56,[118]]]]],19],[[[135,[-2,-3]],-4],[[119,[[56,[118]]]]],19,[[63,[-1]],54,55],[54,55],[[15,[[93,[-1]]]],54,55]],[-1,-2,[],[]],[-1,-2,[],[]],[[],2],[[],2],0,0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[[[155,[-1,-2,-3]]],[[119,[[56,[118]]]]],19,[[63,[-1]],54,55],[54,55]],[[[155,[-1,-2,-3]]],[[119,[[56,[118]]]]],19,[[63,[-1]],54,55],[54,55]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[156,[-1,-2,-3]]],[[139,[[155,[-1,-2,-3]]]]],19,[[63,[-1]],[157,[-1]]],[[140,[-1]]]],[[-2,-3],[[156,[-1,-2,-3]]],19,[[63,[-1]],[157,[-1]]],[[140,[-1]]]],[[[155,[-1,-2,-3]]],[[155,[-1,-2,-3]]],19,[],[]],[[[158,[-1,-2,-3]]],[[158,[-1,-2,-3]]],19,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[[155,[-1,-2,-3]]],[[119,[[56,[118]]]]],19,[66,54,55],[54,55]],[[159,-2],[[29,[[160,[-1,-2]],161]]],19,[[140,[-1]]]],[[[155,[-1,-2,-3]]],[[119,[[56,[118]]]]],19,[[63,[-1]],54,55],[54,55]],[[137,-2],[[139,[[155,[-1,[162,[-1]],-2]]]]],19,[[140,[-1]]]],[[141,-2],[[139,[[155,[-1,[162,[-1]],-2]]]]],19,[[140,[-1]]]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[[163,[-1,-2]]],-3,19,[],[]],[26,-1,[]],[[[164,[-1,-2]]],-3,19,[],[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[[164,[-1,-2]]],-3,19,[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[[156,[-1,-2,-3]]],[[156,[-1,-2,-3]]],[],[],[]],[26,2],[26,2],[26,2],[26,2],[26,2],[[[155,[-1,-2,-3]],33],36,19,35,35],[[[158,[-1,-2,-3]],33],36,19,35,35],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[[[165,[[0,[-1,-2]]]]],[[163,[-1,-2]]],19,[]],[-1,-1,[]],[-1,-1,[]],[[[166,[[0,[-1,-2]]]]],[[164,[-1,-2]]],19,[]],[[[155,[-1,-2,-3]],-4],[[119,[[56,[118]]]]],19,[[157,[-1]]],[[140,[-1]]],[[15,[[93,[-1]]]],54,55]],[[[155,[-1,-2,-3]],-4],[[119,[[56,[118]]]]],19,[[157,[-1]]],[[140,[-1]]],[[122,[26]],54]],[[[155,[-1,-2,-3]],[123,[-1]]],[[119,[[56,[118]]]]],19,[[157,[-1]]],[[140,[-1]]]],[[[155,[-1,-2,-3]],-4,24],[[119,[[56,[118]]]]],19,[[63,[-1]],54,55],[54,55],[[15,[[142,[-1]]]],54,55]],[[[155,[-1,-2,-3]],-4],[[119,[[56,[118]]]]],19,[[157,[-1]]],[[140,[-1]]],[[15,[[92,[-1]]]],54,55]],[[[155,[-1,-2,-3]],-4],[[119,[[56,[118]]]]],19,[[157,[-1]]],[[140,[-1]]],[[122,[26]],54]],[[[155,[-1,-3,-4]],[143,[-1,-2]]],[[119,[[56,[118]]]]],19,[[144,[-1]]],[[145,[-1,-2]],54,55],[[140,[-1]]]],[[[155,[-1,-2,-3]],-4],[[119,[[56,[118]]]]],19,[[157,[-1]]],[[140,[-1]]],[[15,[[93,[-1]]]],54,55]],[[[155,[-1,-2,-3]],-4],[[119,[[56,[118]]]]],19,[[157,[-1]]],[[140,[-1]]],[[122,[26]],54]],[[[155,[-1,-2,-3]],-4],[[119,[[56,[118]]]]],19,[[157,[-1]]],[[140,[-1]]],[[15,[[93,[-1]]]],54,55]],[[[155,[-1,-2,-3]],-4],[[119,[[56,[118]]]]],19,[[157,[-1]]],[[140,[-1]]],[[122,[26]],54]],[[],26],[[],26],[[],26],[[],26],[[],26],[[[155,[-1,-2,-3]],[94,[-1]]],[[119,[[56,[118]]]]],19,[[127,[-1]],54,55],[54,55]],[[[155,[-1,-2,-3]],[72,[-1]]],[[119,[[56,[118]]]]],19,[[127,[-1]],54,55],[54,55]],[[[155,[-1,-3,-4]],150,[151,[26]],24],[[119,[[56,[118]]]]],19,[[144,[-1]]],[[152,[-1,-2]],54,55],[[140,[-1]]]],[[[155,[-1,-2,-3]],[75,[-1]],[9,[128]]],[[119,[[56,[118]]]]],19,[[127,[-1]],54,55],[54,55]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[[155,[-1,-2,-3]]],153,19,[[63,[-1]],54,55],[54,55]],[[-1,-2],[[156,[-3,-1,-2]]],[],[],[]],[[137,-2],[[139,[[155,[-1,[162,[-1]],-2]]]]],19,[[140,[-1]]]],[[141,-2],[[139,[[155,[-1,[162,[-1]],-2]]]]],19,[[140,[-1]]]],[[[155,[-1,-2,-3]]],[[119,[[56,[118]]]]],19,[[63,[-1]],54,55],[54,55]],[[]],[[]],[[]],[[]],[[]],[-1,[[56,[154]]],[]],[[[155,[-1,-2,-3]]],[[119,[[56,[118]]]]],19,[66,54,55],[54,55]],[[[155,[-1,[162,[-1]],-2]]],[[139,[2]]],19,[[140,[-1]]]],[[[155,[-1,-2,-3]]],[[163,[-1,-2]]],19,[],[]],[[[155,[-1,-2,-3]]],[[164,[-1,-2]]],19,[],[]],[[[155,[-1,-2,-3]]],[[119,[[56,[118]]]]],19,[[63,[-1]],54,55],[54,55]],[-1,-2,[],[]],[-1,-2,[],[]],[[[155,[-1,167,-2]]],[[169,[168]]],19,[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[[[155,[-1,-2,-3]],-4],[[119,[[56,[118]]]]],19,[[63,[-1]],54,55],[54,55],[[15,[[93,[-1]]]],54,55]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[156,[-1,-2,-3]],26],[[156,[-1,-2,-3]]],[],[],[]],[[[156,[-1,-2,-3]],134],[[156,[-1,-2,-3]]],[],[],[]],[[[156,[-1,-2,-3]],26],[[156,[-1,-2,-3]]],[],[],[]],[[[156,[-1,-2,-3]],26],[[156,[-1,-2,-3]]],[],[],[]],[[[156,[-1,-2,-3]],134],[[156,[-1,-2,-3]]],[],[],[]],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],0,0,0,0,0,0,0,[[[170,[-1,-2]]],[[119,[[56,[118]]]]],19,[54,55]],[-1,[[119,[[56,[118]]]]],[]],[[159,-2],[[29,[[160,[-1,-2]],161]]],19,[[140,[-1]]]],[26,[[119,[[56,[118]]]]]],[[[170,[146,-1]],[147,[146]]],[[119,[[56,[118]]]]],[[140,[146]],148]],0,0,[-1,[[119,[[56,[118]]]]],[]],0,[[[170,[-1,-2]]],[[169,[168]]],19,[]],0,[[],2],0,0,0,0,0,[[157,[93,[-1]]],[[119,[[56,[118]]]]],19],[[157,-1],[[119,[[56,[118]]]]],[[122,[26]],54]],[[157,[123,[-1]]],[[119,[[56,[118]]]]],19],[[157,[93,[-1]]],[[119,[[56,[118]]]]],19],[[157,[92,[-1]]],[[119,[[56,[118]]]]],19],[[157,-1],[[119,[[56,[118]]]]],[[122,[26]],54]],[[157,[93,[-1]]],[[119,[[56,[118]]]]],19],[[157,-1],[[119,[[56,[118]]]]],[[122,[26]],54]],[[157,[93,[-1]]],[[119,[[56,[118]]]]],19],[[157,-1],[[119,[[56,[118]]]]],[[122,[26]],54]],0,0,0,0,[-1,4,[]],[-1,4,[]],[[[162,[-1]]],[[119,[[56,[118]]]]],19],[-1,-2,[],[]],[-1,-2,[],[]],[[[162,[-1]]],[[119,[[56,[118]]]]],19],[[[162,[-1]]],[[119,[[56,[118]]]]],19],[137,[[29,[[162,[-1]],171]]],19],[141,[[29,[[162,[-1]],171]]],19],[26,-1,[]],[26,-1,[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[26,2],[[[162,[-1]],33],36,19],[-1,-1,[]],[[[162,[-1]],[93,[-1]]],[[119,[[56,[118]]]]],19],[[[162,[-1]],-2],[[119,[[56,[118]]]]],19,[[122,[26]],54]],[[[162,[-1]],[123,[-1]]],[[119,[[56,[118]]]]],19],[[[162,[-1]],[93,[-1]]],[[119,[[56,[118]]]]],19],[[[162,[-1]],-2,24],[[119,[[56,[118]]]]],19,[[15,[[142,[-1]]]],54,55]],[[[162,[-1]],[92,[-1]]],[[119,[[56,[118]]]]],19],[[[162,[-1]],-2],[[119,[[56,[118]]]]],19,[[122,[26]],54]],[[[162,[-1]],[93,[-1]]],[[119,[[56,[118]]]]],19],[[[162,[-1]],-2],[[119,[[56,[118]]]]],19,[[122,[26]],54]],[[[162,[-1]],[93,[-1]]],[[119,[[56,[118]]]]],19],[[[162,[-1]],-2],[[119,[[56,[118]]]]],19,[[122,[26]],54]],[[],26],[[[162,[-1]],[94,[-1]]],[[119,[[56,[118]]]]],19],[[[162,[-1]],[72,[-1]]],[[119,[[56,[118]]]]],19],[[[162,[-1]],[75,[-1]],[9,[128]]],[[119,[[56,[118]]]]],19],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[],[[29,[59,60]]]],[137,[[29,[[162,[-1]],171]]],19],[141,[[29,[[162,[-1]],171]]],19],[[[162,[-1]]],[[119,[[56,[118]]]]],19],[[]],[[[162,[-1]]],[[119,[[56,[118]]]]],19],[[[162,[-1]]],[[29,[2,171]]],19],[[[162,[-1]]],[[119,[[56,[118]]]]],19],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,70,[]],[-1,27,[]],[[[162,[-1]],-2],[[119,[[56,[118]]]]],19,[[15,[[93,[-1]]]],54,55]],[-1,-2,[],[]],0,[[-1,3],2,[]],[[-1,1],2,[]],[-1,4,[]],[-1,4,[]],[172,[[119,[[56,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[172,172],[[-1,-2],2,[],[]],[172,[[119,[[56,[118]]]]]],[172,[[119,[[56,[118]]]]]],[[],172],[26,-1,[]],[26,-1,[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[26,2],[[172,33],36],[-1,-1,[]],[[172,[93,[-1]]],[[119,[[56,[118]]]]],19],[[172,-1],[[119,[[56,[118]]]]],[[122,[26]],54]],[[172,[123,[-1]]],[[119,[[56,[118]]]]],19],[[172,[93,[-1]]],[[119,[[56,[118]]]]],19],[[172,-2,24],[[119,[[56,[118]]]]],19,[[15,[[142,[-1]]]],54,55]],[[172,[92,[-1]]],[[119,[[56,[118]]]]],19],[[172,-1],[[119,[[56,[118]]]]],[[122,[26]],54]],[[172,[93,[-1]]],[[119,[[56,[118]]]]],19],[[172,-1],[[119,[[56,[118]]]]],[[122,[26]],54]],[[172,[93,[-1]]],[[119,[[56,[118]]]]],19],[[172,-1],[[119,[[56,[118]]]]],[[122,[26]],54]],[[],26],[[172,[94,[-1]]],[[119,[[56,[118]]]]],19],[[172,[72,[-1]]],[[119,[[56,[118]]]]],19],[[172,[75,[-1]],[9,[128]]],[[119,[[56,[118]]]]],19],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[],[[29,[59,60]]]],[172,[[119,[[56,[118]]]]]],[[]],[172,[[119,[[56,[118]]]]]],[172,[[119,[[56,[118]]]]]],0,[-1,-2,[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,70,[]],[-1,27,[]],[[172,-2],[[119,[[56,[118]]]]],19,[[15,[[93,[-1]]]],54,55]],[-1,-2,[],[]],0,0,0,0,0,0,[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[173,[[119,[[56,[118]]]]]],[173,[[119,[[56,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[173,[[119,[[56,[118]]]]]],[-1,[[119,[[56,[118]]]]],[]],[173,[[119,[[56,[118]]]]]],[26,[[119,[[56,[118]]]]]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[26,2],[26,2],[-1,-1,[]],[-1,-1,[]],[[173,-1],[[119,[[56,[118]]]]],[[15,[[93,[146]]]],54,55]],[[173,-1],[[119,[[56,[118]]]]],[[122,[26]],54]],[[173,[123,[146]]],[[119,[[56,[118]]]]]],[[173,-1,24],[[119,[[56,[118]]]]],[[15,[[142,[146]]]],54,55]],[[173,-1],[[119,[[56,[118]]]]],[[15,[[92,[146]]]],54,55]],[[173,-1],[[119,[[56,[118]]]]],[[122,[26]],54]],[[173,-1],[[119,[[56,[118]]]]],[[15,[[93,[146]]]],54,55]],[[173,-1],[[119,[[56,[118]]]]],[[122,[26]],54]],[[173,-1],[[119,[[56,[118]]]]],[[15,[[93,[146]]]],54,55]],[[173,-1],[[119,[[56,[118]]]]],[[122,[26]],54]],[[173,[147,[146]]],[[119,[[56,[118]]]]]],[[],26],[[],26],[[173,[94,[146]]],[[119,[[56,[118]]]]]],[[173,[72,[146]]],[[119,[[56,[118]]]]]],[[173,[75,[146]],[9,[128]]],[[119,[[56,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[173,153],[173,[[119,[[56,[118]]]]]],[[]],[[]],[-1,[[56,[154]]],[]],[-1,[[119,[[56,[118]]]]],[]],[173,[[119,[[56,[118]]]]]],[[[174,[173]]],[[119,[[56,[118]]]]]],[173,[[119,[[56,[118]]]]]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[[173,-1],[[119,[[56,[118]]]]],[[15,[[93,[146]]]],54,55]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[-1,4,[]],[-1,4,[]],[175,24],[-1,-2,[],[]],[-1,-2,[],[]],[175,175],[[-1,-2],2,[],[]],[[],175],[26,-1,[]],[26,-1,[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[26,2],[[175,33],36],[-1,-1,[]],[176,[[119,[[56,[118]]]]]],[177,[[9,[175]]]],[[],26],[175,134],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[],[[29,[59,60]]]],[[[178,[],[[126,[-1]]]]],[[119,[[56,[118]]]]],[5,35,54,55]],[175,179],[175,134],[[],175],[[]],[176,[[119,[[56,[118]]]]]],[175,[[9,[24]]]],[[[178,[],[[126,[-1]]]],24],[[119,[[56,[118]]]]],[5,35,54,55]],[[177,175],2],[175,134],[-1,-2,[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,70,[]],[-1,27,[]],[175,[[139,[2]]]],[-1,-2,[],[]],[[175,24],175],[[175,134],175],[[175,179],175],[[175,134],175],[[175,24],175],[[175,134],175],0,0,0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[180,31],[180,31],[181,[[9,[182]]]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[161,5],[161,5],[161,183],[167,[[119,[[56,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,184,[]],[[159,-2],[[29,[[160,[-1,-2]],161]]],19,[[140,[-1]]]],[161,185],[181,24],[186,[[119,[[56,[118]]]]]],[168,[[119,[[56,[118]]]]]],[167,[[119,[[56,[118]]]]]],[181,181],[159,159],[187,187],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[181,181],98],[167,[[119,[[56,[118]]]]]],[[-1,-2],98,[],[]],[[159,-2],[[29,[[170,[-1,-2]],161]]],19,[[140,[-1]]]],[159,[[29,[167,161]]]],[[161,-1],161,[53,54,55]],[167,[[119,[[56,[118]]]]]],[[159,27],159],[[],159],[[],187],[[],[[151,[181]]]],[161],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[161],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[-1,[[29,[187]]],30],[161,[[29,[-1,161]]],[53,35,54,55]],[161,[[9,[-1]]],[53,35,54,55]],[161,[[9,[-1]]],[53,35,54,55]],[161,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[[181,181],31],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[168,-1,-2],[[169,[24]]],[45,188],189],[[168,-1,-2],[[169,[24]]],[45,188,53],189],[[168,-1,-2],[[169,[24]]],[45,188,53],[189,18]],[[168,-1,-2],[[169,[2]]],[45,188,53],189],[[168,-1,-2],[[169,[2]]],[45,188,53],[189,18]],[[161,33],[[29,[2,34]]]],[[161,33],[[29,[2,34]]]],[[181,33],[[29,[2,34]]]],[[181,33],[[29,[2,34]]]],[[159,33],36],[[167,33],36],[[187,33],36],[190,-1,[]],[-1,-1,[]],[-1,161,[5,54,55]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[191,159],[-1,-1,[]],[-1,-1,[]],[-2,187,[53,18],[[91,[],[[90,[-1]]]],192]],[[180,[194,[193]]],[[29,[187,[56,[5]]]]]],[27,[[29,[159,-1]]],[]],[[167,[93,[-1]]],[[119,[[56,[118]]]]],19],[[167,-1],[[119,[[56,[118]]]]],[[122,[26]],54]],[[167,[123,[-1]]],[[119,[[56,[118]]]]],19],[167,[[119,[[56,[118]]]]]],[[167,[93,[-1]]],[[119,[[56,[118]]]]],19],[[167,-2,24],[[119,[[56,[118]]]]],19,[[15,[[142,[-1]]]],54,55]],[[167,[92,[-1]]],[[119,[[56,[118]]]]],19],[[167,-1],[[119,[[56,[118]]]]],[[122,[26]],54]],[[167,[143,[-1,-2]]],[[119,[[56,[118]]]]],19,[[144,[-1]]]],[[167,[93,[-1]]],[[119,[[56,[118]]]]],19],[[167,-1],[[119,[[56,[118]]]]],[[122,[26]],54]],[167,[[9,[175]]]],[[167,[93,[-1]]],[[119,[[56,[118]]]]],19],[[167,-1],[[119,[[56,[118]]]]],[[122,[26]],54]],[[-1,-2],[[52,[-2,-3]]],[],[53,54,55],[]],[[-1,-2],[[52,[-2,-3]]],[],[53,54,55],[]],[[159,-1],159,[[15,[14]]]],0,0,[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[167,[94,[-1]]],[[119,[[56,[118]]]]],19],[[167,[72,[-1]]],[[119,[[56,[118]]]]],19],[[167,150,[151,[26]],24],[[119,[[56,[118]]]]]],[[167,[75,[-1]],[9,[128]]],[[119,[[56,[118]]]]],19],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[161,31],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[167,[[119,[[56,[118]]]]]],[[159,-1],159,[[189,[],[[90,[181]]]]]],[-1,161,[53,35,54,55]],[181,27],[-1,161,[5,54,55]],[159,159],[[181,181],[[9,[98]]]],[[159,27],159],[167,[[119,[[56,[118]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[159,179],159],0,[181,195],[167,[[119,[[56,[118]]]]]],[[159,175],[[29,[159,161]]]],[[186,-1,-2],[[119,[[56,[118]]]]],[45,188,55],[189,54]],[[186,-1,-2],[[119,[[56,[118]]]]],[45,188,55],[189,54]],[[186,-1],[[119,[[56,[118]]]]],[45,188,55]],[[186,-1,-2],[[119,[[56,[118]]]]],[45,188,55],[189,54]],[[186,-1],[[119,[[56,[118]]]]],[45,188,55]],[[186,-1],[[119,[[56,[118]]]]],[45,188,55]],[159,159],[167,[[119,[[56,[118]]]]]],[161,5],[[167,24],[[119,[[56,[118]]]]]],[[159,-1],159,[[15,[14]]]],[[187,-1],29,69],[[167,175],2],[181,[[9,[27]]]],[167,[[119,[[56,[118]]]]]],0,[159,159],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[187,180,196],[[29,[197,[56,[5]]]]]],[[187,180,196],[[29,[197,[56,[5]]]]]],[-1,14,[]],[-1,14,[]],[167,[[169,[168]]]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[[27,27],[[29,[181,198]]]],[[168,27,[199,[27]],-1,-3],[[169,[2]]],[[189,[],[[90,[27]]]]],[200,18],[[189,[],[[90,[[199,[-2]]]]]]]],[[159,27],159],[181,201],[[167,-2],[[119,[[56,[118]]]]],19,[[15,[[93,[-1]]]],54,55]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[202,159],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[26,2],[202,2],[26,2],[[202,33],36],[-1,-1,[]],[-1,-1,[]],[202,14],[[],26],[[],26],[[],202],[-1,-2,[],[]],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[]],[[]],[202,179],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,[[-1,3],2,[]],[[-1,1],2,[]],[-1,4,[]],[-1,4,[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[203,[-1,-2]]],[[203,[-1,-2]]],[],[]],[[-1,-2],2,[],[]],[[],[[203,[-1,-2]]],[],[]],[26,-1,[]],[26,-1,[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[26,2],[[[203,[-1,-2]],33],36,[],[]],[-1,-1,[]],[[],26],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[],[[29,[59,60]]]],[[]],0,0,[[204,-1],2,[]],[[205,-1],[[0,[[118,[],[[129,[2]]]],54]]],[]],[[[203,[-2,-3]],-2,-4,-5],2,[],[[206,[-1]]],205,[[207,[-1,-2]]],[[189,[],[[90,[-3]]]],54]],[-1,-2,[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,70,[]],[-1,27,[]],[-1,-2,[],[]],[[[203,[-1,-2]],134],[[203,[-1,-2]]],[],[]],0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[[[208,[-1]]],2,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[209,[-1]]],[[209,[-1]]],19],[210,210],[[[208,[-1]]],[[208,[-1]]],[]],[211,211],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[],[[209,[-1]]],19],[[],211],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[26,2],[26,2],[26,2],[26,2],[[[208,[-1]]],2,[]],[[207,-2],[[119,[[56,[118]]]]],[],[[206,[-1]]]],[[[209,[-1]],212],[[119,[[56,[118]]]]],19],[[[209,[-1]],213],[[119,[[56,[118]]]]],19],[[[209,[-1]],214],[[119,[[56,[118]]]]],19],[[210,214],[[119,[[56,[118]]]]]],[[210,212],[[119,[[56,[118]]]]]],[[210,213],[[119,[[56,[118]]]]]],[[[208,[-3]],-2],[[119,[[56,[118]]]]],19,[[206,[-1]]],[[207,[-1,-2]],55]],[[211,-2],[[119,[[56,[118]]]]],[],[54,[206,[-1]]]],[[[209,[-1]],33],36,19],[[210,33],36],[[[208,[-1]],33],36,35],[[211,33],36],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[[],26],[[],26],[[],26],[[],26],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[215,210],[-1,[[208,[-1]]],[]],[[]],[[]],[[]],[[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[[[208,[-1]]],2,[]],[[[208,[-1]]],2,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[209,[-1]],-2],[[209,[-1]]],19,[[207,[-1,213]],35]],[[[209,[-1]],-2],[[209,[-1]]],19,[[207,[-1,214]],35]],[[[209,[-1]],-2],[[209,[-1]]],19,[[140,[-1]],35]],[[[209,[-1]],-2],[[209,[-1]]],19,[[207,[-1,212]],35]],0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[213,213],[212,212],[214,214],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[26,2],[26,2],[26,2],[[213,213],31],[[212,212],31],[[214,214],31],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[213,33],36],[[212,33],36],[[214,33],36],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[26,214],[[-1,-2],24,[44,45],46],[[-1,-2],24,[44,45],46],[[-1,-2],24,[44,45],46],[[213,-1],2,51],[[212,-1],2,51],[[214,-1],2,51],[[],26],[[],26],[[],26],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[]],[[]],[[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,3],2,[]],[[-1,1],2,[]],0,[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,5,[]],[-1,5,[]],[6,6],[6,6],[37,[[9,[8]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[37,[[9,[5]]]],[37,37],[[-1,-2],2,[],[]],[[[143,[-1,-2]],[143,[-1,-2]]],98,19,[[144,[-1]]]],[[-1,-2],98,[],[]],[[],216],[216,[[29,[[107,[-1,37]],108]]],[54,55,109]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[37,27],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[-1,[[29,[37]]],30],[26,2],[26,2],[26,2],[[[143,[-1,-2]],[143,[-1,-2]]],31,19,[[144,[-1]]]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],0,[[[143,[-1,-2]],33],36,19,[[144,[-1]]]],[[[143,[-1,-2]],33],36,19,[[144,[-1]]]],[[37,33],36],[[37,33],36],[-1,-1,[]],[-1,-1,[]],[113,37],[-1,-1,[]],[10,37],[[[2,[14,16]]],37],[41,[[29,[216,42]]]],[41,[[29,[216,42]]]],[[-1,-2],24,[44,45],46],[[145,[143,[-1,-2]]],[[119,[[56,[118]]]]],19,[[144,[-1]]]],[[],[[9,[50]]]],[[[143,[-1,-2]],-3],2,19,[[144,[-1]]],51],[[-1,-2],[[52,[-2,-3]]],[],[53,54,55],[]],[[-1,-2],[[52,[-2,-3]]],[],[53,54,55],[]],[[],27],[-1,[],[]],[[],26],[[],26],[[],26],[[152,150,[151,[26]],24],[[119,[[56,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[[143,[-1,-2]],[143,[-1,-2]]],[[9,[98]]],19,[[144,[-1]]]],[[]],[[]],[[]],[[37,-1],29,69],[37,[[9,[5]]]],[[],27],[37,16],[-1,-2,[],[]],[-1,14,[]],[-1,14,[]],[[],26],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[[216,41],[[29,[2,42]]]],[[216,41],[[29,[2,42]]]],[[217,-1,[17,[-2]],57],[[119,[[56,[118]]]]],[],19],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[218,26],2],[[219,220],2],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,5,[]],[-1,5,[]],[221,[[9,[8]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[221,[[9,[5]]]],[153,153],[218,218],[222,222],[219,219],[223,223],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[153,14,[9,[14]]],[[56,[224]]]],[[153,14,[9,[14]]],[[56,[225]]]],[[153,14,[9,[14]]],[[56,[226]]]],[[153,14],[[56,[227]]]],[[],153],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[221,27],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[153,[[29,[14,-1]]],[]],[[221,33],36],[[221,33],36],[[153,33],36],[[218,33],36],[[222,33],36],[[219,33],36],[[223,33],36],[228,221],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[218,26],[222,26],[223,14],[[153,27],[[29,[218,221]]]],[[153,27],[[29,[222,221]]]],[[153,27],[[29,[219,221]]]],[[153,27],[[29,[223,221]]]],[[153,-1],[[29,[153,221]]],189],[[-1,-2],[[52,[-2,-3]]],[],[53,54,55],[]],[-1,[],[]],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[219,220],[[]],[[]],[[]],[[]],[[]],[[]],[219,26],[[222,26],2],[[223,14],2],[221,[[9,[5]]]],[[153,14],[[56,[154]]]],[219,220],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,14,[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[[222,229],2],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],0,[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,5,[]],[-1,5,[]],[6,6],[6,6],[38,[[9,[8]]]],0,[63,[[119,[[56,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[230,[-1,-2]]],38,[[15,[14]]],[[15,[16]]]],[38,[[9,[5]]]],[[[142,[-1]]],[[142,[-1]]],19],[231,231],[[[232,[-1]]],[[232,[-1]]],18],[233,233],[234,234],[[[235,[-1]]],[[235,[-1]]],18],[[[236,[-1,-2]]],[[236,[-1,-2]]],18,18],[[[230,[-1,-2]]],[[230,[-1,-2]]],18,18],[38,38],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[231,231],98],[[-1,-2],98,[],[]],[63,[[119,[[56,[118]]]]]],[[],[[232,[-1]]],[]],[[],237],[237,[[29,[[107,[-1,38]],108]]],[54,55,109]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[38,27],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[-1,[[29,[231]]],30],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[-1,[[29,[[232,[-2]]]]],30,238],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[-1,[[29,[38]]],30],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],0,[[231,231],31],[[[232,[-1]],[232,[-1]]],31,86],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],0,[[[230,[-1,-2]]],[[29,[-3,38]]],[[15,[14]]],[[15,[16]]],[]],[[[142,[-1]],33],36,19],[[231,33],36],[[[232,[-1]],33],36,35],[[233,33],36],[[234,33],36],[[[235,[-1]],33],36,35],[[[236,[-1,-2]],33],36,35,35],[[[230,[-1,-2]],33],36,35,35],[[38,33],36],[[38,33],36],[[[73,[-1]]],[[142,[-1]]],19],[-1,-1,[]],[-1,-1,[]],[[[232,[-1]]],[[9,[24]]],239],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[[[2,[14,16]]],38],[113,38],[-1,-1,[]],[10,38],[41,[[29,[237,42]]]],[41,[[29,[237,42]]]],[[],231],[[-1,-2],24,[44,45],46],[[63,-2,24],[[119,[[56,[118]]]]],19,[[15,[[142,[-1]]]],54,55]],[[],[[9,[50]]]],[[231,-1],2,51],[[-1,-2],[[52,[-2,-3]]],[],[53,54,55],[]],[-1,[],[]],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[-1,38,53],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[233,-1],38,[]],[[234,-1],38,[]],[[[235,[-1]],-2],38,[[15,[14]]],[]],[[[236,[-1,-2]],-3],38,[[15,[14]]],[[15,[24]]],[]],[[[230,[-1,-2]],-3],38,[[15,[14]]],[[15,[16]]],[]],[231,31],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],0,0,0,0,0,0,[[231,231],[[9,[98]]]],[63,[[119,[[56,[118]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[231,-1],29,69],[[[232,[-1]],-2],29,68,69],[[38,-1],29,69],[38,[[9,[5]]]],0,[38,16],0,[63,[[119,[[56,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,14,[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[[237,41],[[29,[2,42]]]],[[237,41],[[29,[2,42]]]],[[63,-2],[[119,[[56,[118]]]]],19,[[15,[[93,[-1]]]],54,55]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],0,[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,5,[]],[-1,5,[]],[6,6],[6,6],[39,[[9,[8]]]],[64,[[119,[[56,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[39,[[9,[5]]]],[240,240],[39,39],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[240,240],98],[[-1,-2],98,[],[]],[64,[[169,[153]]]],[64,[[169,[153]]]],[[],240],[[],241],[241,[[29,[[107,[-1,39]],108]]],[54,55,109]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[39,27],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[-1,[[29,[240]]],30],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[-1,[[29,[39]]],30],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[26,2],[26,2],[26,2],[64,[[119,[[56,[118]]]]]],[64,[[119,[[56,[118]]]]]],[[240,240],31],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],0,[[240,33],36],[[39,33],36],[[39,33],36],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[113,39],[14,39],[41,[[29,[241,42]]]],[41,[[29,[241,42]]]],[[-1,-2],24,[44,45],46],[[],[[9,[50]]]],[[240,-1],2,51],[[-1,-2],[[52,[-2,-3]]],[],[53,54,55],[]],[-1,[],[]],[[],26],[[],26],[[],26],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],0,[64,[[119,[[56,[118]]]]]],[64,[[119,[[56,[118]]]]]],[64,153],[[240,240],[[9,[98]]]],[[]],[[]],[[]],[242,[[56,[154]]]],[[240,-1],29,69],[[39,-1],29,69],[39,[[9,[5]]]],[39,16],[64,[[119,[[56,[118]]]]]],[64,[[119,[[56,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,14,[]],0,[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[[241,41],[[29,[2,42]]]],[[241,41],[[29,[2,42]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,[[],2],[134,2],0,0,0,0,0,0,[-1,4,[]],[-1,4,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[119,[[56,[118]]]]],[]],[26,[[119,[[56,[118]]]]]],[[[174,[-1]]],[[57,[[243,[-1]]]]],244],[[[174,[-1]],26],[[57,[[243,[-1]]]]],244],[26,-1,[]],[26,-1,[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[[[174,[-1]]],2,244],[26,2],[-1,-1,[]],[[[174,[-1]]],[[61,[146,245]]],244],[[[244,[],[[246,[-1]]]],[147,[146]]],[[119,[[56,[118]]]]],[54,55]],[[],[[174,[-1]]],[244,242]],[[],26],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[],[[29,[59,60]]]],[[[174,[-1]]],26,244],[[]],[[[174,[-1]],26],[[247,[146]]],244],[-1,[[119,[[56,[118]]]]],[]],[[[174,[[244,[],[[246,[-1]]]]]]],[[119,[[56,[118]]]]],[54,55]],[[[174,[-1]]],2,244],[[[174,[-1]],-2,-3],2,244,53,[118,54]],[[[174,[-1]]],2,244],[[[174,[-1]]],[],244],[[[174,[-1]],248],2,244],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,70,[]],[-1,27,[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[146,146],[245,245],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[146,146],98],[[245,245],98],[[-1,-2],98,[],[]],[[-1,-2],98,[],[]],[[],146],[[],245],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[-1,[[29,[146]]],30],[[-1,-2],[[29,[[28,[-3,-4]]]]],[],[],[],[]],[-1,[[29,[245]]],30],[26,2],[26,2],[[146,146],31],[[245,245],31],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[146,33],36],[[245,33],36],[-1,-1,[]],[-1,-1,[]],[[-1,-2],24,[44,45],46],[[-1,-2],24,[44,45],46],[[146,-1],2,51],[[245,-1],2,51],[[],27],[249,24],[[],26],[[],26],[-1,-2,[],[]],[-1,-2,[],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[[58,[-1]]],[[58,[4]]],[]],[[250,-1],-2,[],[]],0,[[],[[29,[59,60]]]],[[],[[29,[59,60]]]],[[250,-1],26,[]],[[[151,[193]]],248],[[146,146],[[9,[98]]]],[[245,245],[[9,[98]]]],0,[[]],[[]],0,[[146,-1],29,69],[[245,-1],29,69],[[],27],0,[249,24],0,[-1,-2,[],[]],[-1,-2,[],[]],[[250,-1,-2],[[9,[[2,[-3,-4]]]]],[],[],[],[]],0,[[],26],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,[[29,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],0,[239,24]],"c":[],"p":[[5,"Private",3538],[1,"tuple"],[5,"Private",3538],[10,"Any",3539],[10,"Error",3540],[5,"Command",3541],[6,"Error",0],[5,"Backtrace",3542],[6,"Option",3543],[6,"QueryError",0],[5,"NotFoundSnafu",0],[5,"MissingSnafu",0],[5,"Snafu",0],[5,"String",3544],[10,"Into",3545],[6,"StatusCode",3546],[5,"Leaf",0],[10,"Clone",3547],[10,"NodeType",3548],[5,"Commitment",3549],[10,"Resolvable",0],[10,"Committable",3549],[10,"RngCore",3550],[1,"u64"],[5,"Options",0],[1,"usize"],[1,"str"],[5,"With",3551],[6,"Result",3552],[10,"Deserializer",3553],[1,"bool"],[6,"BlockError",3554],[5,"Formatter",3555],[5,"Error",3555],[10,"Debug",3555],[8,"Result",3555],[6,"Error",2454],[6,"Error",2823],[6,"Error",3225],[6,"Error",345],[5,"ArgMatches",3556],[8,"Error",3557],[5,"StoredView",3558],[10,"Hash",3559],[10,"Sized",3560],[10,"BuildHasher",3559],[5,"QuorumData",3561],[5,"SuccessThreshold",3562],[5,"SimpleCertificate",3562],[5,"Id",3563],[10,"Hasher",3559],[5,"IndentedSection",3564],[10,"Display",3555],[10,"Send",3560],[10,"Sync",3560],[5,"Box",3565],[5,"Arc",3566],[5,"Rc",3567],[5,"Layout",3568],[5,"LayoutError",3568],[5,"SystemContextHandle",3569],[10,"AvailabilityDataSource",345],[10,"NodeDataSource",2823],[10,"StatusDataSource",3225],[10,"UpdateDataSource",1199],[10,"VersionedDataSource",1199],[10,"NodeImplementation",3548],[10,"Serialize",3570],[10,"Serializer",3570],[5,"TypeId",3539],[5,"InconsistentLeafError",345],[5,"LeafQueryData",345],[8,"BlockHash",345],[5,"PayloadQueryData",345],[5,"VidCommonQueryData",345],[5,"TransactionQueryData",345],[5,"FetchLeafSnafu",345],[5,"FetchBlockSnafu",345],[5,"FetchTransactionSnafu",345],[5,"InvalidTransactionIndexSnafu",345],[5,"CustomSnafu",345],[17,"TransactionIndex"],[17,"Iter"],[17,"InclusionProof"],[10,"QueryablePayload",345],[10,"PartialEq",3571],[10,"Eq",3571],[10,"Ord",3571],[10,"DeserializeOwned",3553],[17,"Item"],[10,"Iterator",3572],[6,"LeafId",345],[6,"BlockId",345],[5,"BlockQueryData",345],[5,"BlockSummaryQueryData",345],[5,"TransactionSummaryQueryData",345],[5,"RequestSnafu",345],[6,"Ordering",3571],[8,"VidCommon",0],[6,"Fetch",345],[10,"ErrorCompat",3573],[17,"Source"],[5,"NoneError",3573],[10,"IntoError",3573],[8,"Payload",0],[5,"Options",345],[5,"Api",3574],[6,"ApiError",3574],[10,"ReadState",3575],[8,"TransactionIndex",345],[8,"Transaction",0],[8,"LeafHash",345],[6,"RequestError",3576],[17,"LeafRange"],[17,"BlockRange"],[17,"PayloadRange"],[17,"VidCommonRange"],[10,"Future",3577],[5,"Pin",3578],[10,"Stream",3579],[10,"Unpin",3560],[10,"RangeBounds",3580],[8,"TransactionHash",345],[8,"VidCommitment",0],[8,"Header",0],[17,"Error"],[10,"UpdateAvailabilityData",345],[8,"VidShare",0],[17,"Output"],[10,"FnOnce",3581],[8,"Metadata",0],[8,"QuorumCertificate",3562],[10,"QueryableHeader",345],[5,"Duration",3582],[5,"ExtensibleDataSource",1199],[5,"MetricsDataSource",1199],[5,"Path",3583],[8,"FileSystemDataSource",1199],[8,"Result",3584],[10,"AvailabilityProvider",1331],[5,"AtomicStoreLoader",3585],[6,"WindowStart",2823],[6,"Snapshot",2454],[10,"MerklizedState",2454],[10,"MerklizedStateDataSource",2454],[5,"MockTypes",3421],[5,"Event",3586],[10,"Default",3587],[10,"TestableDataSource",3374],[8,"MerklePath",3588],[5,"Vec",3589],[10,"UpdateStateData",2454],[5,"PrometheusMetrics",2601],[10,"Metrics",3590],[5,"FetchingDataSource",1331],[5,"Builder",1331],[10,"AvailabilityStorage",1544],[5,"Pruner",1331],[5,"Config",1807],[8,"Builder",1525],[5,"Error",1807],[5,"FileSystemStorage",1562],[5,"StorageReadGuard",1331],[5,"StorageWriteGuard",1331],[5,"RwLockReadGuard",3591],[5,"RwLockWriteGuard",3591],[5,"SqlStorage",1807],[5,"Transaction",1807],[8,"QueryResult",0],[8,"SqlDataSource",1525],[6,"PersistenceError",3592],[5,"NoStorage",1614],[6,"DataSource",1668],[5,"MockNetwork",3374],[5,"PrunerCfg",1751],[10,"PruneStorage",1751],[10,"PrunerConfig",1751],[10,"PrunedHeightStorage",1751],[1,"u16"],[5,"Type",3593],[5,"Migration",1807],[5,"OffsetDateTime",3594],[5,"Backtrace",3595],[10,"ToSql",3593],[5,"Chain",3584],[10,"Query",1807],[5,"LTree",1807],[10,"ToStatement",3596],[10,"IntoIterator",3597],[1,"never"],[5,"Config",3598],[10,"DoubleEndedIterator",3599],[1,"u8"],[1,"slice"],[6,"Type",3600],[5,"BytesMut",3601],[6,"IsNull",3593],[5,"Error",3602],[1,"array"],[10,"BorrowToSql",3593],[1,"u32"],[5,"TmpDb",2093],[5,"Fetcher",2149],[10,"LocalCallback",2149],[10,"Callback",2149],[10,"Request",2337],[10,"Provider",2191],[5,"TestProvider",2191],[5,"AnyProvider",2191],[5,"QueryServiceProvider",2191],[5,"NoFetching",2191],[5,"VidCommonRequest",2337],[5,"PayloadRequest",2337],[5,"LeafRequest",2337],[5,"Url",3603],[5,"Options",2454],[10,"UpdateStateStorage",2454],[5,"Counter",2601],[5,"Histogram",2601],[1,"f64"],[6,"MetricsError",2601],[5,"Gauge",2601],[5,"Label",2601],[10,"Counter",3590],[10,"Gauge",3590],[10,"Histogram",3590],[10,"Label",3590],[6,"Error",3604],[1,"i64"],[5,"CustomSnafu",2823],[5,"SyncStatus",2823],[5,"TimeWindowQueryData",2823],[5,"RequestSnafu",2823],[5,"QuerySnafu",2823],[5,"QueryVidSnafu",2823],[5,"QueryWindowSnafu",2823],[5,"Options",2823],[10,"Deserialize",3553],[10,"HeightIndexed",3536],[5,"MempoolQueryData",3225],[5,"Options",3225],[10,"UpdateStatusData",3225],[5,"RwLock",3591],[10,"DataSourceLifeCycle",3374],[5,"MockNodeImpl",3421],[17,"Storage"],[8,"SignatureKey",0],[8,"MockTransaction",3421],[8,"MockHeader",3421],[8,"MockPayload",3421],[15,"Custom",338],[15,"Availability",338],[15,"Node",338],[15,"Status",338],[15,"MerklizedState",338],[15,"Error",344],[15,"InvalidTransactionIndex",1191],[15,"Custom",1191],[15,"FetchLeaf",1191],[15,"FetchBlock",1191],[15,"FetchTransaction",1191],[15,"Request",1191],[6,"Storage",1668],[15,"NoStorage",1750],[5,"TestMerkleTreeMigration",2093],[15,"Custom",2597],[15,"Request",2597],[15,"Query",2597],[15,"NoSuchMetric",2819],[15,"NoSuchSubgroup",2819],[15,"Prometheus",2819],[15,"QueryVid",3216],[15,"QueryWindow",3216],[15,"Custom",3216],[15,"Request",3216],[15,"Query",3216],[15,"Internal",3368],[15,"Request",3368],[8,"MockQuorumProposal",3421],[8,"MockMerkleTree",3421]],"b":[[147,"impl-Display-for-Leaf%3CTYPES%3E"],[148,"impl-Debug-for-Leaf%3CTYPES%3E"],[149,"impl-Debug-for-Error"],[150,"impl-Display-for-Error"],[154,"impl-Debug-for-QueryError"],[155,"impl-Display-for-QueryError"],[157,"impl-From%3CError%3E-for-Error"],[158,"impl-From%3CError%3E-for-Error"],[159,"impl-From%3C(String,+StatusCode)%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[162,"impl-From%3CError%3E-for-Error"],[711,"impl-Debug-for-LeafId%3CTypes%3E"],[712,"impl-Display-for-LeafId%3CTypes%3E"],[713,"impl-Debug-for-BlockId%3CTypes%3E"],[714,"impl-Display-for-BlockId%3CTypes%3E"],[716,"impl-Display-for-InconsistentLeafError%3CTypes%3E"],[717,"impl-Debug-for-InconsistentLeafError%3CTypes%3E"],[730,"impl-Display-for-Error"],[731,"impl-Debug-for-Error"],[733,"impl-From%3Cusize%3E-for-LeafId%3CTypes%3E"],[734,"impl-From%3CCommitment%3CLeaf%3CTypes%3E%3E%3E-for-LeafId%3CTypes%3E"],[737,"impl-From%3Cusize%3E-for-BlockId%3CTypes%3E"],[738,"impl-From%3CCommitment%3C%3CTypes+as+NodeType%3E::BlockHeader%3E%3E-for-BlockId%3CTypes%3E"],[756,"impl-From%3C(String,+StatusCode)%3E-for-Error"],[758,"impl-From%3CRequestError%3E-for-Error"],[1219,"impl-StatusDataSource-for-ExtensibleDataSource%3CD,+U%3E"],[1220,"impl-NodeDataSource%3CTypes%3E-for-ExtensibleDataSource%3CD,+U%3E"],[1236,"impl-FetchingDataSource%3CTypes,+FileSystemStorage%3CTypes%3E,+P%3E"],[1237,"impl-DataSourceLifeCycle-for-FetchingDataSource%3CMockTypes,+FileSystemStorage%3CMockTypes%3E,+P%3E"],[1351,"impl-StatusDataSource-for-FetchingDataSource%3CTypes,+S,+P%3E"],[1352,"impl-NodeDataSource%3CTypes%3E-for-FetchingDataSource%3CTypes,+S,+P%3E"],[1533,"impl-DataSourceLifeCycle-for-FetchingDataSource%3CMockTypes,+SqlStorage,+P%3E"],[1534,"impl-FetchingDataSource%3CTypes,+SqlStorage,+P%3E"],[1678,"impl-NodeDataSource%3CMockTypes%3E-for-DataSource"],[1679,"impl-StatusDataSource-for-DataSource"],[1820,"impl-ToSql-for-LTree"],[1821,"impl-FromSql%3C\'a%3E-for-LTree"],[1835,"impl-AsRef%3Cdyn+Error+%2B+Send+%2B+Sync%3E-for-Error"],[1836,"impl-AsRef%3Cdyn+Error%3E-for-Error"],[1916,"impl-Debug-for-Error"],[1917,"impl-Display-for-Error"],[1918,"impl-Debug-for-Migration"],[1919,"impl-Display-for-Migration"],[2249,"impl-Provider%3CTypes,+VidCommonRequest%3E-for-AnyProvider%3CTypes%3E"],[2250,"impl-Provider%3CTypes,+PayloadRequest%3E-for-AnyProvider%3CTypes%3E"],[2251,"impl-Provider%3CTypes,+LeafRequest%3E-for-AnyProvider%3CTypes%3E"],[2252,"impl-Provider%3CTypes,+LeafRequest%3E-for-QueryServiceProvider"],[2253,"impl-Provider%3CTypes,+VidCommonRequest%3E-for-QueryServiceProvider"],[2254,"impl-Provider%3CTypes,+PayloadRequest%3E-for-QueryServiceProvider"],[2519,"impl-Debug-for-Snapshot%3CTypes,+T%3E"],[2520,"impl-Display-for-Snapshot%3CTypes,+T%3E"],[2521,"impl-Debug-for-Error"],[2522,"impl-Display-for-Error"],[2525,"impl-From%3CRequestError%3E-for-Error"],[2527,"impl-From%3CQueryError%3E-for-Error"],[2528,"impl-From%3C(String,+StatusCode)%3E-for-Error"],[2691,"impl-Debug-for-MetricsError"],[2692,"impl-Display-for-MetricsError"],[3001,"impl-Debug-for-Error"],[3002,"impl-Display-for-Error"],[3014,"impl-From%3C(String,+StatusCode)%3E-for-Error"],[3015,"impl-From%3CRequestError%3E-for-Error"],[3017,"impl-From%3CQueryError%3E-for-Error"],[3291,"impl-Display-for-Error"],[3292,"impl-Debug-for-Error"],[3296,"impl-From%3CRequestError%3E-for-Error"],[3297,"impl-From%3CString%3E-for-Error"]]}]\ +["hotshot_query_service",{"doc":"The HotShot Query Service is a minimal, generic query …","t":"PPPGPIFPIPFPPFPFIGIKIFPIIIINNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCONNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNQNNNNNNNQQQQQNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNCOCCOONNNNNNNOOHNNNNNCNNOCNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNCNNONNNNNNNOOOOOOOKIGFRFPFGRGPFPFPFPPRFPFRIGFRPPFPFRPKKPPFIIIIRFFKFRNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNNMMMMMMNNNNNNNNNNNNNNNNNNNNNONNONNNNNNNNNNNNNNNNNNNMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNOMNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONOOONNNNNNNNNNNNNNONNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOERFEIFEKKNNNNNNNNNNCNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNNCNNNNNNNMNNCCCNNNNNNNNNNNMNNNHHKFFFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHHHHHHHHIEFFEIENNNNNQENCNEHKEEECMMMMMMMMMMCCCFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNNNNNNGPPPPGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNORKKFKNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFFKFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNQQNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNENNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKFKEENNNNNNNNNNNNNNNNNNNNNNNNNCCMMNNNNNNNNFFKFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFKRFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNRPRPRRGPRKKFPPGRKKNNONNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNMNNNNMNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNMNNNNNNNNNNNNNNMNNNOOOOFFFFGPPPFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOEEPFGPPKFPFPFPFPFFPFGNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNOMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOONMNNNNNNNNNNOONNNNONOMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNOOOOOOOOOOGPFFPKKNNNNONNNNNNNNNNNNMNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNMNNNNMNNNNNNNNNONNNNNNNNNNNNNNNNNOOCCHHKIFSRKNNNNMMNNNNNNNNNMNNNNNNNNNNNNNMNNNNNNNNNNNIIIIFIIIIFNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHNNONNONNONONONNNONNNNNNNNNOOONNKM","n":["Availability","Custom","Err","Error","Error","Header","Leaf","MerklizedState","Metadata","Missing","MissingSnafu","Node","NotFound","NotFoundSnafu","Ok","Options","Payload","QueryError","QueryResult","Resolvable","SignatureKey","Snafu","Status","Transaction","VidCommitment","VidCommon","VidShare","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_error","as_error","as_error_source","as_error_source","as_error_source","as_error_source","augment_args","augment_args_for_update","availability","availability","backtrace","backtrace","block_header","block_payload","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","catch_all","cause","cause","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","commit","commitment","commitment","create_random_transaction","data_source","default","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","description","description","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","eq","equivalent","equivalent","equivalent","equivalent","fail","fail","fail","fetching","fill_block_payload","fill_block_payload_unchecked","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from_arg_matches","from_arg_matches_mut","genesis","get_block_header","get_block_payload","get_hash","get_height","get_justify_qc","get_parent_commitment","get_payload_commitment","get_proposer_id","get_view_number","group_id","hash","header","header","header","in_current_span","in_current_span","include_migrations","init","init","init","init","init","init","init","instantiate_availability_tests","instantiate_data_source_tests","instantiate_node_tests","instantiate_persistence_tests","instantiate_status_tests","internal","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_error","into_error","into_error","justify_qc","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","merklized_state","message","metrics","node","node","parent_commitment","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","port","proposer_id","run_standalone_service","serialize","serialize","serialize","source","source","status","status","status","status","testing","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","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_resolve","try_resolve","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_name","type_name","type_name","type_name","type_name","type_name","type_name","types","update_from_arg_matches","update_from_arg_matches_mut","view_number","vzip","vzip","vzip","vzip","vzip","vzip","vzip","message","source","source","source","source","status","message","AvailabilityDataSource","BlockHash","BlockId","BlockQueryData","BlockRange","BlockSummaryQueryData","Custom","CustomSnafu","Error","Error","Fetch","FetchBlock","FetchBlockSnafu","FetchLeaf","FetchLeafSnafu","FetchTransaction","FetchTransactionSnafu","Hash","Hash","InclusionProof","InconsistentLeafError","InvalidTransactionIndex","InvalidTransactionIndexSnafu","Iter","LeafHash","LeafId","LeafQueryData","LeafRange","Number","Number","Options","PayloadHash","PayloadQueryData","PayloadRange","Pending","QueryableHeader","QueryablePayload","Ready","Request","RequestSnafu","Timestamp","TransactionHash","TransactionInclusionProof","TransactionIndex","TransactionIndex","TransactionQueryData","TransactionSummaryQueryData","UpdateAvailabilityData","VidCommonQueryData","VidCommonRange","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","api_path","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_error","as_error","as_error_source","as_error_source","as_error_source","as_error_source","augment_args","augment_args_for_update","backtrace","backtrace","block_hash","block_hash","block_hash","block_hash","borrow","borrow","borrow","borrow","borrow","borrow","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","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","by_hash","by_hash","cause","cause","clone","clone","clone","clone","clone","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","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","common","compare","compare","context","data","default","define_api","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","description","description","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","enumerate","enumerate","enumerate","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","extensions","fail","fail","fail","fail","fail","fetch_timeout","fmt","fmt","fmt","fmt","fmt","fmt","fmt","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","from","from","from","from","from","from","from","from","from_arg_matches","from_arg_matches_mut","genesis","genesis","genesis","genesis","get_block","get_block_range","get_block_with_transaction","get_hash","get_hash","get_leaf","get_leaf_range","get_payload","get_payload_range","get_vid_common","get_vid_common_range","group_id","hash","hash","hash","hash","hash","hash","hash","header","header","header","header","header","header","header","height","height","height","height","height","height","height","in_current_span","in_current_span","index","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","insert_block","insert_leaf","insert_vid","internal","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_error","into_error","into_error","into_error","into_error","into_error","into_future","is_empty","is_empty","is_empty","iter","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","leaf","leaf","len","len","map","message","metadata","new","new","new","nth","nth","nth_transaction","nth_transaction","nth_transaction_with_proof","nth_transaction_with_proof","num_transactions","num_transactions","partial_cmp","partial_cmp","payload","payload_hash","payload_hash","payload_hash","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","proof","proof","qc","qc_leaf","resolve","resource","resource","resource","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","size","size","size","source","source","status","status","subscribe_blocks","subscribe_blocks","subscribe_leaves","subscribe_leaves","subscribe_payloads","subscribe_payloads","subscribe_vid_common","subscribe_vid_common","timestamp","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_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","transaction","transaction","transaction","transaction","transaction_by_hash","transaction_by_hash","transaction_by_hash","transaction_by_hash_with_proof","transaction_by_hash_with_proof","transaction_with_proof","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_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","try_into","try_into","try_into","try_into","try_into","try_into","try_resolve","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","type_id","type_id","type_id","type_id","type_id","type_id","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","update_from_arg_matches","update_from_arg_matches_mut","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_timeout","height","index","message","resource","resource","resource","source","status","AvailabilityProvider","Error","ExtensibleDataSource","FetchingDataSource","FileSystemDataSource","MetricsDataSource","SqlDataSource","UpdateDataSource","VersionedDataSource","__clone_box","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any_mut","as_any_mut","as_mut","as_ref","availability_tests","block_height","block_height","block_height","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","commit","commit","connect","connect","connect","count_transactions","create","create","create","create","create_with_store","default","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","fetching","fmt","fmt","from","from","get_block","get_block_range","get_block_with_transaction","get_header_window","get_leaf","get_leaf_range","get_path","get_payload","get_payload_range","get_vid_common","get_vid_common_range","handle_event","handle_event","handle_event","init","init","inner","inner_mut","insert_block","insert_leaf","insert_merkle_nodes","insert_vid","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","metrics","metrics","new","node_tests","open","open_with_store","payload_size","persistence_tests","pointer_metadata","pointer_metadata","populate_metrics","populate_metrics","reset","reset","reset","revert","revert","skip_version","sql","status_tests","storage","sync_status","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","type_name","type_name","update","vid_share","vzip","vzip","test_range","test_update","AvailabilityProvider","Builder","FetchingDataSource","Pruner","StorageReadGuard","StorageWriteGuard","__clone_box","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","block_height","block_height","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","builder","clone","clone","clone_into","clone_into","commit","connect","count_transactions","create","create_with_store","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","disable_proactive_fetching","drop","drop","drop","drop","drop","fmt","fmt","from","from","from","from","from","from","from","get_block","get_block_range","get_block_with_transaction","get_header_window","get_leaf","get_leaf_range","get_path","get_payload","get_payload_range","get_vid_common","get_vid_common_range","init","init","init","init","init","insert_block","insert_leaf","insert_merkle_nodes","insert_vid","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","metrics","new","open","open_with_store","payload_size","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","populate_metrics","revert","skip_version","storage","storage_mut","sync_status","to_owned","to_owned","transaction","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","type_name","type_name","type_name","type_name","type_name","vid_share","vzip","vzip","vzip","vzip","vzip","with_major_scan_interval","with_minor_scan_interval","with_proactive_range_chunk_size","with_range_chunk_size","with_retry_delay","test_counters","test_sync_status","test_timestamp_window","test_vid_monotonicity","test_vid_recovery","test_vid_shares","test_reset","test_revert","Builder","Config","Error","Migration","Query","SqlDataSource","Transaction","client","connect","connect","create","handle_event","include_migrations","postgres","reset","testing","transaction","TmpDb","test_metrics","AvailabilityStorage","FileSystemStorage","NoStorage","SqlStorage","fs","get_block","get_block_range","get_block_with_transaction","get_header","get_leaf","get_leaf_range","get_payload","get_payload_range","get_vid_common","get_vid_common_range","no_storage","pruning","sql","FileSystemStorage","as_any","as_any_mut","block_height","borrow","borrow_mut","commit","count_transactions","create","create_with_store","deref","deref_mut","deserialize","drop","fmt","from","get_block","get_block_range","get_block_with_transaction","get_header","get_header_window","get_leaf","get_leaf_range","get_payload","get_payload_range","get_vid_common","get_vid_common_range","init","insert_block","insert_leaf","insert_vid","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","layout_raw","open","open_with_store","payload_size","pointer_metadata","revert","skip_version","sync_status","try_from","try_into","type_id","type_name","vid_share","vzip","NoStorage","__clone_box","__clone_box","as_any","as_any_mut","block_height","borrow","borrow_mut","clone","clone_into","commit","count_transactions","default","deref","deref_mut","deserialize","drop","fmt","from","get_block","get_block_range","get_block_with_transaction","get_header","get_header_window","get_leaf","get_leaf_range","get_payload","get_payload_range","get_vid_common","get_vid_common_range","init","insert_block","insert_leaf","insert_vid","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","layout_raw","payload_size","pointer_metadata","revert","sync_status","testing","to_owned","try_from","try_into","type_id","type_name","vid_share","vzip","DataSource","NoStorage","NoStorage","Sql","Sql","Storage","as_any","as_any","as_any_mut","as_any_mut","block_height","block_height","borrow","borrow","borrow_mut","borrow_mut","commit","connect","count_transactions","create","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","from","from","get_block","get_block_range","get_block_with_transaction","get_header_window","get_leaf","get_leaf_range","get_payload","get_payload_range","get_vid_common","get_vid_common_range","handle_event","init","init","insert_block","insert_leaf","insert_vid","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","metrics","payload_size","pointer_metadata","pointer_metadata","populate_metrics","reset","revert","setup","sync_status","try_from","try_from","try_into","try_into","type_id","type_id","type_name","type_name","vid_share","vzip","vzip","fetch_from_port","Error","PruneStorage","PrunedHeightStorage","PrunerCfg","PrunerConfig","__clone_box","__clone_box","as_any","as_any_mut","batch_size","borrow","borrow_mut","clone","clone_into","default","deref","deref_mut","deserialize","drop","fmt","from","get_disk_usage","get_pruning_config","init","interval","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","layout_raw","load_pruned_height","max_usage","minimum_retention","new","pointer_metadata","prune","pruning_threshold","save_pruned_height","set_pruning_config","target_retention","to_owned","try_from","try_into","type_id","type_name","validate","vzip","with_batch_size","with_interval","with_max_usage","with_minimum_retention","with_pruning_threshold","with_target_retention","Config","Error","LTree","Migration","Query","SqlStorage","Transaction","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","accepts","accepts","applied_on","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_ref","as_ref","backtrace","block_height","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_to_sql","builder","chain","checksum","client","client","client","clone","clone","clone","clone_into","clone_into","clone_into","cmp","commit","compare","connect","connect","context","count_transactions","database","default","default","default_migrations","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","downcast","downcast_mut","downcast_ref","drop","drop","drop","drop","drop","drop","drop","eq","equivalent","equivalent","equivalent","equivalent","execute","execute_many","execute_many_with_retries","execute_one","execute_one_with_retries","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from_sql","from_str","get_block","get_block_range","get_block_with_transaction","get_disk_usage","get_header","get_header_window","get_leaf","get_leaf_range","get_path","get_payload","get_payload_range","get_pruning_config","get_vid_common","get_vid_common_range","header","header","host","include_dir","include_migrations","init","init","init","init","init","init","insert_block","insert_leaf","insert_merkle_nodes","insert_vid","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","load_pruned_height","migrations","msg","name","new","no_migrations","partial_cmp","password","payload_size","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","port","postgres","prefix","prune","pruner_cfg","query","query_one","query_one_static","query_opt","query_opt_static","query_static","reset_schema","revert","root_cause","save_pruned_height","schema","serialize","set_pruning_config","sql","sync_status","testing","tls","to_owned","to_owned","to_owned","to_sql","to_sql_checked","to_string","to_string","transaction","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","type_name","type_name","type_name","type_name","type_name","type_name","unapplied","upsert","user","version","vid_share","vzip","vzip","vzip","vzip","vzip","vzip","TestMerkleTreeMigration","TmpDb","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","config","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","drop","fmt","from","from","host","init","init","init","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","pointer_metadata","pointer_metadata","port","try_from","try_from","try_into","try_into","type_id","type_id","type_name","type_name","vzip","vzip","Callback","Fetcher","LocalCallback","Provider","Request","__clone_box","__clone_box","as_any","as_any_mut","borrow","borrow_mut","clone","clone_into","default","deref","deref_mut","deserialize","drop","fmt","from","init","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","layout_raw","pointer_metadata","provider","request","run","run","spawn_fetch","to_owned","try_from","try_into","type_id","type_name","vzip","with_retry_delay","AnyProvider","NoFetching","Provider","QueryServiceProvider","TestProvider","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","block","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","default","default","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","fail","fetch","fetch","fetch","fetch","fetch","fetch","fetch","fetch","fetch","fmt","fmt","fmt","fmt","from","from","from","from","init","init","init","init","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","layout_raw","layout_raw","new","new","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_name","type_name","type_name","type_name","unblock","unfail","vzip","vzip","vzip","vzip","with_block_provider","with_leaf_provider","with_provider","with_vid_common_provider","LeafRequest","PayloadRequest","Request","Response","VidCommonRequest","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","from","from","from","from","get_hash","get_hash","get_hash","hash","hash","hash","init","init","init","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","layout_raw","pointer_metadata","pointer_metadata","pointer_metadata","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","type_name","type_name","type_name","vzip","vzip","vzip","Arity","Commit","Commit","Custom","Digest","Entry","Error","Index","Key","MerklizedState","MerklizedStateDataSource","Options","Query","Request","Snapshot","T","UpdateStateData","UpdateStateStorage","__clone_box","__clone_box","api_path","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_error","as_error_source","as_error_source","augment_args","augment_args_for_update","backtrace","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","cause","clone","clone_into","cmp","compare","default","define_api","deref","deref","deref","deref_mut","deref_mut","deref_mut","description","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","eq","equivalent","equivalent","equivalent","equivalent","extensions","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from_arg_matches","from_arg_matches_mut","get_hash","get_path","group_id","hash","header","header","header_state_commitment_field","in_current_span","init","init","init","insert_merkle_nodes","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","layout_raw","partial_cmp","pointer_metadata","pointer_metadata","pointer_metadata","serialize","source","state_type","status","to_owned","to_string","to_string","tree_height","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","type_name","type_name","type_name","update_from_arg_matches","update_from_arg_matches_mut","update_storage","vzip","vzip","vzip","message","source","source","status","Counter","Gauge","Histogram","Label","MetricsError","NoSuchMetric","NoSuchSubgroup","Prometheus","PrometheusMetrics","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","add","add_point","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_error","as_error_source","as_error_source","backtrace","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cause","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","create_counter","create_gauge","create_histogram","create_label","default","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","description","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","export","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","get","get","get","get_counter","get_gauge","get_histogram","get_label","get_subgroup","header","in_current_span","init","init","init","init","init","init","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","mean","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","sample_count","set","set","source","subgroup","sum","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_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_name","type_name","type_name","type_name","type_name","type_name","update","vzip","vzip","vzip","vzip","vzip","vzip","label","namespace","path","source","BlockHash","BlockId","Custom","CustomSnafu","Error","Hash","Height","NodeDataSource","Options","Query","QuerySnafu","QueryVid","QueryVidSnafu","QueryWindow","QueryWindowSnafu","Request","RequestSnafu","SyncStatus","Time","TimeWindowQueryData","WindowStart","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","api_path","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_error","as_error_source","as_error_source","augment_args","augment_args_for_update","backtrace","block","block_height","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","build","cause","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","cmp","compare","count_transactions","default","default","define_api","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","description","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","end","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","extensions","fail","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_arg_matches","from_arg_matches_mut","fully_synced","get_hash","get_header_window","group_id","hash","header","in_current_span","init","init","init","init","init","init","init","init","init","init","internal","into","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_error","into_error","into_error","into_error","into_error","is_fully_synced","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","message","missing_blocks","missing_leaves","missing_vid_common","missing_vid_shares","next","partial_cmp","payload_size","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","prev","pruned_height","serialize","serialize","serialize","source","start","status","status","sync_status","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_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_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","type_name","update_from_arg_matches","update_from_arg_matches_mut","vid_share","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","window","block","end","message","source","source","source","source","start","status","Error","Internal","MempoolQueryData","Options","Request","StatusDataSource","UpdateStatusData","__clone_box","__clone_box","__clone_box","__clone_box","api_path","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_error","as_error_source","as_error_source","augment_args","augment_args_for_update","backtrace","block_height","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","cause","clone","clone","clone_into","clone_into","cmp","compare","consensus_metrics","consensus_metrics","default","default","define_api","deref","deref","deref","deref_mut","deref_mut","deref_mut","description","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","elapsed_time_since_last_decide","elapsed_time_since_last_decide","eq","equivalent","equivalent","equivalent","equivalent","extensions","fmt","fmt","fmt","from","from","from","from","from","from_arg_matches","from_arg_matches_mut","get_hash","group_id","hash","header","in_current_span","init","init","init","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","layout_raw","layout_raw","layout_raw","memory_footprint","mempool_info","mempool_info","metrics","partial_cmp","pointer_metadata","pointer_metadata","pointer_metadata","populate_metrics","serialize","serialize","source","status","success_rate","success_rate","to_owned","to_owned","to_string","transaction_count","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","type_name","type_name","type_name","update_from_arg_matches","update_from_arg_matches_mut","vzip","vzip","vzip","reason","source","consensus","mocks","setup_test","sleep","DataSourceLifeCycle","MockDataSource","MockNetwork","NUM_NODES","Storage","TestableDataSource","as_any","as_any_mut","borrow","borrow_mut","connect","create","data_source","data_source_index","deref","deref_mut","deserialize","drop","drop","from","handle","handle_event","init","init","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","layout_raw","num_nodes","pointer_metadata","proposer","reset","setup","shut_down","spawn","start","storage","submit_transaction","try_from","try_into","type_id","type_name","vzip","MockHeader","MockMembership","MockMerkleTree","MockNetwork","MockNodeImpl","MockPayload","MockQuorumProposal","MockStorage","MockTransaction","MockTypes","__clone_box","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any_mut","as_any_mut","block_header","block_number","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cmp","cmp","compare","compare","default","default","deref","deref","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","get_hash","get_hash","hash","hash","header_state_commitment_field","height","init","init","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","iter","justify_qc","layout_raw","layout_raw","len","mock_transaction","partial_cmp","partial_cmp","payload_commitment","pointer_metadata","pointer_metadata","proposer_id","serialize","serialize","should_return_err","state_type","timeout_certificate","timestamp","timestamp","to_owned","to_owned","transaction_with_proof","transactions","tree_height","try_from","try_from","try_into","try_into","type_id","type_id","type_name","type_name","upgrade_certificate","view_number","view_sync_certificate","vzip","vzip","HeightIndexed","height"],"q":[[0,"hotshot_query_service"],[339,"hotshot_query_service::Error"],[345,"hotshot_query_service::QueryError"],[346,"hotshot_query_service::availability"],[1194,"hotshot_query_service::availability::Error"],[1202,"hotshot_query_service::data_source"],[1332,"hotshot_query_service::data_source::availability_tests"],[1334,"hotshot_query_service::data_source::fetching"],[1520,"hotshot_query_service::data_source::node_tests"],[1526,"hotshot_query_service::data_source::persistence_tests"],[1528,"hotshot_query_service::data_source::sql"],[1545,"hotshot_query_service::data_source::sql::testing"],[1546,"hotshot_query_service::data_source::status_tests"],[1547,"hotshot_query_service::data_source::storage"],[1565,"hotshot_query_service::data_source::storage::fs"],[1617,"hotshot_query_service::data_source::storage::no_storage"],[1671,"hotshot_query_service::data_source::storage::no_storage::testing"],[1753,"hotshot_query_service::data_source::storage::no_storage::testing::Storage"],[1754,"hotshot_query_service::data_source::storage::pruning"],[1810,"hotshot_query_service::data_source::storage::sql"],[2096,"hotshot_query_service::data_source::storage::sql::testing"],[2152,"hotshot_query_service::fetching"],[2194,"hotshot_query_service::fetching::provider"],[2340,"hotshot_query_service::fetching::request"],[2457,"hotshot_query_service::merklized_state"],[2601,"hotshot_query_service::merklized_state::Error"],[2605,"hotshot_query_service::metrics"],[2824,"hotshot_query_service::metrics::MetricsError"],[2828,"hotshot_query_service::node"],[3222,"hotshot_query_service::node::Error"],[3231,"hotshot_query_service::status"],[3375,"hotshot_query_service::status::Error"],[3377,"hotshot_query_service::testing"],[3381,"hotshot_query_service::testing::consensus"],[3428,"hotshot_query_service::testing::mocks"],[3545,"hotshot_query_service::types"],[3547,"dyn_clone::sealed"],[3548,"dyn_clone::sealed"],[3549,"core::error"],[3550,"clap_builder::builder::command"],[3551,"std::backtrace"],[3552,"core::option"],[3553,"alloc::string"],[3554,"core::convert"],[3555,"tide_disco::status"],[3556,"core::clone"],[3557,"hotshot_types::traits::node_implementation"],[3558,"commit"],[3559,"commit"],[3560,"core::result"],[3561,"serde::de"],[3562,"rkyv::with"],[3563,"hotshot_types::data"],[3564,"core::fmt"],[3565,"core::fmt"],[3566,"clap_builder"],[3567,"core::hash"],[3568,"core::marker"],[3569,"core::hash"],[3570,"hotshot_types::simple_certificate"],[3571,"hotshot_types::simple_certificate"],[3572,"core::hash"],[3573,"core::fmt"],[3574,"alloc::sync"],[3575,"alloc::rc"],[3576,"core::alloc::layout"],[3577,"core::alloc::layout"],[3578,"hotshot_types::traits::node_implementation"],[3579,"serde::ser"],[3580,"serde::ser"],[3581,"core::cmp"],[3582,"core::cmp"],[3583,"snafu"],[3584,"tide_disco::api"],[3585,"tide_disco::request"],[3586,"core::future::future"],[3587,"core::pin"],[3588,"futures_core::stream"],[3589,"core::marker"],[3590,"core::ops::function"],[3591,"hotshot_types::simple_certificate"],[3592,"std::path"],[3593,"anyhow"],[3594,"atomic_store::atomic_store"],[3595,"hotshot_types::event"],[3596,"core::default"],[3597,"jf_primitives::merkle_tree::internal"],[3598,"alloc::vec"],[3599,"hotshot_types::traits::metrics"],[3600,"async_lock::rwlock"],[3601,"async_lock::rwlock"],[3602,"postgres_types"],[3603,"time::offset_date_time"],[3604,"postgres_types"],[3605,"core::iter::traits::collect"],[3606,"tokio_postgres::config"],[3607,"core::iter::traits::double_ended"],[3608,"refinery_core::runner"],[3609,"bytes::bytes_mut"],[3610,"postgres_types"],[3611,"postgres_types"],[3612,"hotshot_types::traits::metrics"],[3613,"serde::de"]],"d":["","","Contains the error value","","There was an error while trying to fetch the requested …","","This is the consensus-internal analogous concept to a …","","","The requested resource exists but is not currently …","SNAFU context selector for the QueryError::Missing variant","","The requested resource does not exist or is not known to …","SNAFU context selector for the QueryError::NotFound variant","Contains the success value","","","","","A reference to a T which can be resolved into a whole T.","","SNAFU context selector for the QueryError::Error variant","","Item within a Payload.","VID commitment type","VID common type","VID share type","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Queries for HotShot chain state.","","","","Block header.","Optional block payload.","","","","","","","","","","","","","","","Consume the selector and return the associated error","Consume the selector and return the associated error","Consume the selector and return the associated error","","","","","","","","","","","","","","","","","Get a commitment to the underlying object.","","","Persistent storage and sources of data consumed by APIs.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Consume the selector and return a Result with the …","Consume the selector and return a Result with the …","Consume the selector and return a Result with the …","Fetching missing data from remote providers.","Fill this leaf with the block payload.","Fill this leaf with the block payload, without checking …","","","","","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Create a new leaf from its components.","The block header contained in this leaf.","Optional block payload.","","Height of this leaf in the chain.","The QC linking this leaf to its parent in the chain.","Commitment to this leaf’s parent.","A commitment to the block payload contained in this leaf.","Identity of the network participant who proposed this leaf.","Time when this leaf was created.","","","","","","","","Embed migrations from the given directory into the current …","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Per spec, justification","","","","","","","","Api for querying merklized state","","","A node’s view of a HotShot chain","","The hash of the parent Leaf So we can ask if it extends","","","","","","","","","the proposer id of the leaf","Run an instance of the HotShot Query service with no …","","","","","","Queries for node-specific state and uncommitted data.","","","","","","","","","","","","","","","","","","","","","","","","","","","","Get the underlying object if it is available without …","","","","","","","","","","","","","","","","Common functionality provided by types used in this crate.","","","CurView from leader when proposing leaf","","","","","","","","","","","","","","","An interface for querying a HotShot blockchain.","A block hash is the hash of the block header.","","","","","","SNAFU context selector for the Error::Custom variant","","","An in-progress request to fetch some data.","","SNAFU context selector for the Error::FetchBlock variant","","SNAFU context selector for the Error::FetchLeaf variant","","SNAFU context selector for the Error::FetchTransaction …","","","A proof that a certain transaction exists in the block.","","","SNAFU context selector for the …","Enumerate the transactions in this block.","","","","","","","","","","","","","A block payload whose contents (e.g. individual …","","","SNAFU context selector for the Error::Request variant","","","","","An index which can be used to efficiently retrieve a …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Consume the selector and return the associated error","Consume the selector and return the associated error","Consume the selector and return the associated error","Consume the selector and return the associated error","Consume the selector and return the associated error","Get the index of the transaction with a given hash, if it …","Get the index of the transaction with a given hash, if it …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Convert this Fetch to a Result with the provided error …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Enumerate the transactions in the block with their indices.","Enumerate the transactions in the block with their indices.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Additional API specification files to merge with …","Consume the selector and return a Result with the …","Consume the selector and return a Result with the …","Consume the selector and return a Result with the …","Consume the selector and return a Result with the …","Consume the selector and return a Result with the …","Timeout for failing requests due to missing data.","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","","","","","Returns the block containing a transaction with the given …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Whether this block is empty of transactions.","Whether this block is empty of transactions.","","List the transaction indices in the block.","","","","","","","","","","","","","","","","","","","","","","The number of transactions in the block.","","Transform the result of this fetch.","","","Collect information about a Leaf.","","","Get the index of the nth transaction.","Get the index of the nth transaction.","Get the nth transaction.","Get the nth transaction.","Get the nth transaction, along with an inclusion proof.","Get the nth transaction, along with an inclusion proof.","","","","","","","","","","","","","","","","","","","","","","","","","","","","Get an inclusion proof for a transaction with a given …","Get an inclusion proof for a transaction with a given …","","","Wait for the data to become available, if it is not …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Get a transaction by its block-specific index.","Get a transaction by its block-specific index.","","","Get the transaction with a given hash, if it is in the …","Get the transaction with a given hash, if it is in the …","","Get the transaction with a given hash, if it is in the …","Get the transaction with a given hash, if it is in the …","Get a transaction by its block-specific index, along with …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Get the requested data if it is available immediately.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Convert this Fetch to a Result with the provided error …","Wait for the requested data to become available, but only …","","","","","","","","","","","Wrapper to add extensibility to an existing data source.","","A data source for the APIs provided in this crate, backed …","A minimal data source for the status API provided in this …","","An extension trait for types which implement the update …","A data source with an atomic transaction-based …","","","","","","","","","","","Generic tests we can instantiate for all the availability …","","","","","","","","","","","","Atomically commit to all outstanding modifications to the …","","","","","","","Create a new FileSystemDataSource with storage at path.","","","Create a new FileSystemDataSource using a persistent …","","","","","","","","","","Asynchronous retrieval of missing data.","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","Access the underlying data source.","Mutably access the underlying data source.","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","Generic tests we can instantiate for all the node data …","Open an existing FileSystemDataSource from storage at path.","Open an existing FileSystemDataSource using a persistent …","","Generic tests we can instantiate for any data source with …","","","","","","","","Erase all oustanding modifications to the data.","","Advance the version of the persistent store without …","","Generic tests we can instantiate for all the status data …","Persistent storage for data sources.","","","","","","","","","","","","Update query state based on a new consensus event.","","","","","","A provider which can be used as a fetcher by the …","Builder for FetchingDataSource with configuration.","The most basic kind of data source.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Build a FetchingDataSource with these options.","Build a FetchingDataSource with the given storage and …","","","","","","Connect to a remote database.","","Create a new FileSystemDataSource with storage at path.","Create a new FileSystemDataSource using a persistent …","","","","","","","","","","","","","","","","","","","Run without proactive fetching.","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Construct a new builder with the given storage and fetcher …","Open an existing FileSystemDataSource from storage at path.","Open an existing FileSystemDataSource using a persistent …","","","","","","","","","Advance the version of the persistent store without …","Obtain direct, read-only access to the underlying local …","Obtain direct, mutable access the underlying local storage.","","","","Access the transaction which is accumulating all …","","","","","","","","","","","","","","","","","","","","","","","","","","","Set the interval (denominated in minor scans) between …","Set the time interval between minor proactive fetching …","Set the number of items to process at a time when scanning …","Set the number of items to process at a time when loading …","Set the maximum delay between retries of fetches.","","","","","","","","","","","The Error type, a wrapper around a dynamic error type.","Represents a schema migration to be run on the database, …","","A data source for the APIs provided in this crate, backed …","","","Connect to a remote database.","","","","Embed migrations from the given directory into the current …","","","","Access the transaction which is accumulating all …","","","Persistent storage for a HotShot blockchain.","","","","","","","","","","","","","","","","","","Storage for the APIs provided in this crate, backed by a …","","","","","","","","Create a new FileSystemStorage with storage at path.","Create a new FileSystemStorage using a persistent storage …","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","Calls U::from(self).","","","","","","","","Open an existing FileSystemStorage from storage at path.","Open an existing FileSystemStorage using a persistent …","","","","Advance the version of the persistent store without …","","","","","","","","Mock storage implementation which doesn’t actually store …","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","Either Postgres or no storage.","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Returns the block containing a transaction with the given …","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Number of blocks to remove in a single pruning operation.","","","","","","","","","","","Returns the argument unchanged.","","","","Pruning interval","Calls U::from(self).","","","","","","","","","Maximum disk usage (in basis points).","Minimum data retention period","","","","Disk space threshold (in bytes).","","","Target data retention period","","","","","","","","","","","","","","Postgres client config.","The Error type, a wrapper around a dynamic error type.","LTree SQL data type","Represents a schema migration to be run on the database, …","","Storage for the APIs provided in this crate, backed by a …","An atomic SQL transaction.","","","","","","","","","Get the timestamp from when the Migration was applied. None…","","","","","","","","","","","","","","","Get the backtrace for this Error.","","","","","","","","","","","","","","","Connect to the database, setting options on the underlying …","An iterator of the chain of source errors contained by …","Get the Migration checksum. Checksum is formed from the …","","","","","","","","","","","","","Connect to the database with this config.","Connect to a remote database.","Wrap the error value with additional context.","","Set the name of the database to connect to.","","","The migrations requied to build the default schema for …","","","","","","","","","","","","","","","","","","","","","","Attempt to downcast the error object to a concrete type.","Downcast this error object by mutable reference.","Downcast this error object by reference.","","","","","","","","","","","","","Execute a statement against the underlying database.","Execute a statement that is expected to modify at least …","Execute a statement that is expected to modify at least …","Execute a statement that is expected to modify exactly one …","Execute a statement that is expected to modify exactly one …","","","","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","","","","","","Retreives a Merkle path from the database","","","","","","","","Set the hostname of the database server.","Embed the contents of a directory in your crate.","Embed migrations from the given directory into the current …","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns true if E is the type held by this error object.","","","","","","","","Add custom migrations to run when connecting to the …","Create a new error object from a printable error message.","Get the Migration Name","Create a new error object from any error type.","Skip all migrations when connecting to the database.","","Set a password for connecting to the database.","","","","","","","","Set the port on which to connect to the database.","","Get the Prefix","","","","Query the underlying SQL database, returning exactly one …","Query the underlying SQL database with no parameters, …","Query the underlying SQL database, returning zero or one …","Query the underlying SQL database with no parameters, …","Query the underlying SQL database with no parameters.","Reset the schema on connection.","","The lowest level cause of this error — this error’s …","","Set the name of the schema to use for queries.","","","","","","Use TLS for an encrypted connection to the database.","","","","","","","","Access the transaction which is accumulating all …","","","","","","","","","","","","","","","","","","","","","","","","","Create an unapplied migration, name and version are parsed …","","Set the DB user to connect as.","Get the Migration version","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","A callback to process the result of a request.","Management of concurrent requests to fetch resources.","A callback to process the result of a request.","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","Asynchronous fetching from external data availability …","Requests for fetching resources.","","","Fetch a resource, if it is not already being fetched.","","","","","","","","Adaptor combining multiple data availability providers.","Trivial Provider where fetching always fails.","A provider which is able to satisfy requests for data of …","Data availability provider backed by another instance of …","Adaptor to add test-only functionality to an existing …","","","","","","","","","","","","","","","","","Delay fetch requests until unblock.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Cause subsequent requests to fail.","Fetch a resource.","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Allow blocked fetch requests to proceed.","Stop requests from failing as a result of a previous call …","","","","","Add a sub-provider which fetches blocks.","Add a sub-provider which fetches leaves.","Add a sub-provider which fetches both blocks and leaves.","Add a sub-provider which fetches VID common data.","A request for a leaf with a given height.","A request for a payload with a given commitment.","A request for a resource.","The type of resource that will be returned as a successful …","A request for VID common data.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","This trait should be implemented by the MerkleTree that …","This trait defines methods that a data source should …","","","","","","This trait defines methods for updating the storage with …","This trait should be implemented by types that represent …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Additional API specification files to merge with …","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","","","","","","Retrieves the field in the header containing the Merkle …","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","Retrieves the name of the state being queried.","","","","","Get the height of the tree","","","","","","","","","","","","","","","","","","","","","","","A Counter metric.","A Gauge metric.","A Histogram metric.","A Label metric.","","","","","A Prometheus-based implementation of a Metrics registry.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Get a counter in this sub-group by name.","Get a gauge in this sub-group by name.","Get a histogram in this sub-group by name.","Get a label in this sub-group by name.","Get a (possibly nested) subgroup of this group by its path.","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","SNAFU context selector for the Error::Custom variant","","","","","","","SNAFU context selector for the Error::Query variant","","SNAFU context selector for the Error::QueryVid variant","","SNAFU context selector for the Error::QueryWindow variant","","SNAFU context selector for the Error::Request variant","","","Response to a /:resource/window query.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Consume the selector and return the associated error","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Additional API specification files to merge with …","Consume the selector and return a Result with the …","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","The block height of the block that starts the window.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Additional API specification files to merge with …","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Backing storage for the data source.","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","Calls U::from(self).","","","","","","","","","","","","Setup runs after setting up the network but before …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The block header to append","Block number.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","Per spec, justification","","","","","","","VID commitment to the payload.","","","the propser id","","","should_return_err is a testing utility to validate …","","Possible timeout certificate. Only present if the …","","Timestamp when this header was created.","","","","List of transactions.","","","","","","","","","","Possible upgrade certificate, which the leader may …","CurView from leader when proposing leaf","Possible view sync certificate. Only present if the …","","","Types which have a notion of “height” within a chain.",""],"i":[7,7,169,0,10,0,0,7,0,10,0,7,10,0,169,0,0,0,0,0,0,0,7,0,0,0,0,17,17,7,7,11,11,12,12,13,13,10,10,17,7,11,12,13,10,25,17,7,11,12,13,10,25,7,10,7,7,10,10,25,25,0,25,7,10,17,17,17,7,11,12,13,10,25,17,7,11,12,13,10,25,11,12,13,7,7,10,17,7,11,12,13,10,17,7,11,12,13,10,17,21,17,17,0,25,17,7,11,12,13,10,25,17,7,11,12,13,10,25,7,10,17,17,7,7,11,12,13,10,10,25,17,7,11,12,13,10,25,17,17,17,17,17,11,12,13,0,17,17,17,17,7,7,11,12,13,10,10,17,7,7,7,7,7,7,11,12,13,10,25,25,25,17,17,17,17,17,17,17,17,17,17,25,17,17,7,10,7,10,0,17,7,11,12,13,10,25,0,0,0,0,0,7,17,7,11,12,13,10,25,17,17,7,7,11,11,12,12,13,13,10,10,25,25,17,17,7,7,11,11,12,12,13,13,10,10,25,25,17,17,7,7,11,11,12,12,13,13,10,10,25,25,11,12,13,17,17,7,11,12,13,10,25,0,13,0,0,25,17,17,7,11,12,13,10,25,25,17,0,17,7,10,7,10,0,7,10,25,0,17,7,11,12,13,10,17,7,10,17,7,11,12,13,10,25,17,7,11,12,13,10,25,21,17,17,7,11,12,13,10,25,17,7,11,12,13,10,25,0,25,25,17,17,7,11,12,13,10,25,250,251,252,253,254,250,255,0,0,0,0,61,0,38,0,0,127,0,38,0,38,0,38,0,92,93,85,0,38,0,85,0,0,0,61,92,93,0,93,0,61,100,0,0,100,38,0,0,0,0,0,85,0,0,0,0,61,92,92,93,93,72,72,71,71,94,94,74,74,75,75,76,76,95,95,96,96,97,97,77,77,78,78,79,79,80,80,81,81,38,38,106,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,38,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,38,71,38,71,71,38,38,106,106,71,38,72,74,75,76,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,38,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,38,77,78,79,80,81,85,85,71,38,92,93,72,71,94,74,75,76,95,96,97,77,78,79,80,81,38,92,93,72,71,94,74,75,76,95,96,97,77,78,79,80,81,38,92,93,75,92,93,100,74,106,0,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,38,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,38,71,38,100,92,93,72,72,71,94,94,74,74,75,75,76,76,95,95,96,96,106,97,77,78,79,80,81,38,38,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,38,85,85,94,92,93,72,94,74,75,76,95,96,92,92,92,92,93,93,93,93,72,72,72,72,94,94,94,94,74,74,74,74,75,75,75,75,76,76,76,76,95,95,95,95,96,96,96,96,106,77,78,79,80,81,106,92,92,93,93,72,71,71,94,74,75,76,95,96,97,77,78,79,80,81,38,38,100,92,92,92,93,93,93,72,71,94,74,74,75,76,95,95,96,106,97,77,78,79,80,81,38,38,38,106,106,72,94,74,75,61,61,61,92,93,61,61,61,61,61,61,106,92,93,72,94,74,76,95,92,93,72,71,94,95,38,72,94,74,75,76,95,80,71,38,80,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,38,127,127,127,38,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,38,100,100,92,92,93,93,72,72,71,71,94,94,74,74,75,75,76,76,95,95,96,96,106,106,97,97,77,77,78,78,79,79,80,80,81,81,38,38,92,92,93,93,72,72,71,71,94,94,74,74,75,75,76,76,95,95,96,96,106,106,97,97,77,77,78,78,79,79,80,80,81,81,38,38,100,100,92,92,93,93,72,72,71,71,94,94,74,74,75,75,76,76,95,95,96,96,106,106,97,97,77,77,78,78,79,79,80,80,81,81,38,38,97,77,78,79,80,81,100,85,85,94,85,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,38,72,71,85,94,100,81,94,72,94,75,85,85,85,85,85,85,94,95,92,93,94,72,94,75,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,38,85,85,72,71,100,77,78,79,72,94,74,75,76,95,96,38,94,74,95,71,38,38,81,61,61,61,61,61,61,61,61,133,92,93,72,71,94,74,75,76,95,96,97,77,78,79,80,81,38,92,93,71,38,85,85,94,76,85,85,94,85,85,85,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,38,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,38,100,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,38,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,38,106,106,100,92,93,72,71,94,74,75,76,95,96,106,97,77,78,79,80,81,38,100,100,256,256,257,258,259,260,261,257,0,65,0,0,0,0,0,0,0,135,135,136,136,135,136,135,136,135,135,0,135,135,136,135,136,135,136,135,136,135,136,65,135,138,135,136,135,138,138,135,136,138,136,135,136,135,136,135,136,135,136,0,135,136,135,136,135,135,135,135,135,135,135,135,135,135,135,138,135,136,135,136,135,135,135,135,135,135,135,136,135,135,136,136,135,135,136,136,135,135,136,136,135,136,135,136,135,0,138,138,135,0,135,136,135,136,138,135,136,65,135,138,0,0,0,135,135,136,135,136,135,136,135,136,135,136,64,135,135,136,0,0,0,0,0,0,0,0,155,155,158,158,156,155,158,163,164,156,155,158,163,164,155,155,156,155,158,163,164,156,155,158,163,164,156,155,155,158,155,158,155,155,155,155,155,156,155,158,163,163,164,164,156,155,158,163,164,164,156,155,158,163,164,156,156,155,158,163,164,155,158,156,155,158,163,163,164,164,155,155,155,155,155,155,155,155,155,155,155,156,155,158,163,164,155,155,155,155,156,155,158,163,164,156,156,155,155,158,158,163,163,164,164,156,156,155,155,158,158,163,163,164,164,156,156,155,155,158,158,163,163,164,164,156,155,158,163,164,155,156,155,155,155,156,155,158,163,164,155,155,155,155,155,155,155,158,155,156,155,158,163,164,156,155,158,163,164,156,155,158,163,164,156,155,158,163,164,155,156,155,158,163,164,156,156,156,156,156,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,170,170,170,170,0,0,170,0,170,0,0,0,0,0,0,0,157,157,157,157,157,157,157,157,157,157,0,0,0,0,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,0,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,0,172,172,172,172,172,172,172,0,262,173,262,173,0,262,173,262,173,173,173,262,173,262,173,173,173,173,173,262,173,262,173,262,173,262,173,262,173,173,173,173,173,173,173,173,173,173,173,173,262,173,173,173,173,262,173,262,262,173,173,262,262,173,173,262,262,173,173,262,173,173,173,262,173,173,173,173,173,173,262,173,262,173,262,173,262,173,173,262,173,263,178,0,0,0,0,175,175,175,175,175,175,175,175,175,175,175,175,175,175,175,175,176,177,175,175,175,175,175,175,175,175,175,175,178,175,175,175,175,176,175,178,177,175,175,175,175,175,175,175,175,175,175,175,175,175,175,0,0,0,0,0,0,0,181,181,159,159,186,186,186,186,181,161,181,168,159,167,186,161,181,168,159,167,186,161,161,161,167,161,181,168,159,167,186,161,181,168,159,167,186,186,159,161,181,185,168,167,181,159,186,181,159,186,181,167,181,159,167,161,167,159,159,186,0,161,161,181,168,159,167,186,161,161,181,168,159,167,186,161,181,168,159,167,186,186,161,161,161,161,161,181,168,159,167,186,181,181,181,181,181,168,168,168,168,168,161,161,181,181,159,167,186,161,161,161,181,168,159,159,167,186,186,186,159,167,167,167,167,167,167,167,167,167,167,167,167,167,167,161,181,159,0,0,161,181,168,159,167,186,167,167,167,167,161,181,168,159,167,186,161,161,181,181,168,168,159,159,167,167,186,186,161,161,181,181,168,168,159,159,167,167,186,186,161,161,181,181,168,168,159,159,167,167,186,186,161,161,181,168,159,167,186,167,159,161,181,161,159,181,159,167,161,181,168,159,167,186,159,0,181,167,159,185,185,185,185,185,185,159,167,161,167,159,186,167,181,167,0,159,181,159,186,186,186,161,181,167,161,181,168,159,167,186,161,181,168,159,167,186,161,181,168,159,167,186,161,181,168,159,167,186,181,168,159,181,167,161,181,168,159,167,186,0,0,264,201,264,201,264,201,264,201,201,264,201,264,201,264,201,264,201,201,201,264,201,201,264,201,201,264,201,264,264,201,201,264,264,201,201,264,264,201,201,264,201,264,201,201,264,201,264,201,264,201,264,201,264,201,0,0,0,0,0,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,0,0,203,204,202,202,202,202,202,202,202,202,0,0,0,0,0,208,208,209,209,207,207,210,210,208,209,207,210,208,209,207,210,207,208,209,207,210,208,209,207,210,208,209,207,210,208,209,207,210,208,210,208,209,207,210,208,209,207,210,208,209,207,210,208,209,207,210,207,206,208,208,208,209,209,209,207,210,208,209,207,210,208,209,207,210,208,209,207,210,208,209,207,210,208,208,209,209,207,207,210,210,208,208,209,209,207,207,210,210,208,208,209,209,207,207,210,210,208,209,207,210,209,207,208,209,207,210,208,209,207,210,208,209,207,210,208,209,207,210,208,209,207,210,208,209,207,210,207,207,208,209,207,210,208,208,208,208,0,0,0,205,0,213,213,212,212,211,211,213,212,211,213,212,211,213,212,211,213,212,211,213,212,211,213,212,211,213,212,211,213,212,211,213,212,211,213,212,211,213,212,211,213,213,213,213,212,212,212,212,211,211,211,211,213,212,211,213,212,211,211,213,212,211,213,212,211,213,212,211,213,212,211,213,213,212,212,211,211,213,213,212,212,211,211,213,213,212,212,211,211,213,212,211,213,212,211,213,212,211,213,212,211,213,212,211,213,212,211,213,212,211,213,212,211,144,143,144,40,144,144,0,143,144,0,0,0,40,40,0,144,0,0,40,40,215,143,215,40,143,215,40,40,40,40,215,215,40,143,215,40,143,215,40,40,40,40,143,143,215,0,143,215,40,143,215,40,40,143,215,40,40,143,215,40,143,143,143,143,143,215,143,143,40,40,143,215,40,40,40,40,215,215,143,145,215,143,143,40,144,40,143,215,40,152,143,215,40,143,143,215,215,40,40,143,143,215,215,40,40,143,143,215,215,40,40,143,215,40,143,143,215,40,40,40,144,40,40,143,40,144,143,215,40,143,215,40,143,215,40,143,215,40,215,215,216,143,215,40,265,266,267,265,0,0,0,0,0,220,220,220,0,153,153,217,217,221,221,218,218,222,222,217,218,220,153,217,221,218,222,220,153,217,221,218,222,220,220,220,220,220,153,217,221,218,222,220,153,217,221,218,222,220,153,217,221,218,222,153,217,221,218,222,153,153,153,153,153,220,153,217,221,218,222,220,153,217,221,218,222,220,220,153,217,221,218,222,220,153,217,221,218,222,153,220,220,153,217,221,218,222,220,220,153,217,221,218,222,217,221,222,153,153,153,153,153,220,220,220,153,217,221,218,222,220,153,217,221,218,222,220,220,153,153,217,217,221,221,218,218,222,222,220,220,153,153,217,217,221,221,218,218,222,222,220,220,153,153,217,217,221,221,218,218,222,222,220,153,217,221,218,222,218,220,153,217,221,218,222,218,221,222,220,153,218,153,217,221,218,222,220,220,153,217,221,218,222,220,153,217,221,218,222,220,153,217,221,218,222,220,153,217,221,218,222,221,220,153,217,221,218,222,268,268,269,270,0,0,39,0,0,142,142,0,0,39,0,39,0,39,0,39,0,0,142,0,0,142,142,230,230,231,231,232,232,233,233,234,234,235,235,229,229,39,39,236,142,230,231,236,232,233,234,235,229,39,142,230,231,236,232,233,234,235,229,39,39,39,39,236,236,39,234,62,142,230,231,236,232,233,234,235,229,39,142,230,231,236,232,233,234,235,229,39,229,39,142,230,231,232,233,234,235,229,39,142,230,231,232,233,234,235,229,39,230,230,62,231,236,0,142,230,231,236,232,233,234,235,229,39,142,230,231,236,232,233,234,235,229,39,39,142,230,230,231,231,236,232,233,234,235,229,39,39,142,230,231,236,232,233,234,235,229,39,235,230,231,230,230,230,230,231,231,231,231,236,229,142,230,231,232,233,234,235,229,39,39,142,142,230,231,231,236,232,233,234,235,229,39,39,39,39,236,236,230,230,62,236,230,39,39,142,230,231,236,232,233,234,235,229,39,39,142,230,231,236,232,233,234,235,229,39,142,142,230,230,231,231,236,236,232,232,233,233,234,234,235,235,229,229,39,39,142,142,230,230,231,231,236,236,232,232,233,233,234,234,235,235,229,229,39,39,142,142,230,230,231,231,236,236,232,232,233,233,234,234,235,235,229,229,39,39,232,233,234,235,229,230,142,230,231,236,232,233,234,235,229,39,229,230,230,230,230,231,230,62,142,230,231,236,232,233,234,235,229,39,231,230,230,231,39,39,235,39,229,62,142,230,231,232,233,234,235,229,39,39,142,230,231,236,232,233,234,235,229,39,142,230,231,236,232,233,234,235,229,39,142,230,231,236,232,233,234,235,229,39,142,230,231,236,232,233,234,235,229,39,236,236,62,142,230,231,236,232,233,234,235,229,39,231,271,272,273,274,275,271,272,272,273,0,37,0,0,37,0,0,239,239,37,37,240,239,240,37,239,240,37,37,37,37,240,240,37,63,239,240,37,239,240,37,37,239,37,239,37,239,239,63,63,239,240,0,239,240,37,239,240,37,37,239,239,240,37,37,239,240,37,63,63,239,239,239,239,239,240,239,37,37,239,240,37,37,37,240,240,239,240,239,37,37,239,240,37,239,240,37,239,239,240,240,37,37,239,239,240,240,37,37,239,239,240,240,37,37,239,240,37,239,63,63,63,239,239,240,37,241,239,37,37,37,63,63,239,37,37,239,239,240,37,239,240,37,239,240,37,239,240,37,240,240,239,240,37,276,277,0,0,0,0,0,0,0,0,243,0,174,174,174,174,243,243,174,174,174,174,174,174,174,174,174,243,174,174,174,174,174,174,174,174,174,174,174,174,174,243,243,174,174,174,174,174,174,174,174,174,174,0,0,0,0,0,0,0,0,0,0,146,146,244,244,146,244,146,244,278,248,146,244,146,244,146,244,146,244,146,244,146,244,146,244,146,244,146,244,146,146,244,244,146,244,146,244,146,146,146,146,244,244,244,244,146,244,146,244,146,244,146,244,279,248,146,244,146,244,146,146,244,244,146,146,244,244,146,146,244,244,249,278,146,244,249,0,146,244,248,146,244,278,146,244,280,279,278,248,248,146,244,249,249,279,146,244,146,244,146,244,146,244,278,278,278,146,244,0,238],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,5,[]],[-1,5,[]],[-1,5,[]],[-1,5,[]],[-1,5,[]],[-1,5,[]],[6,6],[6,6],0,0,[7,[[9,[8]]]],[10,[[9,[8]]]],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[11,10],[12,10],[[[13,[-1]]],10,[[15,[14]]]],[[16,14],7],[7,[[9,[5]]]],[10,[[9,[5]]]],[[[17,[-1]]],[[17,[-1]]],[18,19]],[7,7],[11,11],[12,12],[[[13,[-1]]],[[13,[-1]]],18],[10,10],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[[17,[-1]]],[[20,[[17,[-1]]]]],19],[21,[[20,[-1]]],22],[-1,[[20,[-2]]],[],[]],[[[17,[-1]],23,24],[],19],0,[[],25],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[7,27],[10,27],[-1,[[28,[[17,[-2]]]]],29,19],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[-1,[[28,[7]]],29],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[-1,[[28,[10]]],29],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[[[17,[-1]],[17,[-1]]],31,19],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[11,[[28,[-1,10]]],[]],[12,[[28,[-1,10]]],[]],[[[13,[-1]]],[[28,[-2,10]]],[[15,[14]]],[]],0,[[[17,[-1]],26],[[28,[2,32]]],19],[[[17,[-1]]],2,19],[[[17,[-1]],33],[[28,[2,34]]],[35,19]],[[[17,[-1]],33],[[28,[2,34]]],19],[[7,33],36],[[7,33],36],[[11,33],36],[[12,33],36],[[[13,[-1]],33],36,35],[[10,33],36],[[10,33],36],[-1,-1,[]],[[[2,[14,16]]],7],[-1,-1,[]],[37,7],[38,7],[39,7],[40,7],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[41,[[28,[25,42]]]],[41,[[28,[25,42]]]],[[],[[17,[-1]]],19],[[[17,[-1]]],[],19],[[[17,[-1]]],9,19],[[-1,-2],24,[43,44],45],[[[17,[-1]]],24,19],[[[17,[-1]]],[[48,[-1,[46,[-1]],47]]],19],[[[17,[-1]]],[[20,[[17,[-1]]]]],19],[[[17,[-1]]],[],19],[[[17,[-1]]],[],19],[[[17,[-1]]],[],19],[[],[[9,[49]]]],[[[17,[-1]],-2],2,19,50],[[-1,-2],[[51,[-2,-3]]],[],[52,53,54],[]],[[-1,-2],[[51,[-2,-3]]],[],[52,53,54],[]],[[-1,-2],[[51,[-2,-3]]],[],[52,53,54],[]],[-1,[],[]],[-1,[],[]],0,[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],0,0,0,0,0,[-1,7,52],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[11,-1],10,[]],[[12,-1],10,[]],[[[13,[-1]],-2],10,[[15,[14]]],[]],0,[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[25,-2,[60,[-1,-3]],-4],[[28,[2,7]]],19,[[61,[-1]],[62,[-1]],63,[64,[-1]],65,53,54],[[66,[-1]]],67],[[[17,[-1]],-2],28,[19,68],69],[[7,-1],28,69],[[10,-1],28,69],[7,[[9,[5]]]],[10,[[9,[5]]]],0,[7,16],[10,16],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,14,[]],[-1,14,[]],[-1,14,[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[21,[[28,[-1,21]]],22],[-1,[[28,[-2,-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],0,[[25,41],[[28,[2,42]]]],[[25,41],[[28,[2,42]]]],0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],0,[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,5,[]],[-1,5,[]],[-1,5,[]],[-1,5,[]],[-1,5,[]],[-1,5,[]],[6,6],[6,6],[[[71,[-1]]],[[9,[8]]],19],[38,[[9,[8]]]],[[[72,[-1]]],[[73,[-1]]],19],[[[74,[-1]]],[[73,[-1]]],19],[[[75,[-1]]],[[73,[-1]]],19],[[[76,[-1]]],[[73,[-1]]],19],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[77,[-1]]],38,[[15,[14]]]],[[[78,[-1]]],38,[[15,[14]]]],[[[79,[-1]]],38,[[15,[14]]]],[[[80,[-1,-2]]],38,[[15,[24]]],[[15,[24]]]],[[[81,[-1,-2]]],38,[[15,[14]]],[[15,[16]]]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,[20,[-5]]],[[9,[-1]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,[20,[-5]]],[[9,[-1]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[71,[-1]]],[[9,[5]]],19],[38,[[9,[5]]]],[[[92,[-1]]],[[92,[-1]]],19],[[[93,[-1]]],[[93,[-1]]],19],[[[72,[-1]]],[[72,[-1]]],[18,19]],[[[71,[-1]]],[[71,[-1]]],[18,19]],[[[94,[-1]]],[[94,[-1]]],[18,19]],[[[74,[-1]]],[[74,[-1]]],[18,19]],[[[75,[-1]]],[[75,[-1]]],[18,19]],[[[76,[-1]]],[[76,[-1]]],[18,19]],[[[95,[-1]]],[[95,[-1]]],[18,19]],[[[96,[-1]]],[[96,[-1]]],[18,19]],[97,97],[[[77,[-1]]],[[77,[-1]]],18],[[[78,[-1]]],[[78,[-1]]],18],[[[79,[-1]]],[[79,[-1]]],18],[[[80,[-1,-2]]],[[80,[-1,-2]]],18,18],[[[81,[-1,-2]]],[[81,[-1,-2]]],18,18],[38,38],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[[92,[-1]],[92,[-1]]],98,19],[[[93,[-1]],[93,[-1]]],98,19],[[[75,[-1]]],99,19],[[-1,-2],98,[],[]],[[-1,-2],98,[],[]],[[[100,[-1]],-3],[[28,[-1,-2]]],[],[5,101],[[104,[-2],[[102,[103]]]]]],[[[74,[-1]]],[[105,[-1]]],19],[[],106],[[106,-1],[[28,[[107,[-2,38,-1]],108]]],67,[53,54,109]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[[71,[-1]]],27,19],[38,27],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[-1,[[28,[[72,[-2]]]]],29,19],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[-1,[[28,[[94,[-2]]]]],29,19],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[-1,[[28,[[74,[-2]]]]],29,19],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[-1,[[28,[[75,[-2]]]]],29,19],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[-1,[[28,[[76,[-2]]]]],29,19],[-1,[[28,[[95,[-2]]]]],29,19],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[-1,[[28,[[96,[-2]]]]],29,19],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[-1,[[28,[38]]],29],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4],[[55,[91]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4],[[55,[91]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[94,[-1]]],[[0,[[91,[],[[90,[[2,[[110,[-1]],[111,[-1]]]]]]]]]]],19],[[[92,[-1]],[92,[-1]]],31,19],[[[93,[-1]],[93,[-1]]],31,19],[[[72,[-1]],[72,[-1]]],31,[86,19]],[[[94,[-1]],[94,[-1]]],31,[86,19]],[[[74,[-1]],[74,[-1]]],31,[86,19]],[[[75,[-1]],[75,[-1]]],31,[86,19]],[[[76,[-1]],[76,[-1]]],31,[86,19]],[[[95,[-1]],[95,[-1]]],31,[86,19]],[[[96,[-1]],[96,[-1]]],31,[86,19]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],0,[[[77,[-1]]],[[28,[-2,38]]],[[15,[14]]],[]],[[[78,[-1]]],[[28,[-2,38]]],[[15,[14]]],[]],[[[79,[-1]]],[[28,[-2,38]]],[[15,[14]]],[]],[[[80,[-1,-2]]],[[28,[-3,38]]],[[15,[24]]],[[15,[24]]],[]],[[[81,[-1,-2]]],[[28,[-3,38]]],[[15,[14]]],[[15,[16]]],[]],0,[[[92,[-1]],33],36,19],[[[92,[-1]],33],36,19],[[[93,[-1]],33],36,19],[[[93,[-1]],33],36,19],[[[72,[-1]],33],36,[35,19]],[[[71,[-1]],33],36,19],[[[71,[-1]],33],36,[35,19]],[[[94,[-1]],33],36,[35,19]],[[[74,[-1]],33],36,[35,19]],[[[75,[-1]],33],36,[35,19]],[[[76,[-1]],33],36,[35,19]],[[[95,[-1]],33],36,[35,19]],[[[96,[-1]],33],36,[35,19]],[[97,33],36],[[[77,[-1]],33],36,35],[[[78,[-1]],33],36,35],[[[79,[-1]],33],36,35],[[[80,[-1,-2]],33],36,35,35],[[[81,[-1,-2]],33],36,35,35],[[38,33],36],[[38,33],36],[-1,-1,[]],[[[112,[-1]]],[[92,[-1]]],19],[-1,-1,[]],[26,[[92,[-1]]],19],[26,[[93,[-1]]],19],[-1,-1,[]],[[[73,[-1]]],[[93,[-1]]],19],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[[[94,[-1]]],[[74,[-1]]],19],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[[[94,[-1]]],[[95,[-1]]],19],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[113,38],[[[2,[14,16]]],38],[-1,-1,[]],[41,[[28,[106,42]]]],[41,[[28,[106,42]]]],[[],[[72,[-1]]],19],[[],[[94,[-1]]],19],[[],[[74,[-1]]],19],[[],[[75,[-1]]],19],[[[61,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],-6],[[119,[[55,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,53],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,53],[[15,[[93,[-2]]]],53,54]],[[[61,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],-6],[[119,[[55,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,53],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,53],[[122,[26]],53]],[[[61,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],[123,[-2]]],[[119,[[55,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,53],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,53]],[[-1,-2],24,[43,44],45],[[-1,-2],24,[43,44],45],[[[61,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],-6],[[119,[[55,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,53],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,53],[[15,[[92,[-2]]]],53,54]],[[[61,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],-6],[[119,[[55,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,53],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,53],[[122,[26]],53]],[[[61,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],-6],[[119,[[55,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,53],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,53],[[15,[[93,[-2]]]],53,54]],[[[61,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],-6],[[119,[[55,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,53],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,53],[[122,[26]],53]],[[[61,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],-6],[[119,[[55,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,53],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,53],[[15,[[93,[-2]]]],53,54]],[[[61,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],-6],[[119,[[55,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,53],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,53],[[122,[26]],53]],[[],[[9,[49]]]],[[[92,[-1]],-2],2,19,50],[[[93,[-1]],-2],2,19,50],[[[72,[-1]]],[[112,[-1]]],19],[[[94,[-1]]],[[73,[-1]]],19],[[[74,[-1]]],124,19],[[[76,[-1]]],[[123,[-1]]],19],[[[95,[-1]]],[[73,[-1]]],19],[[-1,-2],[[51,[-2,-3]]],[],[52,53,54],[]],[[-1,-2],[[51,[-2,-3]]],[],[52,53,54],[]],[[[72,[-1]]],[[125,[-1]]],19],[[-1,-2],[[51,[-2,-3]]],[],[52,53,54],[]],[[[94,[-1]]],[[125,[-1]]],19],[[[95,[-1]]],[[125,[-1]]],19],[[-1,-2],[[51,[-2,-3]]],[],[52,53,54],[]],[[[72,[-1]]],24,19],[[[94,[-1]]],24,19],[[[74,[-1]]],24,19],[[[75,[-1]]],24,19],[[[76,[-1]]],24,19],[[[95,[-1]]],24,19],0,[-1,[],[]],[-1,[],[]],0,[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[[127,[],[[126,[-1]]]],[94,[-2]]],[[119,[[55,[118]]]]],[5,35,53,54],19],[[[127,[],[[126,[-1]]]],[72,[-2]]],[[119,[[55,[118]]]]],[5,35,53,54],19],[[[127,[],[[126,[-1]]]],[75,[-2]],[9,[128]]],[[119,[[55,[118]]]]],[5,35,53,54],19],[-1,38,52],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[97,-1],38,[]],[[[77,[-1]],-2],38,[[15,[14]]],[]],[[[78,[-1]],-2],38,[[15,[14]]],[]],[[[79,[-1]],-2],38,[[15,[14]]],[]],[[[80,[-1,-2]],-3],38,[[15,[24]]],[[15,[24]]],[]],[[[81,[-1,-2]],-3],38,[[15,[14]]],[[15,[16]]],[]],[[[100,[-1]]],-2,53,[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4],31,[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4],31,[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[94,[-1]]],31,19],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4],-2,[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[[72,[-1]]],[[17,[-1]]],19],0,[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4],26,[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[94,[-1]]],26,19],[[[100,[-1]],-3],[[100,[-2]]],[],[],[53,[130,[-1],[[129,[-2]]]]]],0,[[[94,[-1]]],[[131,[-1]]],19],[[[17,[-1]],[132,[-1]]],[[28,[[72,[-1]],[71,[-1]]]]],19],[[[125,[-1]],[105,[-1]]],[[94,[-1]]],19],[[[125,[-1]],99],[[75,[-1]]],19],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,26],[[9,[-1]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,26],[[9,[-1]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,26],[[9,[-5]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,26],[[9,[-5]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,26],[[9,[[2,[-5,-3]]]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,26],[[9,[[2,[-5,-3]]]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[94,[-1]]],24,19],[[[95,[-1]]],24,19],[[[92,[-1]],[92,[-1]]],[[9,[98]]],19],[[[93,[-1]],[93,[-1]]],[[9,[98]]],19],[[[94,[-1]]],[[105,[-1]]],19],[[[72,[-1]]],124,19],[[[94,[-1]]],124,19],[[[75,[-1]]],124,19],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,-1],[[9,[-3]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,-1],[[9,[-3]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[]],[[[72,[-1]]],[[132,[-1]]],19],0,[[[100,[-1]]],-1,53],0,0,0,[[[72,[-1]],-2],28,19,69],[[[94,[-1]],-2],28,19,69],[[[74,[-1]],-2],28,19,69],[[[75,[-1]],-2],28,19,69],[[[76,[-1]],-2],28,19,69],[[[95,[-1]],-2],28,19,69],[[[96,[-1]],-2],28,19,69],[[38,-1],28,69],[[[94,[-1]]],24,19],[[[74,[-1]]],24,19],[[[95,[-1]]],24,19],[[[71,[-1]]],[[9,[5]]],19],[38,[[9,[5]]]],[38,16],0,[[[61,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],26],[[119,[[55,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,53],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,53]],[[[61,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],26],[[119,[[55,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,53],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,53]],[[[61,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],26],[[119,[[55,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,53],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,53]],[[[61,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],26],[[119,[[55,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,53],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,53]],[[[61,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],26],[[119,[[55,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,53],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,53]],[[[61,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],26],[[119,[[55,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,53],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,53]],[[[61,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],26],[[119,[[55,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,53],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,53]],[[[61,[],[[114,[-1]],[115,[-3]],[116,[-4]],[117,[-5]]]],26],[[119,[[55,[118]]]]],[[120,[],[[90,[[100,[[72,[-2]]]]]]]],121,53],19,[[120,[],[[90,[[100,[[94,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[74,[-2]]]]]]]],121,53],[[120,[],[[90,[[100,[[75,[-2]]]]]]]],121,53]],[133,24],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,14,[]],[-1,14,[]],[-1,14,[]],[-1,14,[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,-1],[[9,[-5]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,-1],[[9,[-5]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[94,[-1]],[110,[-1]]],[[9,[[76,[-1]]]]],19],[[[76,[-1]]],[[111,[-1]]],19],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,[20,[-5]]],[[9,[-5]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,[20,[-5]]],[[9,[-5]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[94,[-1]],[20,[[111,[-1]]]]],[[9,[[110,[-1]]]]],19],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,[20,[-5]]],[[9,[[2,[-5,-3]]]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,[20,[-5]]],[[9,[[2,[-5,-3]]]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[[[85,[],[[82,[-1]],[83,[-2]],[84,[-3]]]],-4,-1],[[9,[[2,[-5,-3]]]]],[18,35,86,87,88,68,89,53,54],[[91,[],[[90,[-1]]]]],[18,35,86,87,68,89],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[[[100,[-1]]],[[28,[-1,[100,[-1]]]]],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[[106,41],[[28,[2,42]]]],[[106,41],[[28,[2,42]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[100,[-1]],-4],[[28,[-1,-2]]],[],[5,101],[[104,[-2],[[102,[103]]]]],[[130,[],[[129,[-3]]]]]],[[[100,[-1]],134],[[9,[-1]]],53],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[[[135,[-1,-2]]],-2,[],[]],[[[135,[-1,-2]]],-2,[],[]],0,[[[135,[-2,-3]]],[[119,[[55,[118]]]]],19,[[62,[-1]],53,54],[53,54]],[[[135,[-1,-2]]],[[119,[[55,[118]]]]],[63,53,54],[53,54]],[136,[[119,[[55,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[135,[-1,-2]]],[[135,[-1,-2]]],18,18],[136,136],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[[65,[],[[126,[-1]]]]],[[119,[[55,[118]]]]],[5,35,53,54]],[[[135,[-1,-2]]],[[119,[[55,[118]]]]],[65,53],53],[-1,[[119,[[55,[118]]]]],[]],[-1,[[119,[[55,[118]]]]],[]],[-1,[[119,[[55,[118]]]]],[]],[[[135,[-2,-3]]],[[119,[[55,[118]]]]],19,[[62,[-1]],53,54],[53,54]],[26,[[119,[[55,[118]]]]]],[[137,-2],[[139,[[138,[-1,-2]]]]],19,[[140,[-1]]]],[26,[[119,[[55,[118]]]]]],[26,[[119,[[55,[118]]]]]],[[141,-2],[[139,[[138,[-1,-2]]]]],19,[[140,[-1]]]],[[],136],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[26,2],[26,2],0,[[[135,[-1,-2]],33],36,35,35],[[136,33],36],[-1,-1,[]],[-1,-1,[]],[[[135,[-2,-3]],-4],[[119,[[55,[118]]]]],19,[[61,[-1]],53,54],[53,54],[[15,[[93,[-1]]]],53,54]],[[[135,[-2,-3]],-4],[[119,[[55,[118]]]]],19,[[61,[-1]],53,54],[53,54],[[122,[26]],53]],[[[135,[-2,-3]],[123,[-1]]],[[119,[[55,[118]]]]],19,[[61,[-1]],53,54],[53,54]],[[[135,[-2,-3]],-4,24],[[119,[[55,[118]]]]],19,[[62,[-1]],53,54],[53,54],[[15,[[142,[-1]]]],53,54]],[[[135,[-2,-3]],-4],[[119,[[55,[118]]]]],19,[[61,[-1]],53,54],[53,54],[[15,[[92,[-1]]]],53,54]],[[[135,[-2,-3]],-4],[[119,[[55,[118]]]]],19,[[61,[-1]],53,54],[53,54],[[122,[26]],53]],[[[135,[-3,-4]],[143,[-1,-2]]],[[119,[[55,[118]]]]],19,[[144,[-1]]],[[145,[-1,-2]],53,54],[53,54]],[[[135,[-2,-3]],-4],[[119,[[55,[118]]]]],19,[[61,[-1]],53,54],[53,54],[[15,[[93,[-1]]]],53,54]],[[[135,[-2,-3]],-4],[[119,[[55,[118]]]]],19,[[61,[-1]],53,54],[53,54],[[122,[26]],53]],[[[135,[-2,-3]],-4],[[119,[[55,[118]]]]],19,[[61,[-1]],53,54],[53,54],[[15,[[93,[-1]]]],53,54]],[[[135,[-2,-3]],-4],[[119,[[55,[118]]]]],19,[[61,[-1]],53,54],[53,54],[[122,[26]],53]],[[[138,[146,-1]],[147,[146]]],[[119,[[55,[118]]]]],[[140,[146]],148]],[[[135,[-1,-2]],[147,[146]]],[[119,[[55,[118]]]]],149,[148,53,54]],[[136,[147,[146]]],[[119,[[55,[118]]]]]],[[],26],[[],26],[[[135,[-1,-2]]],-1,[],[]],[[[135,[-1,-2]]],-1,[],[]],[[[135,[-2,-3]],[94,[-1]]],[[119,[[55,[118]]]]],19,[[127,[-1]],53,54],[53,54]],[[[135,[-2,-3]],[72,[-1]]],[[119,[[55,[118]]]]],19,[[127,[-1]],53,54],[53,54]],[[[135,[-3,-4]],150,[151,[26]],24],[[119,[[55,[118]]]]],19,[[144,[-1]]],[[152,[-1,-2]],53,54],[53,54]],[[[135,[-2,-3]],[75,[-1]],[9,[128]]],[[119,[[55,[118]]]]],19,[[127,[-1]],53,54],[53,54]],[-1,-2,[],[]],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[[135,[-1,-2]]],153,[63,53,54],[53,54]],[136,153],[[-1,-2],[[135,[-1,-2]]],[],[]],0,[[137,-2],[[139,[[138,[-1,-2]]]]],19,[[140,[-1]]]],[[141,-2],[[139,[[138,[-1,-2]]]]],19,[[140,[-1]]]],[[[135,[-2,-3]]],[[119,[[55,[118]]]]],19,[[62,[-1]],53,54],[53,54]],0,[[]],[[]],[-1,[[55,[154]]],[]],[-1,[[55,[154]]],[]],[-1,[[119,[[55,[118]]]]],[]],[-1,[[119,[[55,[118]]]]],[]],[-1,[[119,[[55,[118]]]]],[]],[[[65,[],[[126,[-1]]]]],[[119,[[55,[118]]]]],[5,35,53,54]],[[[135,[-1,-2]]],[[119,[[55,[118]]]]],[65,53],53],[[[138,[-1,-2]]],[[139,[2]]],19,[[140,[-1]]]],0,0,0,[[[135,[-2,-3]]],[[119,[[55,[118]]]]],19,[[62,[-1]],53,54],[53,54]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[[64,[147,[-1]]],[[119,[[55,[118]]]]],19],[[[135,[-2,-3]],-4],[[119,[[55,[118]]]]],19,[[62,[-1]],53,54],[53,54],[[15,[[93,[-1]]]],53,54]],[-1,-2,[],[]],[-1,-2,[],[]],[[],2],[[],2],0,0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[[[155,[-1,-2,-3]]],[[119,[[55,[118]]]]],19,[[62,[-1]],53,54],[53,54]],[[[155,[-1,-2,-3]]],[[119,[[55,[118]]]]],19,[[62,[-1]],53,54],[53,54]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[156,[-1,-2,-3]]],[[139,[[155,[-1,-2,-3]]]]],19,[[62,[-1]],[157,[-1]]],[[140,[-1]]]],[[-2,-3],[[156,[-1,-2,-3]]],19,[[62,[-1]],[157,[-1]]],[[140,[-1]]]],[[[155,[-1,-2,-3]]],[[155,[-1,-2,-3]]],19,[],[]],[[[158,[-1,-2,-3]]],[[158,[-1,-2,-3]]],19,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[[155,[-1,-2,-3]]],[[119,[[55,[118]]]]],19,[65,53,54],[53,54]],[[159,-2],[[28,[[160,[-1,-2]],161]]],19,[[140,[-1]]]],[[[155,[-1,-2,-3]]],[[119,[[55,[118]]]]],19,[[62,[-1]],53,54],[53,54]],[[137,-2],[[139,[[155,[-1,[162,[-1]],-2]]]]],19,[[140,[-1]]]],[[141,-2],[[139,[[155,[-1,[162,[-1]],-2]]]]],19,[[140,[-1]]]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[[163,[-1,-2]]],-3,19,[],[]],[[[164,[-1,-2]]],-3,19,[],[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[[164,[-1,-2]]],-3,19,[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[[156,[-1,-2,-3]]],[[156,[-1,-2,-3]]],[],[],[]],[26,2],[26,2],[26,2],[26,2],[26,2],[[[155,[-1,-2,-3]],33],36,19,35,35],[[[158,[-1,-2,-3]],33],36,19,35,35],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[[[165,[[0,[-1,-2]]]]],[[163,[-1,-2]]],19,[]],[-1,-1,[]],[[[166,[[0,[-1,-2]]]]],[[164,[-1,-2]]],19,[]],[-1,-1,[]],[[[155,[-1,-2,-3]],-4],[[119,[[55,[118]]]]],19,[[157,[-1]]],[[140,[-1]]],[[15,[[93,[-1]]]],53,54]],[[[155,[-1,-2,-3]],-4],[[119,[[55,[118]]]]],19,[[157,[-1]]],[[140,[-1]]],[[122,[26]],53]],[[[155,[-1,-2,-3]],[123,[-1]]],[[119,[[55,[118]]]]],19,[[157,[-1]]],[[140,[-1]]]],[[[155,[-1,-2,-3]],-4,24],[[119,[[55,[118]]]]],19,[[62,[-1]],53,54],[53,54],[[15,[[142,[-1]]]],53,54]],[[[155,[-1,-2,-3]],-4],[[119,[[55,[118]]]]],19,[[157,[-1]]],[[140,[-1]]],[[15,[[92,[-1]]]],53,54]],[[[155,[-1,-2,-3]],-4],[[119,[[55,[118]]]]],19,[[157,[-1]]],[[140,[-1]]],[[122,[26]],53]],[[[155,[-1,-3,-4]],[143,[-1,-2]]],[[119,[[55,[118]]]]],19,[[144,[-1]]],[[145,[-1,-2]],53,54],[[140,[-1]]]],[[[155,[-1,-2,-3]],-4],[[119,[[55,[118]]]]],19,[[157,[-1]]],[[140,[-1]]],[[15,[[93,[-1]]]],53,54]],[[[155,[-1,-2,-3]],-4],[[119,[[55,[118]]]]],19,[[157,[-1]]],[[140,[-1]]],[[122,[26]],53]],[[[155,[-1,-2,-3]],-4],[[119,[[55,[118]]]]],19,[[157,[-1]]],[[140,[-1]]],[[15,[[93,[-1]]]],53,54]],[[[155,[-1,-2,-3]],-4],[[119,[[55,[118]]]]],19,[[157,[-1]]],[[140,[-1]]],[[122,[26]],53]],[[],26],[[],26],[[],26],[[],26],[[],26],[[[155,[-1,-2,-3]],[94,[-1]]],[[119,[[55,[118]]]]],19,[[127,[-1]],53,54],[53,54]],[[[155,[-1,-2,-3]],[72,[-1]]],[[119,[[55,[118]]]]],19,[[127,[-1]],53,54],[53,54]],[[[155,[-1,-3,-4]],150,[151,[26]],24],[[119,[[55,[118]]]]],19,[[144,[-1]]],[[152,[-1,-2]],53,54],[[140,[-1]]]],[[[155,[-1,-2,-3]],[75,[-1]],[9,[128]]],[[119,[[55,[118]]]]],19,[[127,[-1]],53,54],[53,54]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[[155,[-1,-2,-3]]],153,19,[[62,[-1]],53,54],[53,54]],[[-1,-2],[[156,[-3,-1,-2]]],[],[],[]],[[137,-2],[[139,[[155,[-1,[162,[-1]],-2]]]]],19,[[140,[-1]]]],[[141,-2],[[139,[[155,[-1,[162,[-1]],-2]]]]],19,[[140,[-1]]]],[[[155,[-1,-2,-3]]],[[119,[[55,[118]]]]],19,[[62,[-1]],53,54],[53,54]],[[]],[[]],[[]],[[]],[[]],[-1,[[55,[154]]],[]],[[[155,[-1,-2,-3]]],[[119,[[55,[118]]]]],19,[65,53,54],[53,54]],[[[155,[-1,[162,[-1]],-2]]],[[139,[2]]],19,[[140,[-1]]]],[[[155,[-1,-2,-3]]],[[163,[-1,-2]]],19,[],[]],[[[155,[-1,-2,-3]]],[[164,[-1,-2]]],19,[],[]],[[[155,[-1,-2,-3]]],[[119,[[55,[118]]]]],19,[[62,[-1]],53,54],[53,54]],[-1,-2,[],[]],[-1,-2,[],[]],[[[155,[-1,167,-2]]],[[169,[168]]],19,[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[[[155,[-1,-2,-3]],-4],[[119,[[55,[118]]]]],19,[[62,[-1]],53,54],[53,54],[[15,[[93,[-1]]]],53,54]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[156,[-1,-2,-3]],26],[[156,[-1,-2,-3]]],[],[],[]],[[[156,[-1,-2,-3]],134],[[156,[-1,-2,-3]]],[],[],[]],[[[156,[-1,-2,-3]],26],[[156,[-1,-2,-3]]],[],[],[]],[[[156,[-1,-2,-3]],26],[[156,[-1,-2,-3]]],[],[],[]],[[[156,[-1,-2,-3]],134],[[156,[-1,-2,-3]]],[],[],[]],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],0,0,0,0,0,0,0,[[[170,[-1,-2]]],[[119,[[55,[118]]]]],19,[53,54]],[[159,-2],[[28,[[160,[-1,-2]],161]]],19,[[140,[-1]]]],[-1,[[119,[[55,[118]]]]],[]],[26,[[119,[[55,[118]]]]]],[[[170,[146,-1]],[147,[146]]],[[119,[[55,[118]]]]],[[140,[146]],148]],0,0,[-1,[[119,[[55,[118]]]]],[]],0,[[[170,[-1,-2]]],[[169,[168]]],19,[]],0,[[],2],0,0,0,0,0,[[157,[93,[-1]]],[[119,[[55,[118]]]]],19],[[157,-1],[[119,[[55,[118]]]]],[[122,[26]],53]],[[157,[123,[-1]]],[[119,[[55,[118]]]]],19],[[157,[93,[-1]]],[[119,[[55,[118]]]]],19],[[157,[92,[-1]]],[[119,[[55,[118]]]]],19],[[157,-1],[[119,[[55,[118]]]]],[[122,[26]],53]],[[157,[93,[-1]]],[[119,[[55,[118]]]]],19],[[157,-1],[[119,[[55,[118]]]]],[[122,[26]],53]],[[157,[93,[-1]]],[[119,[[55,[118]]]]],19],[[157,-1],[[119,[[55,[118]]]]],[[122,[26]],53]],0,0,0,0,[-1,4,[]],[-1,4,[]],[[[162,[-1]]],[[119,[[55,[118]]]]],19],[-1,-2,[],[]],[-1,-2,[],[]],[[[162,[-1]]],[[119,[[55,[118]]]]],19],[[[162,[-1]]],[[119,[[55,[118]]]]],19],[137,[[28,[[162,[-1]],171]]],19],[141,[[28,[[162,[-1]],171]]],19],[26,-1,[]],[26,-1,[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[26,2],[[[162,[-1]],33],36,19],[-1,-1,[]],[[[162,[-1]],[93,[-1]]],[[119,[[55,[118]]]]],19],[[[162,[-1]],-2],[[119,[[55,[118]]]]],19,[[122,[26]],53]],[[[162,[-1]],[123,[-1]]],[[119,[[55,[118]]]]],19],[[[162,[-1]],[93,[-1]]],[[119,[[55,[118]]]]],19],[[[162,[-1]],-2,24],[[119,[[55,[118]]]]],19,[[15,[[142,[-1]]]],53,54]],[[[162,[-1]],[92,[-1]]],[[119,[[55,[118]]]]],19],[[[162,[-1]],-2],[[119,[[55,[118]]]]],19,[[122,[26]],53]],[[[162,[-1]],[93,[-1]]],[[119,[[55,[118]]]]],19],[[[162,[-1]],-2],[[119,[[55,[118]]]]],19,[[122,[26]],53]],[[[162,[-1]],[93,[-1]]],[[119,[[55,[118]]]]],19],[[[162,[-1]],-2],[[119,[[55,[118]]]]],19,[[122,[26]],53]],[[],26],[[[162,[-1]],[94,[-1]]],[[119,[[55,[118]]]]],19],[[[162,[-1]],[72,[-1]]],[[119,[[55,[118]]]]],19],[[[162,[-1]],[75,[-1]],[9,[128]]],[[119,[[55,[118]]]]],19],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[],[[28,[58,59]]]],[137,[[28,[[162,[-1]],171]]],19],[141,[[28,[[162,[-1]],171]]],19],[[[162,[-1]]],[[119,[[55,[118]]]]],19],[[]],[[[162,[-1]]],[[119,[[55,[118]]]]],19],[[[162,[-1]]],[[28,[2,171]]],19],[[[162,[-1]]],[[119,[[55,[118]]]]],19],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,70,[]],[-1,27,[]],[[[162,[-1]],-2],[[119,[[55,[118]]]]],19,[[15,[[93,[-1]]]],53,54]],[-1,-2,[],[]],0,[[-1,1],2,[]],[[-1,3],2,[]],[-1,4,[]],[-1,4,[]],[172,[[119,[[55,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[172,172],[[-1,-2],2,[],[]],[172,[[119,[[55,[118]]]]]],[172,[[119,[[55,[118]]]]]],[[],172],[26,-1,[]],[26,-1,[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[26,2],[[172,33],36],[-1,-1,[]],[[172,[93,[-1]]],[[119,[[55,[118]]]]],19],[[172,-1],[[119,[[55,[118]]]]],[[122,[26]],53]],[[172,[123,[-1]]],[[119,[[55,[118]]]]],19],[[172,[93,[-1]]],[[119,[[55,[118]]]]],19],[[172,-2,24],[[119,[[55,[118]]]]],19,[[15,[[142,[-1]]]],53,54]],[[172,[92,[-1]]],[[119,[[55,[118]]]]],19],[[172,-1],[[119,[[55,[118]]]]],[[122,[26]],53]],[[172,[93,[-1]]],[[119,[[55,[118]]]]],19],[[172,-1],[[119,[[55,[118]]]]],[[122,[26]],53]],[[172,[93,[-1]]],[[119,[[55,[118]]]]],19],[[172,-1],[[119,[[55,[118]]]]],[[122,[26]],53]],[[],26],[[172,[94,[-1]]],[[119,[[55,[118]]]]],19],[[172,[72,[-1]]],[[119,[[55,[118]]]]],19],[[172,[75,[-1]],[9,[128]]],[[119,[[55,[118]]]]],19],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[],[[28,[58,59]]]],[172,[[119,[[55,[118]]]]]],[[]],[172,[[119,[[55,[118]]]]]],[172,[[119,[[55,[118]]]]]],0,[-1,-2,[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,70,[]],[-1,27,[]],[[172,-2],[[119,[[55,[118]]]]],19,[[15,[[93,[-1]]]],53,54]],[-1,-2,[],[]],0,0,0,0,0,0,[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[173,[[119,[[55,[118]]]]]],[173,[[119,[[55,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[173,[[119,[[55,[118]]]]]],[-1,[[119,[[55,[118]]]]],[]],[173,[[119,[[55,[118]]]]]],[26,[[119,[[55,[118]]]]]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[26,2],[26,2],[-1,-1,[]],[-1,-1,[]],[[173,-1],[[119,[[55,[118]]]]],[[15,[[93,[146]]]],53,54]],[[173,-1],[[119,[[55,[118]]]]],[[122,[26]],53]],[[173,[123,[146]]],[[119,[[55,[118]]]]]],[[173,-1,24],[[119,[[55,[118]]]]],[[15,[[142,[146]]]],53,54]],[[173,-1],[[119,[[55,[118]]]]],[[15,[[92,[146]]]],53,54]],[[173,-1],[[119,[[55,[118]]]]],[[122,[26]],53]],[[173,-1],[[119,[[55,[118]]]]],[[15,[[93,[146]]]],53,54]],[[173,-1],[[119,[[55,[118]]]]],[[122,[26]],53]],[[173,-1],[[119,[[55,[118]]]]],[[15,[[93,[146]]]],53,54]],[[173,-1],[[119,[[55,[118]]]]],[[122,[26]],53]],[[173,[147,[146]]],[[119,[[55,[118]]]]]],[[],26],[[],26],[[173,[94,[146]]],[[119,[[55,[118]]]]]],[[173,[72,[146]]],[[119,[[55,[118]]]]]],[[173,[75,[146]],[9,[128]]],[[119,[[55,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[173,153],[173,[[119,[[55,[118]]]]]],[[]],[[]],[-1,[[55,[154]]],[]],[-1,[[119,[[55,[118]]]]],[]],[173,[[119,[[55,[118]]]]]],[[[174,[173]]],[[119,[[55,[118]]]]]],[173,[[119,[[55,[118]]]]]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[[173,-1],[[119,[[55,[118]]]]],[[15,[[93,[146]]]],53,54]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[-1,4,[]],[-1,4,[]],[175,24],[-1,-2,[],[]],[-1,-2,[],[]],[175,175],[[-1,-2],2,[],[]],[[],175],[26,-1,[]],[26,-1,[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[26,2],[[175,33],36],[-1,-1,[]],[176,[[119,[[55,[118]]]]]],[177,[[9,[175]]]],[[],26],[175,134],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[],[[28,[58,59]]]],[[[178,[],[[126,[-1]]]]],[[119,[[55,[118]]]]],[5,35,53,54]],[175,179],[175,134],[[],175],[[]],[176,[[119,[[55,[118]]]]]],[175,[[9,[24]]]],[[[178,[],[[126,[-1]]]],24],[[119,[[55,[118]]]]],[5,35,53,54]],[[177,175],2],[175,134],[-1,-2,[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,70,[]],[-1,27,[]],[175,[[139,[2]]]],[-1,-2,[],[]],[[175,24],175],[[175,134],175],[[175,179],175],[[175,134],175],[[175,24],175],[[175,134],175],0,0,0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[180,31],[180,31],[181,[[9,[182]]]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[161,5],[161,5],[161,8],[167,[[119,[[55,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,183,[]],[[159,-2],[[28,[[160,[-1,-2]],161]]],19,[[140,[-1]]]],[161,184],[181,24],[185,[[119,[[55,[118]]]]]],[168,[[119,[[55,[118]]]]]],[167,[[119,[[55,[118]]]]]],[181,181],[159,159],[186,186],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[181,181],98],[167,[[119,[[55,[118]]]]]],[[-1,-2],98,[],[]],[[159,-2],[[28,[[170,[-1,-2]],161]]],19,[[140,[-1]]]],[159,[[28,[167,161]]]],[[161,-1],161,[52,53,54]],[167,[[119,[[55,[118]]]]]],[[159,27],159],[[],159],[[],186],[[],[[151,[181]]]],[26,-1,[]],[161],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[161],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[-1,[[28,[186]]],29],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[161,[[28,[-1,161]]],[52,35,53,54]],[161,[[9,[-1]]],[52,35,53,54]],[161,[[9,[-1]]],[52,35,53,54]],[161,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[[181,181],31],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[168,-1,-2],[[169,[24]]],[44,187],188],[[168,-1,-2],[[169,[24]]],[44,187,52],188],[[168,-1,-2],[[169,[24]]],[44,187,52],[188,18]],[[168,-1,-2],[[169,[2]]],[44,187,52],188],[[168,-1,-2],[[169,[2]]],[44,187,52],[188,18]],[[161,33],[[28,[2,34]]]],[[161,33],[[28,[2,34]]]],[[181,33],[[28,[2,34]]]],[[181,33],[[28,[2,34]]]],[[159,33],36],[[167,33],36],[[186,33],36],[-1,-1,[]],[189,-1,[]],[-1,161,[5,53,54]],[-1,-1,[]],[-1,-1,[]],[190,159],[-1,-1,[]],[-1,-1,[]],[-2,186,[52,18],[[91,[],[[90,[-1]]]],191]],[-1,-1,[]],[[180,[193,[192]]],[[28,[186,[55,[5]]]]]],[27,[[28,[159,-1]]],[]],[[167,[93,[-1]]],[[119,[[55,[118]]]]],19],[[167,-1],[[119,[[55,[118]]]]],[[122,[26]],53]],[[167,[123,[-1]]],[[119,[[55,[118]]]]],19],[167,[[119,[[55,[118]]]]]],[[167,[93,[-1]]],[[119,[[55,[118]]]]],19],[[167,-2,24],[[119,[[55,[118]]]]],19,[[15,[[142,[-1]]]],53,54]],[[167,[92,[-1]]],[[119,[[55,[118]]]]],19],[[167,-1],[[119,[[55,[118]]]]],[[122,[26]],53]],[[167,[143,[-1,-2]]],[[119,[[55,[118]]]]],19,[[144,[-1]]]],[[167,[93,[-1]]],[[119,[[55,[118]]]]],19],[[167,-1],[[119,[[55,[118]]]]],[[122,[26]],53]],[167,[[9,[175]]]],[[167,[93,[-1]]],[[119,[[55,[118]]]]],19],[[167,-1],[[119,[[55,[118]]]]],[[122,[26]],53]],[[-1,-2],[[51,[-2,-3]]],[],[52,53,54],[]],[[-1,-2],[[51,[-2,-3]]],[],[52,53,54],[]],[[159,-1],159,[[15,[14]]]],0,0,[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[167,[94,[-1]]],[[119,[[55,[118]]]]],19],[[167,[72,[-1]]],[[119,[[55,[118]]]]],19],[[167,150,[151,[26]],24],[[119,[[55,[118]]]]]],[[167,[75,[-1]],[9,[128]]],[[119,[[55,[118]]]]],19],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[161,31],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[167,[[119,[[55,[118]]]]]],[[159,-1],159,[[188,[],[[90,[181]]]]]],[-1,161,[52,35,53,54]],[181,27],[-1,161,[5,53,54]],[159,159],[[181,181],[[9,[98]]]],[[159,27],159],[167,[[119,[[55,[118]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[159,179],159],0,[181,194],[167,[[119,[[55,[118]]]]]],[[159,175],[[28,[159,161]]]],[[185,-1,-2],[[119,[[55,[118]]]]],[44,187,54],[188,53]],[[185,-1,-2],[[119,[[55,[118]]]]],[44,187,54],[188,53]],[[185,-1],[[119,[[55,[118]]]]],[44,187,54]],[[185,-1,-2],[[119,[[55,[118]]]]],[44,187,54],[188,53]],[[185,-1],[[119,[[55,[118]]]]],[44,187,54]],[[185,-1],[[119,[[55,[118]]]]],[44,187,54]],[159,159],[167,[[119,[[55,[118]]]]]],[161,5],[[167,24],[[119,[[55,[118]]]]]],[[159,-1],159,[[15,[14]]]],[[186,-1],28,69],[[167,175],2],[181,[[9,[27]]]],[167,[[119,[[55,[118]]]]]],0,[159,159],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[186,180,195],[[28,[196,[55,[5]]]]]],[[186,180,195],[[28,[196,[55,[5]]]]]],[-1,14,[]],[-1,14,[]],[167,[[169,[168]]]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[[27,27],[[28,[181,197]]]],[[168,27,[198,[27]],-1,-3],[[169,[2]]],[[188,[],[[90,[27]]]]],[199,18],[[188,[],[[90,[[198,[-2]]]]]]]],[[159,27],159],[181,200],[[167,-2],[[119,[[55,[118]]]]],19,[[15,[[93,[-1]]]],53,54]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[201,159],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[26,2],[201,2],[26,2],[[201,33],36],[-1,-1,[]],[-1,-1,[]],[201,14],[[],26],[[],201],[[],26],[-1,-2,[],[]],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[]],[[]],[201,179],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[-1,4,[]],[-1,4,[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[202,[-1,-2]]],[[202,[-1,-2]]],[],[]],[[-1,-2],2,[],[]],[[],[[202,[-1,-2]]],[],[]],[26,-1,[]],[26,-1,[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[26,2],[[[202,[-1,-2]],33],36,[],[]],[-1,-1,[]],[[],26],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[],[[28,[58,59]]]],[[]],0,0,[[203,-1],2,[]],[[204,-1],[[0,[[118,[],[[129,[2]]]],53]]],[]],[[[202,[-2,-3]],-2,-4,-5],2,[],[[205,[-1]]],204,[[206,[-1,-2]]],[[188,[],[[90,[-3]]]],53]],[-1,-2,[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,70,[]],[-1,27,[]],[-1,-2,[],[]],[[[202,[-1,-2]],134],[[202,[-1,-2]]],[],[]],0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[[[207,[-1]]],2,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[208,[-1]]],[[208,[-1]]],19],[[[209,[-1]]],[[209,[-1]]],[18,67]],[[[207,[-1]]],[[207,[-1]]],[]],[210,210],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[],[[208,[-1]]],19],[[],210],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[26,2],[26,2],[26,2],[26,2],[[[207,[-1]]],2,[]],[[206,-2],[[119,[[55,[118]]]]],[],[[205,[-1]]]],[[[208,[-1]],211],[[119,[[55,[118]]]]],19],[[[208,[-1]],212],[[119,[[55,[118]]]]],19],[[[208,[-1]],213],[[119,[[55,[118]]]]],19],[[[209,[-1]],211],[[119,[[55,[118]]]]],67],[[[209,[-1]],212],[[119,[[55,[118]]]]],67],[[[209,[-1]],213],[[119,[[55,[118]]]]],67],[[[207,[-3]],-2],[[119,[[55,[118]]]]],19,[[205,[-1]]],[[206,[-1,-2]],54]],[[210,-2],[[119,[[55,[118]]]]],[],[53,[205,[-1]]]],[[[208,[-1]],33],36,19],[[[209,[-1]],33],36,[35,67]],[[[207,[-1]],33],36,35],[[210,33],36],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[[],26],[[],26],[[],26],[[],26],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[214,-1],[[209,[-1]]],67],[-1,[[207,[-1]]],[]],[[]],[[]],[[]],[[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[[[207,[-1]]],2,[]],[[[207,[-1]]],2,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[208,[-1]],-2],[[208,[-1]]],19,[[206,[-1,213]],35]],[[[208,[-1]],-2],[[208,[-1]]],19,[[206,[-1,211]],35]],[[[208,[-1]],-2],[[208,[-1]]],19,[[140,[-1]],35]],[[[208,[-1]],-2],[[208,[-1]]],19,[[206,[-1,212]],35]],0,0,0,0,0,[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[213,213],[212,212],[211,211],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[26,2],[26,2],[26,2],[[213,213],31],[[212,212],31],[[211,211],31],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[213,33],36],[[212,33],36],[[211,33],36],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[26,211],[[-1,-2],24,[43,44],45],[[-1,-2],24,[43,44],45],[[-1,-2],24,[43,44],45],[[213,-1],2,50],[[212,-1],2,50],[[211,-1],2,50],[[],26],[[],26],[[],26],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[]],[[]],[[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,3],2,[]],[[-1,1],2,[]],0,[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,5,[]],[-1,5,[]],[-1,5,[]],[6,6],[6,6],[40,[[9,[8]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[40,[[9,[5]]]],[40,40],[[-1,-2],2,[],[]],[[[143,[-1,-2]],[143,[-1,-2]]],98,19,[[144,[-1]]]],[[-1,-2],98,[],[]],[[],215],[215,[[28,[[107,[-1,40,-2]],108]]],[53,54,109],67],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[40,27],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[-1,[[28,[40]]],29],[26,2],[26,2],[26,2],[[[143,[-1,-2]],[143,[-1,-2]]],31,19,[[144,[-1]]]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],0,[[[143,[-1,-2]],33],36,19,[[144,[-1]]]],[[[143,[-1,-2]],33],36,19,[[144,[-1]]]],[[40,33],36],[[40,33],36],[-1,-1,[]],[-1,-1,[]],[113,40],[-1,-1,[]],[[[2,[14,16]]],40],[10,40],[41,[[28,[215,42]]]],[41,[[28,[215,42]]]],[[-1,-2],24,[43,44],45],[[145,[143,[-1,-2]]],[[119,[[55,[118]]]]],19,[[144,[-1]]]],[[],[[9,[49]]]],[[[143,[-1,-2]],-3],2,19,[[144,[-1]]],50],[[-1,-2],[[51,[-2,-3]]],[],[52,53,54],[]],[[-1,-2],[[51,[-2,-3]]],[],[52,53,54],[]],[[],27],[-1,[],[]],[[],26],[[],26],[[],26],[[152,150,[151,[26]],24],[[119,[[55,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[[143,[-1,-2]],[143,[-1,-2]]],[[9,[98]]],19,[[144,[-1]]]],[[]],[[]],[[]],[[40,-1],28,69],[40,[[9,[5]]]],[[],27],[40,16],[-1,-2,[],[]],[-1,14,[]],[-1,14,[]],[[],26],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[[215,41],[[28,[2,42]]]],[[215,41],[[28,[2,42]]]],[[216,-1,[17,[-2]],56],[[119,[[55,[118]]]]],[],19],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[217,26],2],[[218,219],2],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,5,[]],[-1,5,[]],[-1,5,[]],[220,[[9,[8]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[220,[[9,[5]]]],[153,153],[217,217],[221,221],[218,218],[222,222],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[153,14,[9,[14]]],[[55,[223]]]],[[153,14,[9,[14]]],[[55,[224]]]],[[153,14,[9,[14]]],[[55,[225]]]],[[153,14],[[55,[226]]]],[[],153],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[220,27],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[153,[[28,[14,-1]]],[]],[[220,33],36],[[220,33],36],[[153,33],36],[[217,33],36],[[221,33],36],[[218,33],36],[[222,33],36],[227,220],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[217,26],[221,26],[222,14],[[153,27],[[28,[217,220]]]],[[153,27],[[28,[221,220]]]],[[153,27],[[28,[218,220]]]],[[153,27],[[28,[222,220]]]],[[153,-1],[[28,[153,220]]],188],[[-1,-2],[[51,[-2,-3]]],[],[52,53,54],[]],[-1,[],[]],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[218,219],[[]],[[]],[[]],[[]],[[]],[[]],[218,26],[[221,26],2],[[222,14],2],[220,[[9,[5]]]],[[153,14],[[55,[154]]]],[218,219],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,14,[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[[221,228],2],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],0,[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,5,[]],[-1,5,[]],[-1,5,[]],[6,6],[6,6],[39,[[9,[8]]]],0,[62,[[119,[[55,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[229,[-1,-2]]],39,[[15,[14]]],[[15,[16]]]],[39,[[9,[5]]]],[[[142,[-1]]],[[142,[-1]]],19],[230,230],[[[231,[-1]]],[[231,[-1]]],18],[232,232],[233,233],[[[234,[-1]]],[[234,[-1]]],18],[[[235,[-1,-2]]],[[235,[-1,-2]]],18,18],[[[229,[-1,-2]]],[[229,[-1,-2]]],18,18],[39,39],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[230,230],98],[[-1,-2],98,[],[]],[62,[[119,[[55,[118]]]]]],[[],[[231,[-1]]],[]],[[],236],[[236,-1],[[28,[[107,[-2,39,-1]],108]]],67,[53,54,109]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[39,27],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[-1,[[28,[230]]],29],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[-1,[[28,[[231,[-2]]]]],29,237],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[-1,[[28,[39]]],29],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],[26,2],0,[[230,230],31],[[[231,[-1]],[231,[-1]]],31,86],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],0,[[[229,[-1,-2]]],[[28,[-3,39]]],[[15,[14]]],[[15,[16]]],[]],[[[142,[-1]],33],36,19],[[230,33],36],[[[231,[-1]],33],36,35],[[232,33],36],[[233,33],36],[[[234,[-1]],33],36,35],[[[235,[-1,-2]],33],36,35,35],[[[229,[-1,-2]],33],36,35,35],[[39,33],36],[[39,33],36],[[[73,[-1]]],[[142,[-1]]],19],[-1,-1,[]],[-1,-1,[]],[[[231,[-1]]],[[9,[24]]],238],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[10,39],[[[2,[14,16]]],39],[-1,-1,[]],[113,39],[41,[[28,[236,42]]]],[41,[[28,[236,42]]]],[[],230],[[-1,-2],24,[43,44],45],[[62,-2,24],[[119,[[55,[118]]]]],19,[[15,[[142,[-1]]]],53,54]],[[],[[9,[49]]]],[[230,-1],2,50],[[-1,-2],[[51,[-2,-3]]],[],[52,53,54],[]],[-1,[],[]],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[-1,39,52],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[232,-1],39,[]],[[233,-1],39,[]],[[[234,[-1]],-2],39,[[15,[14]]],[]],[[[235,[-1,-2]],-3],39,[[15,[14]]],[[15,[24]]],[]],[[[229,[-1,-2]],-3],39,[[15,[14]]],[[15,[16]]],[]],[230,31],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],0,0,0,0,0,0,[[230,230],[[9,[98]]]],[62,[[119,[[55,[118]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[230,-1],28,69],[[[231,[-1]],-2],28,68,69],[[39,-1],28,69],[39,[[9,[5]]]],0,[39,16],0,[62,[[119,[[55,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,14,[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[[236,41],[[28,[2,42]]]],[[236,41],[[28,[2,42]]]],[[62,-2],[[119,[[55,[118]]]]],19,[[15,[[93,[-1]]]],53,54]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,1],2,[]],[[-1,3],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],0,[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,5,[]],[-1,5,[]],[-1,5,[]],[6,6],[6,6],[37,[[9,[8]]]],[63,[[119,[[55,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[37,[[9,[5]]]],[239,239],[37,37],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[239,239],98],[[-1,-2],98,[],[]],[63,[[169,[153]]]],[63,[[169,[153]]]],[[],239],[[],240],[[240,-1],[[28,[[107,[-2,37,-1]],108]]],67,[53,54,109]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[37,27],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[-1,[[28,[239]]],29],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[-1,[[28,[37]]],29],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[26,2],[26,2],[26,2],[63,[[119,[[55,[118]]]]]],[63,[[119,[[55,[118]]]]]],[[239,239],31],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],0,[[239,33],36],[[37,33],36],[[37,33],36],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[113,37],[14,37],[41,[[28,[240,42]]]],[41,[[28,[240,42]]]],[[-1,-2],24,[43,44],45],[[],[[9,[49]]]],[[239,-1],2,50],[[-1,-2],[[51,[-2,-3]]],[],[52,53,54],[]],[-1,[],[]],[[],26],[[],26],[[],26],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],0,[63,[[119,[[55,[118]]]]]],[63,[[119,[[55,[118]]]]]],[63,153],[[239,239],[[9,[98]]]],[[]],[[]],[[]],[241,[[55,[154]]]],[[239,-1],28,69],[[37,-1],28,69],[37,[[9,[5]]]],[37,16],[63,[[119,[[55,[118]]]]]],[63,[[119,[[55,[118]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,14,[]],0,[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],[-1,27,[]],[[240,41],[[28,[2,42]]]],[[240,41],[[28,[2,42]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,[[],2],[134,2],0,0,0,0,0,0,[-1,4,[]],[-1,4,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[119,[[55,[118]]]]],[]],[26,[[119,[[55,[118]]]]]],[[[174,[-1]]],[[56,[[242,[-1]]]]],243],[[[174,[-1]],26],[[56,[[242,[-1]]]]],243],[26,-1,[]],[26,-1,[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[26,2],[[[174,[-1]]],2,243],[-1,-1,[]],[[[174,[-1]]],[[60,[146,244]]],243],[[[243,[],[[245,[-1]]]],[147,[146]]],[[119,[[55,[118]]]]],[53,54]],[[],[[174,[-1]]],[243,241]],[[],26],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[],[[28,[58,59]]]],[[[174,[-1]]],26,243],[[]],[[[174,[-1]],26],[[246,[146]]],243],[-1,[[119,[[55,[118]]]]],[]],[[[174,[[243,[],[[245,[-1]]]]]]],[[119,[[55,[118]]]]],[53,54]],[[[174,[-1]]],2,243],[[[174,[-1]],-2,-3],2,243,52,[118,53]],[[[174,[-1]]],2,243],[[[174,[-1]]],[],243],[[[174,[-1]],247],2,243],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,70,[]],[-1,27,[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,[[-1,3],2,[]],[[-1,1],2,[]],[[-1,3],2,[]],[[-1,1],2,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],[-1,4,[]],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[146,146],[244,244],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[146,146],98],[[244,244],98],[[-1,-2],98,[],[]],[[-1,-2],98,[],[]],[[],146],[[],244],[26,-1,[]],[26,-1,[]],[26,-1,[]],[26,-1,[]],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[-1,[[28,[146]]],29],[-1,[[28,[244]]],29],[[-1,-2],[[28,[[30,[-3,-4]]]]],[],[],[],[]],[26,2],[26,2],[[146,146],31],[[244,244],31],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[146,33],36],[[244,33],36],[-1,-1,[]],[-1,-1,[]],[[-1,-2],24,[43,44],45],[[-1,-2],24,[43,44],45],[[146,-1],2,50],[[244,-1],2,50],[[],27],[248,24],[[],26],[[],26],[-1,-2,[],[]],[-1,-2,[],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[55,[-1]]],[[55,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[56,[-1]]],[[56,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[[57,[-1]]],[[57,[4]]],[]],[[249,-1],-2,[],[]],0,[[],[[28,[58,59]]]],[[],[[28,[58,59]]]],[[249,-1],26,[]],[[[151,[192]]],247],[[146,146],[[9,[98]]]],[[244,244],[[9,[98]]]],0,[[]],[[]],0,[[146,-1],28,69],[[244,-1],28,69],0,[[],27],0,[248,24],0,[-1,-2,[],[]],[-1,-2,[],[]],[[249,-1,-2],[[9,[[2,[-3,-4]]]]],[],[],[],[]],0,[[],26],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,[[28,[-2]]],[],[]],[-1,70,[]],[-1,70,[]],[-1,27,[]],[-1,27,[]],0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],0,[238,24]],"c":[],"p":[[5,"Private",3547],[1,"tuple"],[5,"Private",3547],[10,"Any",3548],[10,"Error",3549],[5,"Command",3550],[6,"Error",0],[5,"Backtrace",3551],[6,"Option",3552],[6,"QueryError",0],[5,"NotFoundSnafu",0],[5,"MissingSnafu",0],[5,"Snafu",0],[5,"String",3553],[10,"Into",3554],[6,"StatusCode",3555],[5,"Leaf",0],[10,"Clone",3556],[10,"NodeType",3557],[5,"Commitment",3558],[10,"Resolvable",0],[10,"Committable",3558],[10,"RngCore",3559],[1,"u64"],[5,"Options",0],[1,"usize"],[1,"str"],[6,"Result",3560],[10,"Deserializer",3561],[5,"With",3562],[1,"bool"],[6,"BlockError",3563],[5,"Formatter",3564],[5,"Error",3564],[10,"Debug",3564],[8,"Result",3564],[6,"Error",3231],[6,"Error",346],[6,"Error",2828],[6,"Error",2457],[5,"ArgMatches",3565],[8,"Error",3566],[10,"Hash",3567],[10,"Sized",3568],[10,"BuildHasher",3567],[5,"QuorumData",3569],[5,"SuccessThreshold",3570],[5,"SimpleCertificate",3570],[5,"Id",3571],[10,"Hasher",3567],[5,"IndentedSection",3572],[10,"Display",3564],[10,"Send",3568],[10,"Sync",3568],[5,"Box",3573],[5,"Arc",3574],[5,"Rc",3575],[5,"Layout",3576],[5,"LayoutError",3576],[5,"SystemContextHandle",3577],[10,"AvailabilityDataSource",346],[10,"NodeDataSource",2828],[10,"StatusDataSource",3231],[10,"UpdateDataSource",1202],[10,"VersionedDataSource",1202],[10,"NodeImplementation",3557],[10,"StaticVersionType",3578],[10,"Serialize",3579],[10,"Serializer",3579],[5,"TypeId",3548],[5,"InconsistentLeafError",346],[5,"LeafQueryData",346],[8,"BlockHash",346],[5,"PayloadQueryData",346],[5,"VidCommonQueryData",346],[5,"TransactionQueryData",346],[5,"FetchLeafSnafu",346],[5,"FetchBlockSnafu",346],[5,"FetchTransactionSnafu",346],[5,"InvalidTransactionIndexSnafu",346],[5,"CustomSnafu",346],[17,"TransactionIndex"],[17,"Iter"],[17,"InclusionProof"],[10,"QueryablePayload",346],[10,"PartialEq",3580],[10,"Eq",3580],[10,"Ord",3580],[10,"DeserializeOwned",3561],[17,"Item"],[10,"Iterator",3581],[6,"LeafId",346],[6,"BlockId",346],[5,"BlockQueryData",346],[5,"BlockSummaryQueryData",346],[5,"TransactionSummaryQueryData",346],[5,"RequestSnafu",346],[6,"Ordering",3580],[8,"VidCommon",0],[6,"Fetch",346],[10,"ErrorCompat",3582],[17,"Source"],[5,"NoneError",3582],[10,"IntoError",3582],[8,"Payload",0],[5,"Options",346],[5,"Api",3583],[6,"ApiError",3583],[10,"ReadState",3584],[8,"TransactionIndex",346],[8,"Transaction",0],[8,"LeafHash",346],[6,"RequestError",3585],[17,"LeafRange"],[17,"BlockRange"],[17,"PayloadRange"],[17,"VidCommonRange"],[10,"Future",3586],[5,"Pin",3587],[10,"Stream",3588],[10,"Unpin",3568],[10,"RangeBounds",3589],[8,"TransactionHash",346],[8,"VidCommitment",0],[8,"Header",0],[17,"Error"],[10,"UpdateAvailabilityData",346],[8,"VidShare",0],[17,"Output"],[10,"FnOnce",3590],[8,"Metadata",0],[8,"QuorumCertificate",3570],[10,"QueryableHeader",346],[5,"Duration",3591],[5,"ExtensibleDataSource",1202],[5,"MetricsDataSource",1202],[5,"Path",3592],[8,"FileSystemDataSource",1202],[8,"Result",3593],[10,"AvailabilityProvider",1334],[5,"AtomicStoreLoader",3594],[6,"WindowStart",2828],[6,"Snapshot",2457],[10,"MerklizedState",2457],[10,"MerklizedStateDataSource",2457],[5,"MockTypes",3428],[5,"Event",3595],[10,"Default",3596],[10,"TestableDataSource",3381],[8,"MerklePath",3597],[5,"Vec",3598],[10,"UpdateStateData",2457],[5,"PrometheusMetrics",2605],[10,"Metrics",3599],[5,"FetchingDataSource",1334],[5,"Builder",1334],[10,"AvailabilityStorage",1547],[5,"Pruner",1334],[5,"Config",1810],[8,"Builder",1528],[5,"Error",1810],[5,"FileSystemStorage",1565],[5,"StorageReadGuard",1334],[5,"StorageWriteGuard",1334],[5,"RwLockReadGuard",3600],[5,"RwLockWriteGuard",3600],[5,"SqlStorage",1810],[5,"Transaction",1810],[8,"QueryResult",0],[8,"SqlDataSource",1528],[6,"PersistenceError",3601],[5,"NoStorage",1617],[6,"DataSource",1671],[5,"MockNetwork",3381],[5,"PrunerCfg",1754],[10,"PruneStorage",1754],[10,"PrunerConfig",1754],[10,"PrunedHeightStorage",1754],[1,"u16"],[5,"Type",3602],[5,"Migration",1810],[5,"OffsetDateTime",3603],[10,"ToSql",3602],[5,"Chain",3593],[10,"Query",1810],[5,"LTree",1810],[10,"ToStatement",3604],[10,"IntoIterator",3605],[1,"never"],[5,"Config",3606],[10,"DoubleEndedIterator",3607],[1,"u8"],[1,"slice"],[6,"Type",3608],[5,"BytesMut",3609],[6,"IsNull",3602],[5,"Error",3610],[1,"array"],[10,"BorrowToSql",3602],[1,"u32"],[5,"TmpDb",2096],[5,"Fetcher",2152],[10,"LocalCallback",2152],[10,"Callback",2152],[10,"Request",2340],[10,"Provider",2194],[5,"TestProvider",2194],[5,"AnyProvider",2194],[5,"QueryServiceProvider",2194],[5,"NoFetching",2194],[5,"LeafRequest",2340],[5,"VidCommonRequest",2340],[5,"PayloadRequest",2340],[5,"Url",3611],[5,"Options",2457],[10,"UpdateStateStorage",2457],[5,"Counter",2605],[5,"Histogram",2605],[1,"f64"],[6,"MetricsError",2605],[5,"Gauge",2605],[5,"Label",2605],[10,"Counter",3599],[10,"Gauge",3599],[10,"Histogram",3599],[10,"Label",3599],[6,"Error",3612],[1,"i64"],[5,"CustomSnafu",2828],[5,"SyncStatus",2828],[5,"TimeWindowQueryData",2828],[5,"RequestSnafu",2828],[5,"QuerySnafu",2828],[5,"QueryVidSnafu",2828],[5,"QueryWindowSnafu",2828],[5,"Options",2828],[10,"Deserialize",3561],[10,"HeightIndexed",3545],[5,"MempoolQueryData",3231],[5,"Options",3231],[10,"UpdateStatusData",3231],[5,"RwLock",3600],[10,"DataSourceLifeCycle",3381],[5,"MockNodeImpl",3428],[17,"Storage"],[8,"SignatureKey",0],[8,"MockTransaction",3428],[8,"MockHeader",3428],[8,"MockPayload",3428],[15,"Custom",339],[15,"Availability",339],[15,"Node",339],[15,"Status",339],[15,"MerklizedState",339],[15,"Error",345],[15,"InvalidTransactionIndex",1194],[15,"Custom",1194],[15,"FetchLeaf",1194],[15,"FetchBlock",1194],[15,"FetchTransaction",1194],[15,"Request",1194],[6,"Storage",1671],[15,"NoStorage",1753],[5,"TestMerkleTreeMigration",2096],[15,"Custom",2601],[15,"Request",2601],[15,"Query",2601],[15,"NoSuchMetric",2824],[15,"NoSuchSubgroup",2824],[15,"Prometheus",2824],[15,"QueryVid",3222],[15,"QueryWindow",3222],[15,"Custom",3222],[15,"Request",3222],[15,"Query",3222],[15,"Internal",3375],[15,"Request",3375],[8,"MockQuorumProposal",3428],[8,"MockMerkleTree",3428],[8,"MockStorage",3428]],"b":[[149,"impl-Debug-for-Leaf%3CTYPES%3E"],[150,"impl-Display-for-Leaf%3CTYPES%3E"],[151,"impl-Debug-for-Error"],[152,"impl-Display-for-Error"],[156,"impl-Display-for-QueryError"],[157,"impl-Debug-for-QueryError"],[159,"impl-From%3C(String,+StatusCode)%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[162,"impl-From%3CError%3E-for-Error"],[163,"impl-From%3CError%3E-for-Error"],[164,"impl-From%3CError%3E-for-Error"],[714,"impl-Display-for-LeafId%3CTypes%3E"],[715,"impl-Debug-for-LeafId%3CTypes%3E"],[716,"impl-Display-for-BlockId%3CTypes%3E"],[717,"impl-Debug-for-BlockId%3CTypes%3E"],[719,"impl-Display-for-InconsistentLeafError%3CTypes%3E"],[720,"impl-Debug-for-InconsistentLeafError%3CTypes%3E"],[733,"impl-Debug-for-Error"],[734,"impl-Display-for-Error"],[736,"impl-From%3CCommitment%3CLeaf%3CTypes%3E%3E%3E-for-LeafId%3CTypes%3E"],[738,"impl-From%3Cusize%3E-for-LeafId%3CTypes%3E"],[739,"impl-From%3Cusize%3E-for-BlockId%3CTypes%3E"],[741,"impl-From%3CCommitment%3C%3CTypes+as+NodeType%3E::BlockHeader%3E%3E-for-BlockId%3CTypes%3E"],[759,"impl-From%3CRequestError%3E-for-Error"],[760,"impl-From%3C(String,+StatusCode)%3E-for-Error"],[1222,"impl-NodeDataSource%3CTypes%3E-for-ExtensibleDataSource%3CD,+U%3E"],[1223,"impl-StatusDataSource-for-ExtensibleDataSource%3CD,+U%3E"],[1239,"impl-DataSourceLifeCycle-for-FetchingDataSource%3CMockTypes,+FileSystemStorage%3CMockTypes%3E,+P%3E"],[1240,"impl-FetchingDataSource%3CTypes,+FileSystemStorage%3CTypes%3E,+P%3E"],[1354,"impl-NodeDataSource%3CTypes%3E-for-FetchingDataSource%3CTypes,+S,+P%3E"],[1355,"impl-StatusDataSource-for-FetchingDataSource%3CTypes,+S,+P%3E"],[1536,"impl-FetchingDataSource%3CTypes,+SqlStorage,+P%3E"],[1537,"impl-DataSourceLifeCycle-for-FetchingDataSource%3CMockTypes,+SqlStorage,+P%3E"],[1681,"impl-NodeDataSource%3CMockTypes%3E-for-DataSource"],[1682,"impl-StatusDataSource-for-DataSource"],[1823,"impl-FromSql%3C\'a%3E-for-LTree"],[1824,"impl-ToSql-for-LTree"],[1838,"impl-AsRef%3Cdyn+Error+%2B+Send+%2B+Sync%3E-for-Error"],[1839,"impl-AsRef%3Cdyn+Error%3E-for-Error"],[1919,"impl-Display-for-Error"],[1920,"impl-Debug-for-Error"],[1921,"impl-Display-for-Migration"],[1922,"impl-Debug-for-Migration"],[2252,"impl-Provider%3CTypes,+LeafRequest%3E-for-AnyProvider%3CTypes%3E"],[2253,"impl-Provider%3CTypes,+VidCommonRequest%3E-for-AnyProvider%3CTypes%3E"],[2254,"impl-Provider%3CTypes,+PayloadRequest%3E-for-AnyProvider%3CTypes%3E"],[2255,"impl-Provider%3CTypes,+LeafRequest%3E-for-QueryServiceProvider%3CVer%3E"],[2256,"impl-Provider%3CTypes,+VidCommonRequest%3E-for-QueryServiceProvider%3CVer%3E"],[2257,"impl-Provider%3CTypes,+PayloadRequest%3E-for-QueryServiceProvider%3CVer%3E"],[2523,"impl-Debug-for-Snapshot%3CTypes,+T%3E"],[2524,"impl-Display-for-Snapshot%3CTypes,+T%3E"],[2525,"impl-Display-for-Error"],[2526,"impl-Debug-for-Error"],[2529,"impl-From%3CRequestError%3E-for-Error"],[2531,"impl-From%3C(String,+StatusCode)%3E-for-Error"],[2532,"impl-From%3CQueryError%3E-for-Error"],[2696,"impl-Debug-for-MetricsError"],[2697,"impl-Display-for-MetricsError"],[3007,"impl-Debug-for-Error"],[3008,"impl-Display-for-Error"],[3020,"impl-From%3CQueryError%3E-for-Error"],[3021,"impl-From%3C(String,+StatusCode)%3E-for-Error"],[3023,"impl-From%3CRequestError%3E-for-Error"],[3298,"impl-Debug-for-Error"],[3299,"impl-Display-for-Error"],[3303,"impl-From%3CRequestError%3E-for-Error"],[3304,"impl-From%3CString%3E-for-Error"]]}]\ ]')); if (typeof exports !== 'undefined') exports.searchIndex = searchIndex; else if (window.initSearch) window.initSearch(searchIndex); diff --git a/src/hotshot_query_service/api.rs.html b/src/hotshot_query_service/api.rs.html index 231e3f1b1..496d11ebb 100644 --- a/src/hotshot_query_service/api.rs.html +++ b/src/hotshot_query_service/api.rs.html @@ -57,6 +57,7 @@ 56 57 58 +59
// Copyright (c) 2022 Espresso Systems (espressosys.com)
 // This file is part of the HotShot Query Service library.
 //
@@ -73,12 +74,13 @@
 use std::path::Path;
 use tide_disco::api::{Api, ApiError};
 use toml::{map::Entry, Value};
+use versioned_binary_serialization::version::StaticVersionType;
 
-pub(crate) fn load_api<State, Error>(
+pub(crate) fn load_api<State, Error, Ver: StaticVersionType>(
     path: Option<impl AsRef<Path>>,
     default: &str,
     extensions: impl IntoIterator<Item = Value>,
-) -> Result<Api<State, Error>, ApiError> {
+) -> Result<Api<State, Error, Ver>, ApiError> {
     let mut toml = match path {
         Some(path) => load_toml(path.as_ref())?,
         None => toml::from_str(default).map_err(|err| ApiError::CannotReadToml {
diff --git a/src/hotshot_query_service/availability.rs.html b/src/hotshot_query_service/availability.rs.html
index 1796c5b17..33fea8b1f 100644
--- a/src/hotshot_query_service/availability.rs.html
+++ b/src/hotshot_query_service/availability.rs.html
@@ -956,6 +956,25 @@
 955
 956
 957
+958
+959
+960
+961
+962
+963
+964
+965
+966
+967
+968
+969
+970
+971
+972
+973
+974
+975
+976
 
// Copyright (c) 2022 Espresso Systems (espressosys.com)
 // This file is part of the HotShot Query Service library.
 //
@@ -994,6 +1013,7 @@
 use snafu::{OptionExt, Snafu};
 use std::{fmt::Display, path::PathBuf, str::FromStr, time::Duration};
 use tide_disco::{api::ApiError, method::ReadState, Api, RequestError, StatusCode};
+use versioned_binary_serialization::version::StaticVersionType;
 
 pub(crate) mod data_source;
 mod fetch;
@@ -1098,13 +1118,16 @@
     }
 }
 
-pub fn define_api<State, Types: NodeType>(options: &Options) -> Result<Api<State, Error>, ApiError>
+pub fn define_api<State, Types: NodeType, Ver: StaticVersionType + 'static>(
+    options: &Options,
+    _: Ver,
+) -> Result<Api<State, Error, Ver>, ApiError>
 where
     State: 'static + Send + Sync + ReadState,
     <State as ReadState>::State: Send + Sync + AvailabilityDataSource<Types>,
     Payload<Types>: QueryablePayload,
 {
-    let mut api = load_api::<State, Error>(
+    let mut api = load_api::<State, Error, Ver>(
         options.api_path.as_ref(),
         include_str!("../api/availability.toml"),
         options.extensions.clone(),
@@ -1453,7 +1476,10 @@
     use commit::Committable;
     use futures::future::FutureExt;
     use hotshot_example_types::state_types::TestInstanceState;
-    use hotshot_types::data::Leaf;
+    use hotshot_types::{
+        constants::{Version01, STATIC_VER_0_1},
+        data::Leaf,
+    };
     use portpicker::pick_unused_port;
     use std::time::Duration;
     use surf_disco::Client;
@@ -1463,7 +1489,7 @@
 
     /// Get the current ledger height and a list of non-empty leaf/block pairs.
     async fn get_non_empty_blocks(
-        client: &Client<Error>,
+        client: &Client<Error, Version01>,
     ) -> (
         u64,
         Vec<(LeafQueryData<MockTypes>, BlockQueryData<MockTypes>)>,
@@ -1496,7 +1522,7 @@
         unreachable!()
     }
 
-    async fn validate(client: &Client<Error>, height: u64) {
+    async fn validate(client: &Client<Error, Version01>, height: u64) {
         // Check the consistency of every block/leaf pair.
         for i in 0..height {
             // Limit the number of blocks we validate in order to
@@ -1741,20 +1767,26 @@
 
         // Start the web server.
         let port = pick_unused_port().unwrap();
-        let mut app = App::<_, Error>::with_state(network.data_source());
+        let mut app = App::<_, Error, Version01>::with_state(network.data_source());
         app.register_module(
             "availability",
-            define_api(&Options {
-                fetch_timeout,
-                ..Default::default()
-            })
+            define_api(
+                &Options {
+                    fetch_timeout,
+                    ..Default::default()
+                },
+                STATIC_VER_0_1,
+            )
             .unwrap(),
         )
         .unwrap();
-        network.spawn("server", app.serve(format!("0.0.0.0:{}", port)));
+        network.spawn(
+            "server",
+            app.serve(format!("0.0.0.0:{}", port), STATIC_VER_0_1),
+        );
 
         // Start a client.
-        let client = Client::<Error>::new(
+        let client = Client::<Error, Version01>::new(
             format!("http://localhost:{}/availability", port)
                 .parse()
                 .unwrap(),
@@ -1866,10 +1898,13 @@
         };
 
         let mut api =
-            define_api::<RwLock<ExtensibleDataSource<MockDataSource, u64>>, MockTypes>(&Options {
-                extensions: vec![extensions.into()],
-                ..Default::default()
-            })
+            define_api::<RwLock<ExtensibleDataSource<MockDataSource, u64>>, MockTypes, Version01>(
+                &Options {
+                    extensions: vec![extensions.into()],
+                    ..Default::default()
+                },
+                STATIC_VER_0_1,
+            )
             .unwrap();
         api.get("get_ext", |_, state| {
             async move { Ok(*state.as_ref()) }.boxed()
@@ -1884,13 +1919,16 @@
         })
         .unwrap();
 
-        let mut app = App::<_, Error>::with_state(RwLock::new(data_source));
+        let mut app = App::<_, Error, Version01>::with_state(RwLock::new(data_source));
         app.register_module("availability", api).unwrap();
 
         let port = pick_unused_port().unwrap();
-        let _server = BackgroundTask::spawn("server", app.serve(format!("0.0.0.0:{}", port)));
+        let _server = BackgroundTask::spawn(
+            "server",
+            app.serve(format!("0.0.0.0:{}", port), STATIC_VER_0_1),
+        );
 
-        let client = Client::<Error>::new(
+        let client = Client::<Error, Version01>::new(
             format!("http://localhost:{}/availability", port)
                 .parse()
                 .unwrap(),
diff --git a/src/hotshot_query_service/data_source.rs.html b/src/hotshot_query_service/data_source.rs.html
index d09e06cf1..94e106bdc 100644
--- a/src/hotshot_query_service/data_source.rs.html
+++ b/src/hotshot_query_service/data_source.rs.html
@@ -1762,7 +1762,7 @@
         let mut ds = D::connect(&storage).await;
 
         // Set up a mock VID scheme to use for generating test data.
-        let vid = vid_scheme(2);
+        let mut vid = vid_scheme(2);
 
         // Generate some mock leaves and blocks to insert.
         let mut leaves = vec![LeafQueryData::<MockTypes>::genesis(&TestInstanceState {})];
@@ -1906,8 +1906,8 @@
             let payload_commitment = vid_commitment(&encoded, 1);
             let header = TestBlockHeader {
                 block_number: i,
-                timestamp: i,
                 payload_commitment,
+                timestamp: i,
             };
 
             let mut leaf = LeafQueryData::<MockTypes>::genesis(&TestInstanceState {});
@@ -1958,7 +1958,7 @@
         let mut ds = D::connect(&storage).await;
 
         // Generate some test VID data.
-        let vid = vid_scheme(2);
+        let mut vid = vid_scheme(2);
         let disperse = vid.disperse([]).unwrap();
 
         // Insert test data with VID common and a share.
@@ -2207,7 +2207,7 @@
         },
     };
     use bincode::Options;
-    use hotshot_utils::bincode::bincode_opts;
+    use hotshot_types::utils::bincode_opts;
     use std::time::Duration;
 
     #[async_std::test]
diff --git a/src/hotshot_query_service/data_source/fs.rs.html b/src/hotshot_query_service/data_source/fs.rs.html
index 0a3c941b7..22c352c67 100644
--- a/src/hotshot_query_service/data_source/fs.rs.html
+++ b/src/hotshot_query_service/data_source/fs.rs.html
@@ -279,6 +279,8 @@
 278
 279
 280
+281
+282
 

// Copyright (c) 2022 Espresso Systems (espressosys.com)
 // This file is part of the HotShot Query Service library.
 //
@@ -382,6 +384,7 @@
 /// # };
 /// # use std::path::Path;
 /// # use tide_disco::App;
+/// # use versioned_binary_serialization::version::StaticVersionType;
 /// struct AppState {
 ///     // Top-level storage coordinator
 ///     store: AtomicStore,
@@ -389,10 +392,11 @@
 ///     // additional state for other modules
 /// }
 ///
-/// async fn init_server(
+/// async fn init_server<Ver: StaticVersionType + 'static>(
 ///     storage_path: &Path,
 ///     hotshot: SystemContextHandle<AppTypes, AppNodeImpl>,
-/// ) -> Result<App<Arc<RwLock<AppState>>, Error>, Error> {
+///     _: Ver,
+/// ) -> Result<App<Arc<RwLock<AppState>>, Error, Ver>, Error> {
 ///     let mut loader = AtomicStoreLoader::create(storage_path, "my_app") // or `open`
 ///         .map_err(Error::internal)?;
 ///     let hotshot_qs = FileSystemDataSource::create_with_store(&mut loader, NoFetching)
diff --git a/src/hotshot_query_service/data_source/metrics.rs.html b/src/hotshot_query_service/data_source/metrics.rs.html
index a67a50dc2..58874049e 100644
--- a/src/hotshot_query_service/data_source/metrics.rs.html
+++ b/src/hotshot_query_service/data_source/metrics.rs.html
@@ -158,8 +158,8 @@
 /// # async fn doc() -> Result<(), hotshot_query_service::Error> {
 /// let data_source = MetricsDataSource::default();
 /// let hotshot = SystemContext::<AppTypes, AppNodeImpl>::init(
-/// #   panic!(), panic!(), panic!(), panic!(), panic!(), panic!(), panic!(), panic!(),
-///     ConsensusMetricsValue::new(&*data_source.populate_metrics()),
+/// #   panic!(), panic!(), panic!(), panic!(), panic!(), panic!(), panic!(),
+///     ConsensusMetricsValue::new(&*data_source.populate_metrics()), panic!(),
 ///     // Other fields omitted
 /// ).await.map_err(Error::internal)?.0;
 /// # Ok(())
diff --git a/src/hotshot_query_service/data_source/sql.rs.html b/src/hotshot_query_service/data_source/sql.rs.html
index f8afd7114..ba8a760e3 100644
--- a/src/hotshot_query_service/data_source/sql.rs.html
+++ b/src/hotshot_query_service/data_source/sql.rs.html
@@ -463,6 +463,8 @@
 462
 463
 464
+465
+466
 
// Copyright (c) 2022 Espresso Systems (espressosys.com)
 // This file is part of the HotShot Query Service library.
 //
@@ -730,15 +732,17 @@
 /// #   MockNodeImpl as AppNodeImpl, MockTypes as AppTypes,
 /// # };
 /// # use tide_disco::App;
+/// # use versioned_binary_serialization::version::StaticVersionType;
 /// struct AppState {
 ///     hotshot_qs: SqlDataSource<AppTypes, NoFetching>,
 ///     // additional state for other modules
 /// }
 ///
-/// async fn init_server(
+/// async fn init_server<Ver: StaticVersionType + 'static>(
 ///     config: Config,
 ///     hotshot: SystemContextHandle<AppTypes, AppNodeImpl>,
-/// ) -> Result<App<Arc<RwLock<AppState>>, Error>, Error> {
+///     _: Ver,
+/// ) -> Result<App<Arc<RwLock<AppState>>, Error, Ver>, Error> {
 ///     let mut hotshot_qs = config.connect(NoFetching).await.map_err(Error::internal)?;
 ///     // Initialize storage for other modules, using `hotshot_qs` to access the database.
 ///     let tx = hotshot_qs.transaction().await.map_err(Error::internal)?;
diff --git a/src/hotshot_query_service/data_source/storage/no_storage.rs.html b/src/hotshot_query_service/data_source/storage/no_storage.rs.html
index 2266bcbf7..fe5f10891 100644
--- a/src/hotshot_query_service/data_source/storage/no_storage.rs.html
+++ b/src/hotshot_query_service/data_source/storage/no_storage.rs.html
@@ -572,6 +572,14 @@
 571
 572
 573
+574
+575
+576
+577
+578
+579
+580
+581
 
// Copyright (c) 2022 Espresso Systems (espressosys.com)
 // This file is part of the HotShot Query Service library.
 //
@@ -783,6 +791,7 @@
     };
     use futures::stream::{BoxStream, StreamExt};
     use hotshot::types::Event;
+    use hotshot_types::constants::{Version01, STATIC_VER_0_1};
     use portpicker::pick_unused_port;
     use std::{fmt::Display, time::Duration};
     use tide_disco::App;
@@ -803,7 +812,7 @@
 
     pub enum DataSource {
         Sql(SqlDataSource<MockTypes, NoFetching>),
-        NoStorage(FetchingDataSource<MockTypes, NoStorage, QueryServiceProvider>),
+        NoStorage(FetchingDataSource<MockTypes, NoStorage, QueryServiceProvider<Version01>>),
     }
 
     #[async_trait]
@@ -831,6 +840,7 @@
                         format!("http://localhost:{fetch_from_port}")
                             .parse()
                             .unwrap(),
+                        STATIC_VER_0_1,
                     );
                     Self::NoStorage(
                         FetchingDataSource::builder(NoStorage, provider)
@@ -872,10 +882,16 @@
             };
             tracing::info!("spawning server for missing data on port {fetch_from_port}");
             let api_data_source = network.data_source_index(1);
-            let mut app = App::<_, Error>::with_state(api_data_source);
-            app.register_module("availability", define_api(&Default::default()).unwrap())
-                .unwrap();
-            network.spawn("server", app.serve(format!("0.0.0.0:{fetch_from_port}")));
+            let mut app = App::<_, Error, Version01>::with_state(api_data_source);
+            app.register_module(
+                "availability",
+                define_api(&Default::default(), STATIC_VER_0_1).unwrap(),
+            )
+            .unwrap();
+            network.spawn(
+                "server",
+                app.serve(format!("0.0.0.0:{fetch_from_port}"), STATIC_VER_0_1),
+            );
         }
 
         async fn handle_event(&mut self, event: &Event<MockTypes>) {
diff --git a/src/hotshot_query_service/fetching/provider/any.rs.html b/src/hotshot_query_service/fetching/provider/any.rs.html
index 6a6cc3647..d517a616a 100644
--- a/src/hotshot_query_service/fetching/provider/any.rs.html
+++ b/src/hotshot_query_service/fetching/provider/any.rs.html
@@ -277,6 +277,15 @@
 276
 277
 278
+279
+280
+281
+282
+283
+284
+285
+286
+287
 
// Copyright (c) 2022 Espresso Systems (espressosys.com)
 // This file is part of the HotShot Query Service library.
 //
@@ -345,6 +354,7 @@
 /// Fetching from multiple query services, for resiliency.
 ///
 /// ```
+/// # use hotshot_types::constants::STATIC_VER_0_1;
 /// # use hotshot_types::traits::node_implementation::NodeType;
 /// # async fn doc<Types>() -> anyhow::Result<()>
 /// # where
@@ -352,8 +362,8 @@
 /// # {
 /// use hotshot_query_service::fetching::provider::{AnyProvider, QueryServiceProvider};
 ///
-/// let qs1 = QueryServiceProvider::new("https://backup.query-service.1".parse()?);
-/// let qs2 = QueryServiceProvider::new("https://backup.query-service.2".parse()?);
+/// let qs1 = QueryServiceProvider::new("https://backup.query-service.1".parse()?, STATIC_VER_0_1);
+/// let qs2 = QueryServiceProvider::new("https://backup.query-service.2".parse()?, STATIC_VER_0_1);
 /// let provider = AnyProvider::<Types>::default()
 ///     .with_provider(qs1)
 ///     .with_provider(qs2);
@@ -491,6 +501,7 @@
         Error,
     };
     use futures::stream::StreamExt;
+    use hotshot_types::constants::{Version01, STATIC_VER_0_1};
     use portpicker::pick_unused_port;
     use tide_disco::App;
 
@@ -505,10 +516,16 @@
 
         // Start a web server that the non-consensus node can use to fetch blocks.
         let port = pick_unused_port().unwrap();
-        let mut app = App::<_, Error>::with_state(network.data_source());
-        app.register_module("availability", define_api(&Default::default()).unwrap())
-            .unwrap();
-        let _server = BackgroundTask::spawn("server", app.serve(format!("0.0.0.0:{port}")));
+        let mut app = App::<_, Error, Version01>::with_state(network.data_source());
+        app.register_module(
+            "availability",
+            define_api(&Default::default(), STATIC_VER_0_1).unwrap(),
+        )
+        .unwrap();
+        let _server = BackgroundTask::spawn(
+            "server",
+            app.serve(format!("0.0.0.0:{port}"), STATIC_VER_0_1),
+        );
 
         // Start a data source which is not receiving events from consensus, only from a peer.
         let db = TmpDb::init().await;
@@ -517,6 +534,7 @@
                 .with_provider(NoFetching)
                 .with_provider(QueryServiceProvider::new(
                     format!("http://localhost:{port}").parse().unwrap(),
+                    STATIC_VER_0_1,
                 ));
         let mut data_source = db.config().connect(provider.clone()).await.unwrap();
 
diff --git a/src/hotshot_query_service/fetching/provider/query_service.rs.html b/src/hotshot_query_service/fetching/provider/query_service.rs.html
index e8897122f..ce554f244 100644
--- a/src/hotshot_query_service/fetching/provider/query_service.rs.html
+++ b/src/hotshot_query_service/fetching/provider/query_service.rs.html
@@ -849,6 +849,60 @@
 848
 849
 850
+851
+852
+853
+854
+855
+856
+857
+858
+859
+860
+861
+862
+863
+864
+865
+866
+867
+868
+869
+870
+871
+872
+873
+874
+875
+876
+877
+878
+879
+880
+881
+882
+883
+884
+885
+886
+887
+888
+889
+890
+891
+892
+893
+894
+895
+896
+897
+898
+899
+900
+901
+902
+903
+904
 
// Copyright (c) 2022 Espresso Systems (espressosys.com)
 // This file is part of the HotShot Query Service library.
 //
@@ -876,18 +930,19 @@
 };
 use jf_primitives::vid::VidScheme;
 use surf_disco::{Client, Url};
+use versioned_binary_serialization::version::StaticVersionType;
 
 /// Data availability provider backed by another instance of this query service.
 ///
 /// This fetcher implements the [`Provider`] interface by querying the REST API provided by another
 /// instance of this query service to try and retrieve missing objects.
 #[derive(Clone, Debug)]
-pub struct QueryServiceProvider {
-    client: Client<Error>,
+pub struct QueryServiceProvider<Ver: StaticVersionType> {
+    client: Client<Error, Ver>,
 }
 
-impl QueryServiceProvider {
-    pub fn new(url: Url) -> Self {
+impl<Ver: StaticVersionType> QueryServiceProvider<Ver> {
+    pub fn new(url: Url, _: Ver) -> Self {
         Self {
             client: Client::new(url),
         }
@@ -895,7 +950,7 @@
 }
 
 #[async_trait]
-impl<Types> Provider<Types, PayloadRequest> for QueryServiceProvider
+impl<Types, Ver: StaticVersionType> Provider<Types, PayloadRequest> for QueryServiceProvider<Ver>
 where
     Types: NodeType,
 {
@@ -952,7 +1007,7 @@
 }
 
 #[async_trait]
-impl<Types> Provider<Types, LeafRequest> for QueryServiceProvider
+impl<Types, Ver: StaticVersionType> Provider<Types, LeafRequest> for QueryServiceProvider<Ver>
 where
     Types: NodeType,
 {
@@ -980,7 +1035,7 @@
 }
 
 #[async_trait]
-impl<Types> Provider<Types, VidCommonRequest> for QueryServiceProvider
+impl<Types, Ver: StaticVersionType> Provider<Types, VidCommonRequest> for QueryServiceProvider<Ver>
 where
     Types: NodeType,
 {
@@ -1038,12 +1093,13 @@
         stream::StreamExt,
     };
     use generic_array::GenericArray;
+    use hotshot_types::constants::{Version01, STATIC_VER_0_1};
     use portpicker::pick_unused_port;
     use rand::RngCore;
     use std::{future::IntoFuture, time::Duration};
     use tide_disco::{error::ServerError, App};
 
-    type Provider = TestProvider<QueryServiceProvider>;
+    type Provider = TestProvider<QueryServiceProvider<Version01>>;
 
     fn ignore<T>(_: T) {}
 
@@ -1078,15 +1134,22 @@
 
         // Start a web server that the non-consensus node can use to fetch blocks.
         let port = pick_unused_port().unwrap();
-        let mut app = App::<_, Error>::with_state(network.data_source());
-        app.register_module("availability", define_api(&Default::default()).unwrap())
-            .unwrap();
-        network.spawn("server", app.serve(format!("0.0.0.0:{port}")));
+        let mut app = App::<_, Error, Version01>::with_state(network.data_source());
+        app.register_module(
+            "availability",
+            define_api(&Default::default(), STATIC_VER_0_1).unwrap(),
+        )
+        .unwrap();
+        network.spawn(
+            "server",
+            app.serve(format!("0.0.0.0:{port}"), STATIC_VER_0_1),
+        );
 
         // Start a data source which is not receiving events from consensus, only from a peer.
         let db = TmpDb::init().await;
         let provider = Provider::new(QueryServiceProvider::new(
             format!("http://localhost:{port}").parse().unwrap(),
+            STATIC_VER_0_1,
         ));
         let mut data_source = data_source(&db, &provider).await;
 
@@ -1298,15 +1361,22 @@
 
         // Start a web server that the non-consensus node can use to fetch blocks.
         let port = pick_unused_port().unwrap();
-        let mut app = App::<_, Error>::with_state(network.data_source());
-        app.register_module("availability", define_api(&Default::default()).unwrap())
-            .unwrap();
-        network.spawn("server", app.serve(format!("0.0.0.0:{port}")));
+        let mut app = App::<_, Error, Version01>::with_state(network.data_source());
+        app.register_module(
+            "availability",
+            define_api(&Default::default(), STATIC_VER_0_1).unwrap(),
+        )
+        .unwrap();
+        network.spawn(
+            "server",
+            app.serve(format!("0.0.0.0:{port}"), STATIC_VER_0_1),
+        );
 
         // Start a data source which is not receiving events from consensus, only from a peer.
         let db = TmpDb::init().await;
         let provider = Provider::new(QueryServiceProvider::new(
             format!("http://localhost:{port}").parse().unwrap(),
+            STATIC_VER_0_1,
         ));
         let mut data_source = data_source(&db, &provider).await;
 
@@ -1350,15 +1420,22 @@
 
         // Start a web server that the non-consensus node can use to fetch blocks.
         let port = pick_unused_port().unwrap();
-        let mut app = App::<_, Error>::with_state(network.data_source());
-        app.register_module("availability", define_api(&Default::default()).unwrap())
-            .unwrap();
-        network.spawn("server", app.serve(format!("0.0.0.0:{port}")));
+        let mut app = App::<_, Error, Version01>::with_state(network.data_source());
+        app.register_module(
+            "availability",
+            define_api(&Default::default(), STATIC_VER_0_1).unwrap(),
+        )
+        .unwrap();
+        network.spawn(
+            "server",
+            app.serve(format!("0.0.0.0:{port}"), STATIC_VER_0_1),
+        );
 
         // Start a data source which is not receiving events from consensus, only from a peer.
         let db = TmpDb::init().await;
         let provider = Provider::new(QueryServiceProvider::new(
             format!("http://localhost:{port}").parse().unwrap(),
+            STATIC_VER_0_1,
         ));
         let mut data_source = data_source(&db, &provider).await;
 
@@ -1406,15 +1483,22 @@
 
         // Start a web server that the non-consensus node can use to fetch blocks.
         let port = pick_unused_port().unwrap();
-        let mut app = App::<_, Error>::with_state(network.data_source());
-        app.register_module("availability", define_api(&Default::default()).unwrap())
-            .unwrap();
-        network.spawn("server", app.serve(format!("0.0.0.0:{port}")));
+        let mut app = App::<_, Error, Version01>::with_state(network.data_source());
+        app.register_module(
+            "availability",
+            define_api(&Default::default(), STATIC_VER_0_1).unwrap(),
+        )
+        .unwrap();
+        network.spawn(
+            "server",
+            app.serve(format!("0.0.0.0:{port}"), STATIC_VER_0_1),
+        );
 
         // Start a data source which is not receiving events from consensus, only from a peer.
         let db = TmpDb::init().await;
         let provider = Provider::new(QueryServiceProvider::new(
             format!("http://localhost:{port}").parse().unwrap(),
+            STATIC_VER_0_1,
         ));
         let mut data_source = data_source(&db, &provider).await;
 
@@ -1459,15 +1543,22 @@
 
         // Start a web server that the non-consensus node can use to fetch blocks.
         let port = pick_unused_port().unwrap();
-        let mut app = App::<_, Error>::with_state(network.data_source());
-        app.register_module("availability", define_api(&Default::default()).unwrap())
-            .unwrap();
-        network.spawn("server", app.serve(format!("0.0.0.0:{port}")));
+        let mut app = App::<_, Error, Version01>::with_state(network.data_source());
+        app.register_module(
+            "availability",
+            define_api(&Default::default(), STATIC_VER_0_1).unwrap(),
+        )
+        .unwrap();
+        network.spawn(
+            "server",
+            app.serve(format!("0.0.0.0:{port}"), STATIC_VER_0_1),
+        );
 
         // Start a data source which is not receiving events from consensus, only from a peer.
         let db = TmpDb::init().await;
         let provider = Provider::new(QueryServiceProvider::new(
             format!("http://localhost:{port}").parse().unwrap(),
+            STATIC_VER_0_1,
         ));
         let mut data_source = data_source(&db, &provider).await;
 
@@ -1513,10 +1604,16 @@
 
         // Start a web server that the non-consensus node can use to fetch blocks.
         let port = pick_unused_port().unwrap();
-        let mut app = App::<_, Error>::with_state(network.data_source());
-        app.register_module("availability", define_api(&Default::default()).unwrap())
-            .unwrap();
-        network.spawn("server", app.serve(format!("0.0.0.0:{port}")));
+        let mut app = App::<_, Error, Version01>::with_state(network.data_source());
+        app.register_module(
+            "availability",
+            define_api(&Default::default(), STATIC_VER_0_1).unwrap(),
+        )
+        .unwrap();
+        network.spawn(
+            "server",
+            app.serve(format!("0.0.0.0:{port}"), STATIC_VER_0_1),
+        );
 
         // Start a data source which is not receiving events from consensus. We don't give it a
         // fetcher since transactions are always fetched passively anyways.
@@ -1581,15 +1678,22 @@
 
         // Start a web server that the non-consensus node can use to fetch blocks.
         let port = pick_unused_port().unwrap();
-        let mut app = App::<_, Error>::with_state(network.data_source());
-        app.register_module("availability", define_api(&Default::default()).unwrap())
-            .unwrap();
-        network.spawn("server", app.serve(format!("0.0.0.0:{port}")));
+        let mut app = App::<_, Error, Version01>::with_state(network.data_source());
+        app.register_module(
+            "availability",
+            define_api(&Default::default(), STATIC_VER_0_1).unwrap(),
+        )
+        .unwrap();
+        network.spawn(
+            "server",
+            app.serve(format!("0.0.0.0:{port}"), STATIC_VER_0_1),
+        );
 
         // Start a data source which is not receiving events from consensus.
         let db = TmpDb::init().await;
         let provider = Provider::new(QueryServiceProvider::new(
             format!("http://localhost:{port}").parse().unwrap(),
+            STATIC_VER_0_1,
         ));
         let mut data_source = builder(&db, &provider)
             .await
@@ -1644,7 +1748,7 @@
     }
 
     async fn malicious_server(port: u16) {
-        let mut api = load_api::<(), ServerError>(
+        let mut api = load_api::<(), ServerError, Version01>(
             None::<std::path::PathBuf>,
             include_str!("../../../api/availability.toml"),
             vec![],
@@ -1668,9 +1772,11 @@
         })
         .unwrap();
 
-        let mut app = App::<(), ServerError>::with_state(());
+        let mut app = App::<(), ServerError, Version01>::with_state(());
         app.register_module("availability", api).unwrap();
-        app.serve(format!("0.0.0.0:{port}")).await.ok();
+        app.serve(format!("0.0.0.0:{port}"), STATIC_VER_0_1)
+            .await
+            .ok();
     }
 
     #[async_std::test]
@@ -1680,8 +1786,10 @@
         let port = pick_unused_port().unwrap();
         let _server = BackgroundTask::spawn("malicious server", malicious_server(port));
 
-        let provider =
-            QueryServiceProvider::new(format!("http://localhost:{port}").parse().unwrap());
+        let provider = QueryServiceProvider::new(
+            format!("http://localhost:{port}").parse().unwrap(),
+            STATIC_VER_0_1,
+        );
         provider.client.connect(None).await;
 
         // Query for a random payload, the server will respond with a different payload, and we
diff --git a/src/hotshot_query_service/lib.rs.html b/src/hotshot_query_service/lib.rs.html
index 845cbc595..586d34aa5 100644
--- a/src/hotshot_query_service/lib.rs.html
+++ b/src/hotshot_query_service/lib.rs.html
@@ -795,6 +795,27 @@
 794
 795
 796
+797
+798
+799
+800
+801
+802
+803
+804
+805
+806
+807
+808
+809
+810
+811
+812
+813
+814
+815
+816
+817
 
// Copyright (c) 2022 Espresso Systems (espressosys.com)
 // This file is part of the HotShot Query Service library.
 //
@@ -835,6 +856,7 @@
 //!
 //! use async_std::{sync::{Arc, RwLock}, task::spawn};
 //! use futures::StreamExt;
+//! use hotshot_types::constants::{Version01, STATIC_VER_0_1};
 //! use hotshot::SystemContext;
 //! use tide_disco::App;
 //!
@@ -845,22 +867,22 @@
 //!
 //! // Create hotshot, giving it a handle to the status metrics.
 //! let hotshot = SystemContext::<AppTypes, AppNodeImpl>::init(
-//! #   panic!(), panic!(), panic!(), panic!(), panic!(), panic!(), panic!(), panic!(),
-//!     ConsensusMetricsValue::new(&*data_source.populate_metrics()),
+//! #   panic!(), panic!(), panic!(), panic!(), panic!(), panic!(), panic!(),
+//!     ConsensusMetricsValue::new(&*data_source.populate_metrics()), panic!(),
 //!     // Other fields omitted
 //! ).await.map_err(Error::internal)?.0;
 //!
 //! // Create API modules.
-//! let availability_api = availability::define_api(&Default::default())
+//! let availability_api = availability::define_api(&Default::default(), STATIC_VER_0_1)
 //!     .map_err(Error::internal)?;
-//! let node_api = node::define_api(&Default::default())
+//! let node_api = node::define_api(&Default::default(), STATIC_VER_0_1)
 //!     .map_err(Error::internal)?;
-//! let status_api = status::define_api(&Default::default())
+//! let status_api = status::define_api(&Default::default(), STATIC_VER_0_1)
 //!     .map_err(Error::internal)?;
 //!
 //! // Create app. We wrap `data_source` into an `RwLock` so we can share it with the web server.
 //! let data_source = Arc::new(RwLock::new(data_source));
-//! let mut app = App::<_, Error>::with_state(data_source.clone());
+//! let mut app = App::<_, Error, Version01>::with_state(data_source.clone());
 //! app
 //!     .register_module("availability", availability_api)
 //!     .map_err(Error::internal)?
@@ -870,7 +892,7 @@
 //!     .map_err(Error::internal)?;
 //!
 //! // Serve app.
-//! spawn(app.serve("0.0.0.0:8080"));
+//! spawn(app.serve("0.0.0.0:8080", STATIC_VER_0_1));
 //!
 //! // Update query data using HotShot events.
 //! let mut events = hotshot.get_event_stream();
@@ -892,6 +914,7 @@
 //! ```
 //! # use async_std::task::spawn;
 //! # use hotshot::types::SystemContextHandle;
+//! # use hotshot_types::constants::STATIC_VER_0_1;
 //! # use hotshot_query_service::{data_source::FileSystemDataSource, Error, Options};
 //! # use hotshot_query_service::fetching::provider::NoFetching;
 //! # use hotshot_query_service::testing::mocks::{MockNodeImpl, MockTypes};
@@ -900,7 +923,7 @@
 //! use hotshot_query_service::run_standalone_service;
 //!
 //! let data_source = FileSystemDataSource::create(storage_path, NoFetching).await.map_err(Error::internal)?;
-//! spawn(run_standalone_service(options, data_source, hotshot));
+//! spawn(run_standalone_service(options, data_source, hotshot, STATIC_VER_0_1));
 //! # Ok(())
 //! # }
 //! ```
@@ -972,6 +995,7 @@
 //! # use async_std::sync::RwLock;
 //! # use async_trait::async_trait;
 //! # use futures::FutureExt;
+//! # use hotshot_types::constants::STATIC_VER_0_1;
 //! # use hotshot_query_service::availability::{
 //! #   self, AvailabilityDataSource, FetchBlockSnafu, TransactionIndex,
 //! # };
@@ -979,19 +1003,21 @@
 //! # use hotshot_query_service::Error;
 //! # use snafu::ResultExt;
 //! # use tide_disco::{api::ApiError, method::ReadState, Api, App, StatusCode};
+//! # use versioned_binary_serialization::version::StaticVersionType;
 //! # #[async_trait]
 //! # trait UtxoDataSource: AvailabilityDataSource<AppTypes> {
 //! #   async fn find_utxo(&self, utxo: u64) -> Option<(usize, TransactionIndex<AppTypes>, usize)>;
 //! # }
 //!
-//! fn define_app_specific_availability_api<State>(
+//! fn define_app_specific_availability_api<State, Ver: StaticVersionType + 'static>(
 //!     options: &availability::Options,
-//! ) -> Result<Api<State, availability::Error>, ApiError>
+//!     bind_version: Ver,
+//! ) -> Result<Api<State, availability::Error, Ver>, ApiError>
 //! where
 //!     State: 'static + Send + Sync + ReadState,
 //!     <State as ReadState>::State: UtxoDataSource + Send + Sync,
 //! {
-//!     let mut api = availability::define_api(options)?;
+//!     let mut api = availability::define_api(options, bind_version)?;
 //!     api.get("get_utxo", |req, state: &<State as ReadState>::State| async move {
 //!         let utxo_index = req.integer_param("index")?;
 //!         let (block_index, txn_index, output_index) = state
@@ -1013,13 +1039,14 @@
 //!     Ok(api)
 //! }
 //!
-//! fn init_server<D: UtxoDataSource + Send + Sync + 'static>(
+//! fn init_server<D: UtxoDataSource + Send + Sync + 'static, Ver: StaticVersionType + 'static>(
 //!     options: &availability::Options,
 //!     data_source: D,
-//! ) -> Result<App<RwLock<D>, Error>, availability::Error> {
-//!     let api = define_app_specific_availability_api(options)
+//!     bind_version: Ver,
+//! ) -> Result<App<RwLock<D>, Error, Ver>, availability::Error> {
+//!     let api = define_app_specific_availability_api(options, bind_version)
 //!         .map_err(availability::Error::internal)?;
-//!     let mut app = App::with_state(RwLock::new(data_source));
+//!     let mut app = App::<_, _, Ver>::with_state(RwLock::new(data_source));
 //!     app.register_module("availability", api).map_err(availability::Error::internal)?;
 //!     Ok(app)
 //! }
@@ -1225,6 +1252,7 @@
 use snafu::Snafu;
 use task::BackgroundTask;
 use tide_disco::{App, StatusCode};
+use versioned_binary_serialization::version::StaticVersionType;
 
 pub use hotshot_types::{
     data::Leaf,
@@ -1276,10 +1304,11 @@
 }
 
 /// Run an instance of the HotShot Query service with no customization.
-pub async fn run_standalone_service<Types: NodeType, I: NodeImplementation<Types>, D>(
+pub async fn run_standalone_service<Types: NodeType, I: NodeImplementation<Types>, D, Ver>(
     options: Options,
     data_source: D,
     hotshot: SystemContextHandle<Types, I>,
+    bind_version: Ver,
 ) -> Result<(), Error>
 where
     Payload<Types>: availability::QueryablePayload,
@@ -1292,16 +1321,17 @@
         + Send
         + Sync
         + 'static,
+    Ver: StaticVersionType + 'static,
 {
     // Create API modules.
     let availability_api =
-        availability::define_api(&options.availability).map_err(Error::internal)?;
-    let node_api = node::define_api(&options.node).map_err(Error::internal)?;
-    let status_api = status::define_api(&options.status).map_err(Error::internal)?;
+        availability::define_api(&options.availability, bind_version).map_err(Error::internal)?;
+    let node_api = node::define_api(&options.node, bind_version).map_err(Error::internal)?;
+    let status_api = status::define_api(&options.status, bind_version).map_err(Error::internal)?;
 
     // Create app. We wrap `data_source` into an `RwLock` so we can share it with the web server.
     let data_source = Arc::new(RwLock::new(data_source));
-    let mut app = App::<_, Error>::with_state(data_source.clone());
+    let mut app = App::<_, Error, Ver>::with_state(data_source.clone());
     app.register_module("availability", availability_api)
         .map_err(Error::internal)?
         .register_module("node", node_api)
@@ -1311,7 +1341,8 @@
 
     // Serve app.
     let url = format!("0.0.0.0:{}", options.port);
-    let _server = BackgroundTask::spawn("server", async move { app.serve(&url).await });
+    let _server =
+        BackgroundTask::spawn("server", async move { app.serve(&url, bind_version).await });
 
     // Subscribe to events before starting consensus, so we don't miss any events.
     let mut events = hotshot.get_event_stream();
@@ -1353,6 +1384,7 @@
 
     use futures::FutureExt;
     use hotshot_example_types::state_types::TestInstanceState;
+    use hotshot_types::constants::{Version01, STATIC_VER_0_1};
     use portpicker::pick_unused_port;
     use std::ops::RangeBounds;
     use std::time::Duration;
@@ -1523,15 +1555,21 @@
             METHOD = "GET"
         };
 
-        let mut app = App::<_, Error>::with_state(RwLock::new(state));
+        let mut app = App::<_, Error, Version01>::with_state(RwLock::new(state));
         app.register_module(
             "availability",
-            availability::define_api(&Default::default()).unwrap(),
+            availability::define_api(&Default::default(), STATIC_VER_0_1).unwrap(),
         )
         .unwrap()
-        .register_module("node", node::define_api(&Default::default()).unwrap())
+        .register_module(
+            "node",
+            node::define_api(&Default::default(), STATIC_VER_0_1).unwrap(),
+        )
         .unwrap()
-        .register_module("status", status::define_api(&Default::default()).unwrap())
+        .register_module(
+            "status",
+            status::define_api(&Default::default(), STATIC_VER_0_1).unwrap(),
+        )
         .unwrap()
         .module::<Error>("mod", module_spec)
         .unwrap()
@@ -1561,9 +1599,13 @@
         .unwrap();
 
         let port = pick_unused_port().unwrap();
-        let _server = BackgroundTask::spawn("server", app.serve(format!("0.0.0.0:{}", port)));
+        let _server = BackgroundTask::spawn(
+            "server",
+            app.serve(format!("0.0.0.0:{}", port), STATIC_VER_0_1),
+        );
 
-        let client = Client::<Error>::new(format!("http://localhost:{}", port).parse().unwrap());
+        let client =
+            Client::<Error, Version01>::new(format!("http://localhost:{}", port).parse().unwrap());
         assert!(client.connect(Some(Duration::from_secs(60))).await);
 
         client.post::<()>("mod/ext/42").send().await.unwrap();
diff --git a/src/hotshot_query_service/merklized_state.rs.html b/src/hotshot_query_service/merklized_state.rs.html
index 329b0b2c6..ec4791529 100644
--- a/src/hotshot_query_service/merklized_state.rs.html
+++ b/src/hotshot_query_service/merklized_state.rs.html
@@ -116,6 +116,12 @@
 115
 116
 117
+118
+119
+120
+121
+122
+123
 
// Copyright (c) 2022 Espresso Systems (espressosys.com)
 // This file is part of the HotShot Query Service library.
 //
@@ -144,6 +150,7 @@
 use std::fmt::Debug;
 use tagged_base64::TaggedBase64;
 use tide_disco::{api::ApiError, method::ReadState, Api, RequestError, StatusCode};
+use versioned_binary_serialization::version::StaticVersionType;
 
 use crate::{api::load_api, QueryError};
 
@@ -195,16 +202,21 @@
     }
 }
 
-pub fn define_api<State, Types: NodeType, M: MerklizedState<Types>>(
+pub fn define_api<
+    State,
+    Types: NodeType,
+    M: MerklizedState<Types>,
+    Ver: StaticVersionType + 'static,
+>(
     options: &Options,
-) -> Result<Api<State, Error>, ApiError>
+) -> Result<Api<State, Error, Ver>, ApiError>
 where
     State: 'static + Send + Sync + ReadState,
     <State as ReadState>::State: Send + Sync + MerklizedStateDataSource<Types, M>,
     Types: NodeType,
     for<'a> <M::Commit as TryFrom<&'a TaggedBase64>>::Error: Display,
 {
-    let mut api = load_api::<State, Error>(
+    let mut api = load_api::<State, Error, Ver>(
         options.api_path.as_ref(),
         include_str!("../api/state.toml"),
         options.extensions.clone(),
diff --git a/src/hotshot_query_service/node.rs.html b/src/hotshot_query_service/node.rs.html
index bb503b7e1..bf242f13f 100644
--- a/src/hotshot_query_service/node.rs.html
+++ b/src/hotshot_query_service/node.rs.html
@@ -405,6 +405,25 @@
 404
 405
 406
+407
+408
+409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
 
// Copyright (c) 2022 Espresso Systems (espressosys.com)
 // This file is part of the HotShot Query Service library.
 //
@@ -437,6 +456,7 @@
 use std::fmt::Display;
 use std::path::PathBuf;
 use tide_disco::{api::ApiError, method::ReadState, Api, RequestError, StatusCode};
+use versioned_binary_serialization::version::StaticVersionType;
 
 pub(crate) mod data_source;
 pub(crate) mod query_data;
@@ -510,12 +530,15 @@
     }
 }
 
-pub fn define_api<State, Types: NodeType>(options: &Options) -> Result<Api<State, Error>, ApiError>
+pub fn define_api<State, Types: NodeType, Ver: StaticVersionType + 'static>(
+    options: &Options,
+    _: Ver,
+) -> Result<Api<State, Error, Ver>, ApiError>
 where
     State: 'static + Send + Sync + ReadState,
     <State as ReadState>::State: Send + Sync + NodeDataSource<Types>,
 {
-    let mut api = load_api::<State, Error>(
+    let mut api = load_api::<State, Error, Ver>(
         options.api_path.as_ref(),
         include_str!("../api/node.toml"),
         options.extensions.clone(),
@@ -587,6 +610,7 @@
     use async_std::{sync::RwLock, task::sleep};
     use commit::Committable;
     use futures::{FutureExt, StreamExt};
+    use hotshot_types::constants::{Version01, STATIC_VER_0_1};
     use hotshot_types::event::EventType;
     use hotshot_types::event::LeafInfo;
     use portpicker::pick_unused_port;
@@ -607,14 +631,21 @@
 
         // Start the web server.
         let port = pick_unused_port().unwrap();
-        let mut app = App::<_, Error>::with_state(network.data_source());
-        app.register_module("node", define_api(&Default::default()).unwrap())
-            .unwrap();
-        network.spawn("server", app.serve(format!("0.0.0.0:{}", port)));
+        let mut app = App::<_, Error, Version01>::with_state(network.data_source());
+        app.register_module(
+            "node",
+            define_api(&Default::default(), STATIC_VER_0_1).unwrap(),
+        )
+        .unwrap();
+        network.spawn(
+            "server",
+            app.serve(format!("0.0.0.0:{}", port), STATIC_VER_0_1),
+        );
 
         // Start a client.
-        let client =
-            Client::<Error>::new(format!("http://localhost:{}/node", port).parse().unwrap());
+        let client = Client::<Error, Version01>::new(
+            format!("http://localhost:{}/node", port).parse().unwrap(),
+        );
         assert!(client.connect(Some(Duration::from_secs(60))).await);
 
         // Wait until a few blocks have been sequenced.
@@ -774,10 +805,13 @@
         };
 
         let mut api =
-            define_api::<RwLock<ExtensibleDataSource<MockDataSource, u64>>, MockTypes>(&Options {
-                extensions: vec![extensions.into()],
-                ..Default::default()
-            })
+            define_api::<RwLock<ExtensibleDataSource<MockDataSource, u64>>, MockTypes, Version01>(
+                &Options {
+                    extensions: vec![extensions.into()],
+                    ..Default::default()
+                },
+                STATIC_VER_0_1,
+            )
             .unwrap();
         api.get("get_ext", |_, state| {
             async move { Ok(*state.as_ref()) }.boxed()
@@ -792,14 +826,18 @@
         })
         .unwrap();
 
-        let mut app = App::<_, Error>::with_state(RwLock::new(data_source));
+        let mut app = App::<_, Error, Version01>::with_state(RwLock::new(data_source));
         app.register_module("node", api).unwrap();
 
         let port = pick_unused_port().unwrap();
-        let _server = BackgroundTask::spawn("server", app.serve(format!("0.0.0.0:{}", port)));
+        let _server = BackgroundTask::spawn(
+            "server",
+            app.serve(format!("0.0.0.0:{}", port), STATIC_VER_0_1),
+        );
 
-        let client =
-            Client::<Error>::new(format!("http://localhost:{}/node", port).parse().unwrap());
+        let client = Client::<Error, Version01>::new(
+            format!("http://localhost:{}/node", port).parse().unwrap(),
+        );
         assert!(client.connect(Some(Duration::from_secs(60))).await);
 
         assert_eq!(client.get::<u64>("ext").send().await.unwrap(), 0);
diff --git a/src/hotshot_query_service/status.rs.html b/src/hotshot_query_service/status.rs.html
index 25bac2303..de30ada36 100644
--- a/src/hotshot_query_service/status.rs.html
+++ b/src/hotshot_query_service/status.rs.html
@@ -297,6 +297,24 @@
 296
 297
 298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+309
+310
+311
+312
+313
+314
+315
+316
 
// Copyright (c) 2022 Espresso Systems (espressosys.com)
 // This file is part of the HotShot Query Service library.
 //
@@ -333,6 +351,7 @@
 use std::fmt::Display;
 use std::path::PathBuf;
 use tide_disco::{api::ApiError, method::ReadState, Api, RequestError, StatusCode};
+use versioned_binary_serialization::version::StaticVersionType;
 
 pub(crate) mod data_source;
 pub(crate) mod query_data;
@@ -377,12 +396,15 @@
     }
 }
 
-pub fn define_api<State>(options: &Options) -> Result<Api<State, Error>, ApiError>
+pub fn define_api<State, Ver: StaticVersionType + 'static>(
+    options: &Options,
+    _: Ver,
+) -> Result<Api<State, Error, Ver>, ApiError>
 where
     State: 'static + Send + Sync + ReadState,
     <State as ReadState>::State: Send + Sync + StatusDataSource,
 {
-    let mut api = load_api::<State, Error>(
+    let mut api = load_api::<State, Error, Ver>(
         options.api_path.as_ref(),
         include_str!("../api/status.toml"),
         options.extensions.clone(),
@@ -428,7 +450,8 @@
     use async_std::sync::RwLock;
     use bincode::Options as _;
     use futures::FutureExt;
-    use hotshot_utils::bincode::bincode_opts;
+    use hotshot_types::constants::{Version01, STATIC_VER_0_1};
+    use hotshot_types::utils::bincode_opts;
     use portpicker::pick_unused_port;
     use std::str::FromStr;
     use std::time::Duration;
@@ -446,14 +469,20 @@
 
         // Start the web server.
         let port = pick_unused_port().unwrap();
-        let mut app = App::<_, Error>::with_state(network.data_source());
-        app.register_module("status", define_api(&Default::default()).unwrap())
-            .unwrap();
-        network.spawn("server", app.serve(format!("0.0.0.0:{}", port)));
+        let mut app = App::<_, Error, Version01>::with_state(network.data_source());
+        app.register_module(
+            "status",
+            define_api(&Default::default(), STATIC_VER_0_1).unwrap(),
+        )
+        .unwrap();
+        network.spawn(
+            "server",
+            app.serve(format!("0.0.0.0:{}", port), STATIC_VER_0_1),
+        );
 
         // Start a client.
         let url = Url::from_str(&format!("http://localhost:{}/status", port)).unwrap();
-        let client = Client::<Error>::new(url.clone());
+        let client = Client::<Error, Version01>::new(url.clone());
         assert!(client.connect(Some(Duration::from_secs(60))).await);
 
         // Submit a transaction. We have not yet started the validators, so this transaction will
@@ -559,10 +588,13 @@
             METHOD = "GET"
         };
 
-        let mut api = define_api::<RwLock<ExtensibleDataSource<MockDataSource, u64>>>(&Options {
-            extensions: vec![extensions.into()],
-            ..Default::default()
-        })
+        let mut api = define_api::<RwLock<ExtensibleDataSource<MockDataSource, u64>>, Version01>(
+            &Options {
+                extensions: vec![extensions.into()],
+                ..Default::default()
+            },
+            STATIC_VER_0_1,
+        )
         .unwrap();
         api.get("get_ext", |_, state| {
             async move { Ok(*state.as_ref()) }.boxed()
@@ -577,14 +609,18 @@
         })
         .unwrap();
 
-        let mut app = App::<_, Error>::with_state(RwLock::new(data_source));
+        let mut app = App::<_, Error, Version01>::with_state(RwLock::new(data_source));
         app.register_module("status", api).unwrap();
 
         let port = pick_unused_port().unwrap();
-        let _server = BackgroundTask::spawn("server", app.serve(format!("0.0.0.0:{}", port)));
+        let _server = BackgroundTask::spawn(
+            "server",
+            app.serve(format!("0.0.0.0:{}", port), STATIC_VER_0_1),
+        );
 
-        let client =
-            Client::<Error>::new(format!("http://localhost:{}/status", port).parse().unwrap());
+        let client = Client::<Error, Version01>::new(
+            format!("http://localhost:{}/status", port).parse().unwrap(),
+        );
         assert!(client.connect(Some(Duration::from_secs(60))).await);
 
         assert_eq!(client.get::<u64>("ext").send().await.unwrap(), 0);
diff --git a/src/hotshot_query_service/testing/consensus.rs.html b/src/hotshot_query_service/testing/consensus.rs.html
index a2de2d9ae..75a440aca 100644
--- a/src/hotshot_query_service/testing/consensus.rs.html
+++ b/src/hotshot_query_service/testing/consensus.rs.html
@@ -300,6 +300,9 @@
 299
 300
 301
+302
+303
+304
 
// Copyright (c) 2022 Espresso Systems (espressosys.com)
 // This file is part of the HotShot Query Service library.
 //
@@ -329,11 +332,11 @@
     stream::StreamExt,
 };
 use hotshot::{
-    traits::implementations::{MasterMap, MemoryNetwork, MemoryStorage, NetworkingMetricsValue},
+    traits::implementations::{MasterMap, MemoryNetwork, NetworkingMetricsValue},
     types::{Event, SystemContextHandle},
     HotShotInitializer, Memberships, Networks, SystemContext,
 };
-use hotshot_example_types::state_types::TestInstanceState;
+use hotshot_example_types::{state_types::TestInstanceState, storage_types::TestStorage};
 use hotshot_types::{
     consensus::ConsensusMetricsValue,
     light_client::StateKeyPair,
@@ -412,6 +415,7 @@
                         da_staked_committee_size: pub_keys.len(),
                         da_non_staked_committee_size: 0,
                         data_request_delay: Duration::from_millis(200),
+                        view_sync_timeout: Duration::from_millis(250),
                     };
 
                     let pub_keys = pub_keys.clone();
@@ -450,16 +454,18 @@
                             view_sync_membership: membership.clone(),
                         };
 
+                        let hs_storage: TestStorage<MockTypes> = TestStorage::default();
+
                         let hotshot = SystemContext::init(
                             pub_keys[node_id],
                             priv_key,
                             node_id as u64,
                             config,
-                            MemoryStorage::empty(),
                             memberships,
                             networks,
                             HotShotInitializer::from_genesis(TestInstanceState {}).unwrap(),
                             ConsensusMetricsValue::new(&*data_source.populate_metrics()),
+                            hs_storage,
                         )
                         .await
                         .unwrap()
diff --git a/src/hotshot_query_service/testing/mocks.rs.html b/src/hotshot_query_service/testing/mocks.rs.html
index d94a15172..28cfb2b28 100644
--- a/src/hotshot_query_service/testing/mocks.rs.html
+++ b/src/hotshot_query_service/testing/mocks.rs.html
@@ -150,6 +150,8 @@
 149
 150
 151
+152
+153
 
// Copyright (c) 2022 Espresso Systems (espressosys.com)
 // This file is part of the HotShot Query Service library.
 //
@@ -170,13 +172,13 @@
 use async_trait::async_trait;
 use hotshot::traits::{
     election::static_committee::{GeneralStaticCommittee, StaticElectionConfig},
-    implementations::{MemoryNetwork, MemoryStorage},
+    implementations::MemoryNetwork,
     NodeImplementation, ValidatedState,
 };
-use hotshot_example_types::state_types::TestValidatedState;
 use hotshot_example_types::{
     block_types::{TestBlockHeader, TestBlockPayload, TestTransaction},
-    state_types::TestInstanceState,
+    state_types::{TestInstanceState, TestValidatedState},
+    storage_types::TestStorage,
 };
 use hotshot_types::data::Leaf;
 use hotshot_types::{
@@ -268,15 +270,17 @@
 pub type MockQuorumProposal = QuorumProposal<MockTypes>;
 pub type MockNetwork = MemoryNetwork<Message<MockTypes>, BLSPubKey>;
 
+pub type MockStorage = TestStorage<MockTypes>;
+
 #[derive(
     Copy, Clone, Debug, Default, Hash, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize,
 )]
 pub struct MockNodeImpl;
 
 impl NodeImplementation<MockTypes> for MockNodeImpl {
-    type Storage = MemoryStorage<MockTypes>;
     type QuorumNetwork = MockNetwork;
     type CommitteeNetwork = MockNetwork;
+    type Storage = MockStorage;
 }
 
 pub type MockMerkleTree = UniversalMerkleTree<usize, Sha3Digest, usize, typenum::U8, Sha3Node>;
diff --git a/trait.impl/clap_builder/derive/trait.Args.js b/trait.impl/clap_builder/derive/trait.Args.js
index 4449067dd..cd6a14456 100644
--- a/trait.impl/clap_builder/derive/trait.Args.js
+++ b/trait.impl/clap_builder/derive/trait.Args.js
@@ -1,3 +1,3 @@
 (function() {var implementors = {
-"hotshot_query_service":[["impl Args for Options"],["impl Args for Options"],["impl Args for Options"],["impl Args for Options"],["impl Args for Options"]]
+"hotshot_query_service":[["impl Args for Options"],["impl Args for Options"],["impl Args for Options"],["impl Args for Options"],["impl Args for Options"]]
 };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/clap_builder/derive/trait.FromArgMatches.js b/trait.impl/clap_builder/derive/trait.FromArgMatches.js
index 86f640039..af692af78 100644
--- a/trait.impl/clap_builder/derive/trait.FromArgMatches.js
+++ b/trait.impl/clap_builder/derive/trait.FromArgMatches.js
@@ -1,3 +1,3 @@
 (function() {var implementors = {
-"hotshot_query_service":[["impl FromArgMatches for Options"],["impl FromArgMatches for Options"],["impl FromArgMatches for Options"],["impl FromArgMatches for Options"],["impl FromArgMatches for Options"]]
+"hotshot_query_service":[["impl FromArgMatches for Options"],["impl FromArgMatches for Options"],["impl FromArgMatches for Options"],["impl FromArgMatches for Options"],["impl FromArgMatches for Options"]]
 };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/core/clone/trait.Clone.js b/trait.impl/core/clone/trait.Clone.js
index 3617d97cf..b4e2c56d9 100644
--- a/trait.impl/core/clone/trait.Clone.js
+++ b/trait.impl/core/clone/trait.Clone.js
@@ -1,3 +1,3 @@
 (function() {var implementors = {
-"hotshot_query_service":[["impl<P> Clone for TestProvider<P>"],["impl Clone for Counter"],["impl<Types: Clone + NodeType> Clone for LeafQueryData<Types>"],["impl<__T0: Clone, __T1: Clone> Clone for CustomSnafu<__T0, __T1>"],["impl<D: Clone, U: Clone> Clone for ExtensibleDataSource<D, U>"],["impl Clone for PrunerCfg"],["impl Clone for QueryServiceProvider"],["impl<__T0: Clone, __T1: Clone> Clone for QueryWindowSnafu<__T0, __T1>"],["impl Clone for QuerySnafu"],["impl<__T0: Clone> Clone for FetchBlockSnafu<__T0>"],["impl Clone for Error"],["impl Clone for MissingSnafu"],["impl Clone for PayloadRequest"],["impl<Types, S, P> Clone for FetchingDataSource<Types, S, P>
where\n Types: NodeType,
"],["impl Clone for MockTypes"],["impl<__T0: Clone, __T1: Clone> Clone for InvalidTransactionIndexSnafu<__T0, __T1>"],["impl Clone for NoStorage"],["impl<__T0: Clone> Clone for FetchTransactionSnafu<__T0>"],["impl<T, C> Clone for Fetcher<T, C>"],["impl Clone for MempoolQueryData"],["impl<__T0: Clone> Clone for FetchLeafSnafu<__T0>"],["impl Clone for Error"],["impl Clone for NoFetching"],["impl Clone for Label"],["impl Clone for NotFoundSnafu"],["impl Clone for SyncStatus"],["impl Clone for MockNodeImpl"],["impl Clone for Error"],["impl Clone for Histogram"],["impl Clone for VidCommonRequest"],["impl Clone for LTree"],["impl Clone for QueryError"],["impl Clone for RequestSnafu"],["impl Clone for Gauge"],["impl<Types: NodeType> Clone for LeafId<Types>"],["impl<Types: NodeType> Clone for BlockId<Types>"],["impl Clone for Error"],["impl<Types: Clone + NodeType> Clone for TransactionSummaryQueryData<Types>"],["impl Clone for LeafRequest"],["impl<Types: Clone + NodeType> Clone for BlockQueryData<Types>"],["impl<T: Clone> Clone for TimeWindowQueryData<T>"],["impl Clone for PrometheusMetrics"],["impl<Types: Clone + NodeType> Clone for VidCommonQueryData<Types>"],["impl Clone for Config"],["impl<Types, S, P> Clone for Pruner<Types, S, P>
where\n Types: NodeType,
"],["impl<Types: Clone + NodeType> Clone for TransactionQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"],["impl<Types: NodeType> Clone for WindowStart<Types>"],["impl<Types: Clone + NodeType> Clone for InconsistentLeafError<Types>"],["impl<Types: Clone + NodeType> Clone for BlockSummaryQueryData<Types>"],["impl<__T0: Clone> Clone for QueryVidSnafu<__T0>"],["impl<Types: Clone + NodeType> Clone for PayloadQueryData<Types>"],["impl<Types> Clone for AnyProvider<Types>
where\n Types: NodeType,
"],["impl Clone for RequestSnafu"],["impl Clone for Error"],["impl Clone for MetricsDataSource"],["impl<__T0: Clone> Clone for Snafu<__T0>"],["impl<__T0: Clone, __T1: Clone> Clone for CustomSnafu<__T0, __T1>"]] +"hotshot_query_service":[["impl Clone for PrometheusMetrics"],["impl<Types: Clone + NodeType> Clone for BlockQueryData<Types>"],["impl Clone for MockNodeImpl"],["impl Clone for QueryError"],["impl<__T0: Clone> Clone for FetchLeafSnafu<__T0>"],["impl Clone for Gauge"],["impl<Types, S, P> Clone for Pruner<Types, S, P>
where\n Types: NodeType,
"],["impl<Types: Clone + NodeType> Clone for LeafQueryData<Types>"],["impl<Types: NodeType> Clone for LeafId<Types>"],["impl<P> Clone for TestProvider<P>"],["impl<__T0: Clone> Clone for Snafu<__T0>"],["impl Clone for MissingSnafu"],["impl Clone for NoStorage"],["impl Clone for Label"],["impl<D: Clone, U: Clone> Clone for ExtensibleDataSource<D, U>"],["impl Clone for Error"],["impl<Types: Clone + NodeType> Clone for PayloadQueryData<Types>"],["impl<__T0: Clone, __T1: Clone> Clone for InvalidTransactionIndexSnafu<__T0, __T1>"],["impl<Ver: Clone + StaticVersionType> Clone for QueryServiceProvider<Ver>"],["impl Clone for QuerySnafu"],["impl Clone for LTree"],["impl Clone for Error"],["impl Clone for Error"],["impl Clone for PrunerCfg"],["impl Clone for Error"],["impl Clone for RequestSnafu"],["impl Clone for NoFetching"],["impl Clone for Config"],["impl Clone for MockTypes"],["impl Clone for SyncStatus"],["impl<Types: Clone + NodeType> Clone for BlockSummaryQueryData<Types>"],["impl<__T0: Clone, __T1: Clone> Clone for CustomSnafu<__T0, __T1>"],["impl<Types: Clone + NodeType> Clone for InconsistentLeafError<Types>"],["impl Clone for RequestSnafu"],["impl<Types: Clone + NodeType> Clone for VidCommonQueryData<Types>"],["impl Clone for MempoolQueryData"],["impl<__T0: Clone> Clone for QueryVidSnafu<__T0>"],["impl<Types: Clone + NodeType> Clone for TransactionSummaryQueryData<Types>"],["impl<T: Clone> Clone for TimeWindowQueryData<T>"],["impl Clone for Error"],["impl<Types: NodeType> Clone for BlockId<Types>"],["impl Clone for Counter"],["impl<Types: Clone + NodeType> Clone for TransactionQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"],["impl<__T0: Clone, __T1: Clone> Clone for CustomSnafu<__T0, __T1>"],["impl Clone for VidCommonRequest"],["impl Clone for MetricsDataSource"],["impl<T, C> Clone for Fetcher<T, C>"],["impl Clone for NotFoundSnafu"],["impl Clone for LeafRequest"],["impl<__T0: Clone, __T1: Clone> Clone for QueryWindowSnafu<__T0, __T1>"],["impl Clone for PayloadRequest"],["impl<Types, S, P> Clone for FetchingDataSource<Types, S, P>
where\n Types: NodeType,
"],["impl<__T0: Clone> Clone for FetchBlockSnafu<__T0>"],["impl<__T0: Clone> Clone for FetchTransactionSnafu<__T0>"],["impl Clone for Histogram"],["impl<Types> Clone for AnyProvider<Types>
where\n Types: NodeType,
"],["impl<Types: NodeType> Clone for WindowStart<Types>"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/cmp/trait.Eq.js b/trait.impl/core/cmp/trait.Eq.js index 9a395788f..3745da95d 100644 --- a/trait.impl/core/cmp/trait.Eq.js +++ b/trait.impl/core/cmp/trait.Eq.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl Eq for MempoolQueryData"],["impl Eq for SyncStatus"],["impl<Types: Eq + NodeType> Eq for VidCommonQueryData<Types>"],["impl<Types: Eq + NodeType> Eq for BlockSummaryQueryData<Types>"],["impl<Types: NodeType> Eq for BlockId<Types>"],["impl Eq for VidCommonRequest"],["impl Eq for MockNodeImpl"],["impl<Types: Eq + NodeType> Eq for BlockQueryData<Types>"],["impl Eq for PayloadRequest"],["impl<Types: NodeType> Eq for LeafId<Types>"],["impl<Types: Eq + NodeType> Eq for LeafQueryData<Types>"],["impl<Types: Eq + NodeType> Eq for PayloadQueryData<Types>"],["impl Eq for MockTypes"],["impl Eq for LeafRequest"],["impl<T: Eq> Eq for TimeWindowQueryData<T>"],["impl<Types: NodeType, T: MerklizedState<Types>> Eq for Snapshot<Types, T>"],["impl<Types: Eq + NodeType> Eq for TransactionSummaryQueryData<Types>"],["impl<Types: Eq + NodeType> Eq for TransactionQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"]] +"hotshot_query_service":[["impl<Types: Eq + NodeType> Eq for TransactionSummaryQueryData<Types>"],["impl<Types: NodeType, T: MerklizedState<Types>> Eq for Snapshot<Types, T>"],["impl<Types: Eq + NodeType> Eq for TransactionQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"],["impl Eq for MockNodeImpl"],["impl<T: Eq> Eq for TimeWindowQueryData<T>"],["impl<Types: NodeType> Eq for LeafId<Types>"],["impl<Types: Eq + NodeType> Eq for PayloadQueryData<Types>"],["impl Eq for PayloadRequest"],["impl Eq for VidCommonRequest"],["impl<Types: Eq + NodeType> Eq for BlockQueryData<Types>"],["impl<Types: Eq + NodeType> Eq for BlockSummaryQueryData<Types>"],["impl<Types: Eq + NodeType> Eq for LeafQueryData<Types>"],["impl Eq for LeafRequest"],["impl Eq for MockTypes"],["impl<Types: NodeType> Eq for BlockId<Types>"],["impl<Types: Eq + NodeType> Eq for VidCommonQueryData<Types>"],["impl Eq for MempoolQueryData"],["impl Eq for SyncStatus"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/cmp/trait.Ord.js b/trait.impl/core/cmp/trait.Ord.js index 3a92983e3..f9930e23f 100644 --- a/trait.impl/core/cmp/trait.Ord.js +++ b/trait.impl/core/cmp/trait.Ord.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl Ord for MockNodeImpl"],["impl<Types: NodeType, T: MerklizedState<Types>> Ord for Snapshot<Types, T>"],["impl<Types: NodeType> Ord for LeafId<Types>"],["impl<Types: NodeType> Ord for BlockId<Types>"],["impl Ord for MockTypes"],["impl Ord for SyncStatus"],["impl Ord for MempoolQueryData"]] +"hotshot_query_service":[["impl Ord for MockNodeImpl"],["impl<Types: NodeType> Ord for BlockId<Types>"],["impl Ord for SyncStatus"],["impl<Types: NodeType, T: MerklizedState<Types>> Ord for Snapshot<Types, T>"],["impl<Types: NodeType> Ord for LeafId<Types>"],["impl Ord for MockTypes"],["impl Ord for MempoolQueryData"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/cmp/trait.PartialEq.js b/trait.impl/core/cmp/trait.PartialEq.js index 70e650ca1..d1481832d 100644 --- a/trait.impl/core/cmp/trait.PartialEq.js +++ b/trait.impl/core/cmp/trait.PartialEq.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl<Types: NodeType, T: MerklizedState<Types>> PartialEq for Snapshot<Types, T>"],["impl<Types: PartialEq + NodeType> PartialEq for PayloadQueryData<Types>"],["impl PartialEq for LeafRequest"],["impl<Types: PartialEq + NodeType> PartialEq for BlockSummaryQueryData<Types>"],["impl PartialEq for MempoolQueryData"],["impl<Types: PartialEq + NodeType> PartialEq for VidCommonQueryData<Types>"],["impl<Types: NodeType> PartialEq for LeafId<Types>"],["impl PartialEq for MockNodeImpl"],["impl<Types: PartialEq + NodeType> PartialEq for LeafQueryData<Types>"],["impl PartialEq for MockTypes"],["impl<Types: PartialEq + NodeType> PartialEq for TransactionSummaryQueryData<Types>"],["impl<Types: NodeType> PartialEq for BlockId<Types>"],["impl<Types: PartialEq + NodeType> PartialEq for BlockQueryData<Types>"],["impl PartialEq for SyncStatus"],["impl<Types: PartialEq + NodeType> PartialEq for TransactionQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"],["impl<T: PartialEq> PartialEq for TimeWindowQueryData<T>"],["impl PartialEq for PayloadRequest"],["impl PartialEq for VidCommonRequest"]] +"hotshot_query_service":[["impl PartialEq for LeafRequest"],["impl<Types: NodeType> PartialEq for BlockId<Types>"],["impl PartialEq for MockTypes"],["impl<Types: NodeType, T: MerklizedState<Types>> PartialEq for Snapshot<Types, T>"],["impl<Types: PartialEq + NodeType> PartialEq for TransactionQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"],["impl<Types: PartialEq + NodeType> PartialEq for VidCommonQueryData<Types>"],["impl PartialEq for MempoolQueryData"],["impl<Types: PartialEq + NodeType> PartialEq for PayloadQueryData<Types>"],["impl<Types: NodeType> PartialEq for LeafId<Types>"],["impl PartialEq for VidCommonRequest"],["impl PartialEq for SyncStatus"],["impl<T: PartialEq> PartialEq for TimeWindowQueryData<T>"],["impl<Types: PartialEq + NodeType> PartialEq for TransactionSummaryQueryData<Types>"],["impl PartialEq for PayloadRequest"],["impl<Types: PartialEq + NodeType> PartialEq for LeafQueryData<Types>"],["impl<Types: PartialEq + NodeType> PartialEq for BlockSummaryQueryData<Types>"],["impl<Types: PartialEq + NodeType> PartialEq for BlockQueryData<Types>"],["impl PartialEq for MockNodeImpl"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/cmp/trait.PartialOrd.js b/trait.impl/core/cmp/trait.PartialOrd.js index dcb7ce1ce..1556e2e13 100644 --- a/trait.impl/core/cmp/trait.PartialOrd.js +++ b/trait.impl/core/cmp/trait.PartialOrd.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl<Types: NodeType> PartialOrd for BlockId<Types>"],["impl<T: MerklizedState<Types>, Types: NodeType> PartialOrd for Snapshot<Types, T>"],["impl<Types: NodeType> PartialOrd for LeafId<Types>"],["impl PartialOrd for MockTypes"],["impl PartialOrd for MockNodeImpl"],["impl PartialOrd for SyncStatus"],["impl PartialOrd for MempoolQueryData"]] +"hotshot_query_service":[["impl PartialOrd for MockNodeImpl"],["impl<Types: NodeType> PartialOrd for BlockId<Types>"],["impl PartialOrd for MempoolQueryData"],["impl<T: MerklizedState<Types>, Types: NodeType> PartialOrd for Snapshot<Types, T>"],["impl PartialOrd for MockTypes"],["impl<Types: NodeType> PartialOrd for LeafId<Types>"],["impl PartialOrd for SyncStatus"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/convert/trait.From.js b/trait.impl/core/convert/trait.From.js index 07b3e678f..322556d99 100644 --- a/trait.impl/core/convert/trait.From.js +++ b/trait.impl/core/convert/trait.From.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl From<(String, StatusCode)> for Error"],["impl From<usize> for LeafRequest"],["impl From<Config> for Config"],["impl<'a, Types, S> From<RwLockWriteGuard<'a, NotifyStorage<Types, S>>> for StorageWriteGuard<'a, Types, S>
where\n Types: NodeType,
"],["impl From<Error> for MetricsError"],["impl From<RequestError> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<QueryError> for Error"],["impl<I, Iter: Iterator<Item = I> + DoubleEndedIterator> From<Iter> for LTree
where\n I: Display + Clone,
"],["impl<Types: NodeType> From<usize> for BlockId<Types>"],["impl From<Error> for Error"],["impl From<RequestError> for Error"],["impl<Types: NodeType> From<BlockQueryData<Types>> for BlockSummaryQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"],["impl From<LeafRequest> for usize"],["impl<Types: NodeType> From<Commitment<Leaf<Types>>> for LeafId<Types>"],["impl From<RequestError> for Error"],["impl<Types: NodeType> From<usize> for LeafId<Types>"],["impl From<Error> for Error"],["impl From<(String, StatusCode)> for Error"],["impl<Types: NodeType> From<BlockQueryData<Types>> for PayloadQueryData<Types>"],["impl<Types: NodeType> From<Commitment<<Types as NodeType>::BlockHeader>> for WindowStart<Types>"],["impl From<RequestError> for Error"],["impl<Types: NodeType> From<Commitment<<Types as NodeType>::BlockHeader>> for BlockId<Types>"],["impl<'a, Types, S> From<RwLockReadGuard<'a, NotifyStorage<Types, S>>> for StorageReadGuard<'a, Types, S>
where\n Types: NodeType,
"],["impl From<(String, StatusCode)> for Error"],["impl From<(String, StatusCode)> for Error"],["impl From<QueryError> for Error"],["impl From<String> for Error"]] +"hotshot_query_service":[["impl<Types: NodeType> From<BlockQueryData<Types>> for BlockSummaryQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"],["impl<Types: NodeType> From<Commitment<<Types as NodeType>::BlockHeader>> for BlockId<Types>"],["impl From<Error> for Error"],["impl From<(String, StatusCode)> for Error"],["impl<'a, Types, S> From<RwLockWriteGuard<'a, NotifyStorage<Types, S>>> for StorageWriteGuard<'a, Types, S>
where\n Types: NodeType,
"],["impl From<RequestError> for Error"],["impl<Types: NodeType> From<Commitment<Leaf<Types>>> for LeafId<Types>"],["impl<Types: NodeType> From<usize> for LeafId<Types>"],["impl From<RequestError> for Error"],["impl From<RequestError> for Error"],["impl From<String> for Error"],["impl From<LeafRequest> for usize"],["impl From<(String, StatusCode)> for Error"],["impl<Types: NodeType> From<usize> for BlockId<Types>"],["impl From<(String, StatusCode)> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<usize> for LeafRequest"],["impl From<(String, StatusCode)> for Error"],["impl<'a, Types, S> From<RwLockReadGuard<'a, NotifyStorage<Types, S>>> for StorageReadGuard<'a, Types, S>
where\n Types: NodeType,
"],["impl From<QueryError> for Error"],["impl From<QueryError> for Error"],["impl From<Error> for Error"],["impl<Types: NodeType> From<Commitment<<Types as NodeType>::BlockHeader>> for WindowStart<Types>"],["impl From<Config> for Config"],["impl From<RequestError> for Error"],["impl<I, Iter: Iterator<Item = I> + DoubleEndedIterator> From<Iter> for LTree
where\n I: Display + Clone,
"],["impl From<Error> for MetricsError"],["impl<Types: NodeType> From<BlockQueryData<Types>> for PayloadQueryData<Types>"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/default/trait.Default.js b/trait.impl/core/default/trait.Default.js index 4db8f52c8..ab6432104 100644 --- a/trait.impl/core/default/trait.Default.js +++ b/trait.impl/core/default/trait.Default.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl Default for Options"],["impl<Types> Default for AnyProvider<Types>
where\n Types: NodeType,
"],["impl Default for MempoolQueryData"],["impl Default for Options"],["impl Default for MetricsDataSource"],["impl Default for NoStorage"],["impl Default for NoFetching"],["impl Default for PrometheusMetrics"],["impl Default for LTree"],["impl Default for Options"],["impl<T, C> Default for Fetcher<T, C>"],["impl Default for Options"],["impl Default for MockTypes"],["impl Default for PrunerCfg"],["impl Default for MockNodeImpl"],["impl Default for Options"],["impl<T> Default for TimeWindowQueryData<T>"],["impl Default for Config"]] +"hotshot_query_service":[["impl Default for NoStorage"],["impl Default for Config"],["impl Default for Options"],["impl Default for MockNodeImpl"],["impl Default for MockTypes"],["impl Default for NoFetching"],["impl Default for Options"],["impl<Types> Default for AnyProvider<Types>
where\n Types: NodeType,
"],["impl Default for MetricsDataSource"],["impl Default for PrunerCfg"],["impl Default for Options"],["impl Default for Options"],["impl<T> Default for TimeWindowQueryData<T>"],["impl Default for MempoolQueryData"],["impl Default for LTree"],["impl Default for Options"],["impl Default for PrometheusMetrics"],["impl<T, C> Default for Fetcher<T, C>"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/error/trait.Error.js b/trait.impl/core/error/trait.Error.js index 912f07e0f..757b0cf2a 100644 --- a/trait.impl/core/error/trait.Error.js +++ b/trait.impl/core/error/trait.Error.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl Error for Error
where\n Self: Debug + Display,
"],["impl Error for QueryError
where\n Self: Debug + Display,
"],["impl Error for MetricsError
where\n Self: Debug + Display,
"],["impl Error for Error
where\n Self: Debug + Display,
"],["impl Error for Error
where\n Self: Debug + Display,
"],["impl Error for Error
where\n Self: Debug + Display,
"],["impl Error for Error
where\n Self: Debug + Display,
"],["impl<Types: NodeType> Error for InconsistentLeafError<Types>
where\n Self: Debug + Display,
"]] +"hotshot_query_service":[["impl Error for Error
where\n Self: Debug + Display,
"],["impl Error for MetricsError
where\n Self: Debug + Display,
"],["impl Error for QueryError
where\n Self: Debug + Display,
"],["impl<Types: NodeType> Error for InconsistentLeafError<Types>
where\n Self: Debug + Display,
"],["impl Error for Error
where\n Self: Debug + Display,
"],["impl Error for Error
where\n Self: Debug + Display,
"],["impl Error for Error
where\n Self: Debug + Display,
"],["impl Error for Error
where\n Self: Debug + Display,
"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/fmt/trait.Debug.js b/trait.impl/core/fmt/trait.Debug.js index b020691a3..6a7e5ebbb 100644 --- a/trait.impl/core/fmt/trait.Debug.js +++ b/trait.impl/core/fmt/trait.Debug.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl<__T0: Debug> Debug for Snafu<__T0>"],["impl<Types: Debug + NodeType> Debug for TransactionSummaryQueryData<Types>"],["impl Debug for MetricsError"],["impl Debug for MockNodeImpl"],["impl<Types: Debug + NodeType> Debug for VidCommonQueryData<Types>"],["impl Debug for PrunerCfg"],["impl Debug for QuerySnafu"],["impl Debug for Error"],["impl Debug for Counter"],["impl<P> Debug for TestProvider<P>
where\n P: Debug,
"],["impl<__T0: Debug, __T1: Debug> Debug for InvalidTransactionIndexSnafu<__T0, __T1>"],["impl<Types, S, P> Debug for Pruner<Types, S, P>
where\n Types: NodeType,\n S: Debug,\n P: Debug,
"],["impl Debug for VidCommonRequest"],["impl<__T0: Debug, __T1: Debug> Debug for CustomSnafu<__T0, __T1>"],["impl<Types: NodeType, T: MerklizedState<Types>> Debug for Snapshot<Types, T>"],["impl Debug for Histogram"],["impl Debug for RequestSnafu"],["impl Debug for Error"],["impl Debug for RequestSnafu"],["impl<Types: NodeType> Debug for WindowStart<Types>"],["impl<Types: Debug + NodeType> Debug for LeafQueryData<Types>"],["impl Debug for TmpDb"],["impl<T, C> Debug for Fetcher<T, C>"],["impl Debug for QueryServiceProvider"],["impl<Types: Debug + NodeType> Debug for TransactionQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"],["impl<__T0: Debug> Debug for FetchLeafSnafu<__T0>"],["impl<Types: Debug + NodeType> Debug for PayloadQueryData<Types>"],["impl<Types: NodeType> Debug for LeafId<Types>"],["impl<Types: Debug + NodeType> Debug for BlockSummaryQueryData<Types>"],["impl<D: Debug, U: Debug> Debug for ExtensibleDataSource<D, U>"],["impl<T: Debug> Debug for TimeWindowQueryData<T>"],["impl<Types: NodeType> Debug for BlockId<Types>"],["impl Debug for LeafRequest"],["impl<__T0: Debug, __T1: Debug> Debug for QueryWindowSnafu<__T0, __T1>"],["impl Debug for MissingSnafu"],["impl<Types> Debug for AnyProvider<Types>
where\n Types: NodeType,
"],["impl<__T0: Debug> Debug for QueryVidSnafu<__T0>"],["impl<__T0: Debug> Debug for FetchTransactionSnafu<__T0>"],["impl Debug for SqlStorage"],["impl<Types, S, P> Debug for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n S: Debug,\n P: Debug,
"],["impl<Types: NodeType> Debug for FileSystemStorage<Types>
where\n Payload<Types>: QueryablePayload,\n HashMap<LeafHash<Types>, u64>: Debug,\n HashMap<BlockHash<Types>, u64>: Debug,\n HashMap<TransactionHash<Types>, (u64, TransactionIndex<Types>)>: Debug,\n LedgerLog<LeafQueryData<Types>>: Debug,\n LedgerLog<BlockQueryData<Types>>: Debug,\n LedgerLog<(VidCommonQueryData<Types>, Option<VidShare>)>: Debug,
"],["impl Debug for PayloadRequest"],["impl Debug for Error"],["impl Debug for Error"],["impl Debug for NotFoundSnafu"],["impl Debug for MetricsDataSource"],["impl Debug for Gauge"],["impl Debug for PrometheusMetrics"],["impl Debug for Label"],["impl Debug for SyncStatus"],["impl<__T0: Debug, __T1: Debug> Debug for CustomSnafu<__T0, __T1>"],["impl Debug for LTree"],["impl Debug for QueryError"],["impl Debug for NoStorage"],["impl Debug for MockTypes"],["impl<__T0: Debug> Debug for FetchBlockSnafu<__T0>"],["impl Debug for MempoolQueryData"],["impl Debug for Config"],["impl<Types: Debug + NodeType> Debug for InconsistentLeafError<Types>"],["impl Debug for NoFetching"],["impl Debug for Error"],["impl<Types: Debug + NodeType> Debug for BlockQueryData<Types>"]] +"hotshot_query_service":[["impl<Types> Debug for AnyProvider<Types>
where\n Types: NodeType,
"],["impl<Types: Debug + NodeType> Debug for TransactionQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"],["impl<Types: Debug + NodeType> Debug for TransactionSummaryQueryData<Types>"],["impl<__T0: Debug, __T1: Debug> Debug for QueryWindowSnafu<__T0, __T1>"],["impl Debug for NoStorage"],["impl<Types: NodeType> Debug for LeafId<Types>"],["impl Debug for RequestSnafu"],["impl Debug for SqlStorage"],["impl<Types: Debug + NodeType> Debug for BlockSummaryQueryData<Types>"],["impl Debug for MempoolQueryData"],["impl Debug for RequestSnafu"],["impl<__T0: Debug, __T1: Debug> Debug for CustomSnafu<__T0, __T1>"],["impl Debug for Label"],["impl<T: Debug> Debug for TimeWindowQueryData<T>"],["impl<Types: Debug + NodeType> Debug for InconsistentLeafError<Types>"],["impl<__T0: Debug> Debug for FetchBlockSnafu<__T0>"],["impl<Types, S, P> Debug for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n S: Debug,\n P: Debug,
"],["impl Debug for Gauge"],["impl Debug for MissingSnafu"],["impl Debug for NotFoundSnafu"],["impl<__T0: Debug> Debug for Snafu<__T0>"],["impl Debug for NoFetching"],["impl Debug for LeafRequest"],["impl Debug for SyncStatus"],["impl<T, C> Debug for Fetcher<T, C>"],["impl<Types: NodeType> Debug for FileSystemStorage<Types>
where\n Payload<Types>: QueryablePayload,\n HashMap<LeafHash<Types>, u64>: Debug,\n HashMap<BlockHash<Types>, u64>: Debug,\n HashMap<TransactionHash<Types>, (u64, TransactionIndex<Types>)>: Debug,\n LedgerLog<LeafQueryData<Types>>: Debug,\n LedgerLog<BlockQueryData<Types>>: Debug,\n LedgerLog<(VidCommonQueryData<Types>, Option<VidShare>)>: Debug,
"],["impl<Types: Debug + NodeType> Debug for VidCommonQueryData<Types>"],["impl<Types: NodeType, T: MerklizedState<Types>> Debug for Snapshot<Types, T>"],["impl Debug for PayloadRequest"],["impl<Types: Debug + NodeType> Debug for LeafQueryData<Types>"],["impl Debug for TmpDb"],["impl<Types: NodeType> Debug for WindowStart<Types>"],["impl Debug for Histogram"],["impl Debug for PrunerCfg"],["impl<Types: Debug + NodeType> Debug for BlockQueryData<Types>"],["impl Debug for Error"],["impl Debug for Config"],["impl Debug for VidCommonRequest"],["impl<__T0: Debug> Debug for FetchTransactionSnafu<__T0>"],["impl Debug for MetricsDataSource"],["impl Debug for MockNodeImpl"],["impl Debug for Error"],["impl<Types: Debug + NodeType> Debug for PayloadQueryData<Types>"],["impl Debug for Error"],["impl<D: Debug, U: Debug> Debug for ExtensibleDataSource<D, U>"],["impl<__T0: Debug> Debug for FetchLeafSnafu<__T0>"],["impl Debug for MetricsError"],["impl<Types: NodeType> Debug for BlockId<Types>"],["impl Debug for PrometheusMetrics"],["impl Debug for QueryError"],["impl Debug for Error"],["impl<Ver: Debug + StaticVersionType> Debug for QueryServiceProvider<Ver>"],["impl Debug for LTree"],["impl Debug for MockTypes"],["impl Debug for QuerySnafu"],["impl<Types, S, P> Debug for Pruner<Types, S, P>
where\n Types: NodeType,\n S: Debug,\n P: Debug,
"],["impl<__T0: Debug, __T1: Debug> Debug for InvalidTransactionIndexSnafu<__T0, __T1>"],["impl<P> Debug for TestProvider<P>
where\n P: Debug,
"],["impl Debug for Error"],["impl<__T0: Debug> Debug for QueryVidSnafu<__T0>"],["impl<__T0: Debug, __T1: Debug> Debug for CustomSnafu<__T0, __T1>"],["impl Debug for Counter"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/fmt/trait.Display.js b/trait.impl/core/fmt/trait.Display.js index faa5cc21c..394098d39 100644 --- a/trait.impl/core/fmt/trait.Display.js +++ b/trait.impl/core/fmt/trait.Display.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl Display for Error"],["impl Display for MetricsError"],["impl<Types: NodeType> Display for InconsistentLeafError<Types>"],["impl<Types: NodeType> Display for LeafId<Types>"],["impl Display for Error"],["impl Display for Error"],["impl<Types: NodeType> Display for BlockId<Types>"],["impl Display for QueryError"],["impl Display for Error"],["impl Display for Error"],["impl<Types: NodeType, T: MerklizedState<Types>> Display for Snapshot<Types, T>"]] +"hotshot_query_service":[["impl Display for Error"],["impl Display for Error"],["impl Display for Error"],["impl Display for QueryError"],["impl<Types: NodeType> Display for LeafId<Types>"],["impl Display for MetricsError"],["impl<Types: NodeType, T: MerklizedState<Types>> Display for Snapshot<Types, T>"],["impl Display for Error"],["impl<Types: NodeType> Display for BlockId<Types>"],["impl Display for Error"],["impl<Types: NodeType> Display for InconsistentLeafError<Types>"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/hash/trait.Hash.js b/trait.impl/core/hash/trait.Hash.js index ddf2f0144..e519dda4e 100644 --- a/trait.impl/core/hash/trait.Hash.js +++ b/trait.impl/core/hash/trait.Hash.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl Hash for VidCommonRequest"],["impl Hash for MockTypes"],["impl Hash for SyncStatus"],["impl Hash for MempoolQueryData"],["impl Hash for LeafRequest"],["impl<Types: NodeType, T: MerklizedState<Types>> Hash for Snapshot<Types, T>"],["impl Hash for PayloadRequest"],["impl<Types: NodeType> Hash for LeafId<Types>"],["impl<Types: NodeType> Hash for BlockId<Types>"],["impl Hash for MockNodeImpl"]] +"hotshot_query_service":[["impl Hash for SyncStatus"],["impl Hash for LeafRequest"],["impl Hash for PayloadRequest"],["impl Hash for MempoolQueryData"],["impl<Types: NodeType, T: MerklizedState<Types>> Hash for Snapshot<Types, T>"],["impl<Types: NodeType> Hash for LeafId<Types>"],["impl<Types: NodeType> Hash for BlockId<Types>"],["impl Hash for MockTypes"],["impl Hash for VidCommonRequest"],["impl Hash for MockNodeImpl"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/marker/trait.Copy.js b/trait.impl/core/marker/trait.Copy.js index dedcdffd9..d43da4f3f 100644 --- a/trait.impl/core/marker/trait.Copy.js +++ b/trait.impl/core/marker/trait.Copy.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl Copy for NotFoundSnafu"],["impl<Types: NodeType> Copy for WindowStart<Types>"],["impl<__T0: Copy, __T1: Copy> Copy for CustomSnafu<__T0, __T1>"],["impl<__T0: Copy, __T1: Copy> Copy for CustomSnafu<__T0, __T1>"],["impl<__T0: Copy, __T1: Copy> Copy for InvalidTransactionIndexSnafu<__T0, __T1>"],["impl<D: Copy, U: Copy> Copy for ExtensibleDataSource<D, U>"],["impl Copy for MockTypes"],["impl<__T0: Copy> Copy for QueryVidSnafu<__T0>"],["impl Copy for QuerySnafu"],["impl<Types: NodeType> Copy for BlockId<Types>"],["impl<__T0: Copy, __T1: Copy> Copy for QueryWindowSnafu<__T0, __T1>"],["impl Copy for MissingSnafu"],["impl Copy for MockNodeImpl"],["impl<__T0: Copy> Copy for Snafu<__T0>"],["impl<Types: NodeType> Copy for LeafId<Types>"],["impl Copy for RequestSnafu"],["impl Copy for PayloadRequest"],["impl Copy for VidCommonRequest"],["impl Copy for LeafRequest"],["impl Copy for NoStorage"],["impl<__T0: Copy> Copy for FetchLeafSnafu<__T0>"],["impl<__T0: Copy> Copy for FetchBlockSnafu<__T0>"],["impl Copy for NoFetching"],["impl<__T0: Copy> Copy for FetchTransactionSnafu<__T0>"],["impl Copy for RequestSnafu"]] +"hotshot_query_service":[["impl<__T0: Copy> Copy for QueryVidSnafu<__T0>"],["impl<__T0: Copy, __T1: Copy> Copy for CustomSnafu<__T0, __T1>"],["impl Copy for LeafRequest"],["impl<Types: NodeType> Copy for LeafId<Types>"],["impl Copy for MockTypes"],["impl Copy for NoStorage"],["impl Copy for QuerySnafu"],["impl<__T0: Copy> Copy for Snafu<__T0>"],["impl<__T0: Copy> Copy for FetchBlockSnafu<__T0>"],["impl Copy for NotFoundSnafu"],["impl Copy for MissingSnafu"],["impl<__T0: Copy, __T1: Copy> Copy for QueryWindowSnafu<__T0, __T1>"],["impl Copy for VidCommonRequest"],["impl Copy for PayloadRequest"],["impl<__T0: Copy, __T1: Copy> Copy for InvalidTransactionIndexSnafu<__T0, __T1>"],["impl Copy for NoFetching"],["impl Copy for RequestSnafu"],["impl<D: Copy, U: Copy> Copy for ExtensibleDataSource<D, U>"],["impl<__T0: Copy> Copy for FetchTransactionSnafu<__T0>"],["impl<Types: NodeType> Copy for WindowStart<Types>"],["impl<__T0: Copy> Copy for FetchLeafSnafu<__T0>"],["impl Copy for MockNodeImpl"],["impl<Types: NodeType> Copy for BlockId<Types>"],["impl Copy for RequestSnafu"],["impl<__T0: Copy, __T1: Copy> Copy for CustomSnafu<__T0, __T1>"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/marker/trait.Freeze.js b/trait.impl/core/marker/trait.Freeze.js index 5601b22c4..9d4a14a09 100644 --- a/trait.impl/core/marker/trait.Freeze.js +++ b/trait.impl/core/marker/trait.Freeze.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl<Types> Freeze for LeafId<Types>",1,["hotshot_query_service::availability::data_source::LeafId"]],["impl<Types> Freeze for BlockId<Types>",1,["hotshot_query_service::availability::data_source::BlockId"]],["impl<T> Freeze for Fetch<T>
where\n T: Freeze,
",1,["hotshot_query_service::availability::fetch::Fetch"]],["impl<Types> Freeze for LeafQueryData<Types>
where\n <Types as NodeType>::BlockHeader: Freeze,\n <Types as NodeType>::BlockPayload: Freeze,\n <<Types as NodeType>::SignatureKey as SignatureKey>::QCType: Freeze,\n <Types as NodeType>::SignatureKey: Freeze,\n <Types as NodeType>::Time: Freeze,
",1,["hotshot_query_service::availability::query_data::LeafQueryData"]],["impl<Types> Freeze for InconsistentLeafError<Types>",1,["hotshot_query_service::availability::query_data::InconsistentLeafError"]],["impl<Types> Freeze for BlockQueryData<Types>
where\n <Types as NodeType>::BlockHeader: Freeze,\n <Types as NodeType>::BlockPayload: Freeze,
",1,["hotshot_query_service::availability::query_data::BlockQueryData"]],["impl<Types> Freeze for PayloadQueryData<Types>
where\n <Types as NodeType>::BlockPayload: Freeze,
",1,["hotshot_query_service::availability::query_data::PayloadQueryData"]],["impl<Types> Freeze for VidCommonQueryData<Types>",1,["hotshot_query_service::availability::query_data::VidCommonQueryData"]],["impl<Types> Freeze for TransactionQueryData<Types>
where\n <<Types as NodeType>::BlockPayload as QueryablePayload>::InclusionProof: Freeze,\n <Types as NodeType>::Transaction: Freeze,
",1,["hotshot_query_service::availability::query_data::TransactionQueryData"]],["impl<Types> Freeze for BlockSummaryQueryData<Types>
where\n <Types as NodeType>::BlockHeader: Freeze,
",1,["hotshot_query_service::availability::query_data::BlockSummaryQueryData"]],["impl<Types> Freeze for TransactionSummaryQueryData<Types>
where\n <Types as NodeType>::BlockHeader: Freeze,\n <Types as NodeType>::Transaction: Freeze,
",1,["hotshot_query_service::availability::query_data::TransactionSummaryQueryData"]],["impl Freeze for Options",1,["hotshot_query_service::availability::Options"]],["impl Freeze for Error",1,["hotshot_query_service::availability::Error"]],["impl Freeze for RequestSnafu",1,["hotshot_query_service::availability::RequestSnafu"]],["impl<__T0> Freeze for FetchLeafSnafu<__T0>
where\n __T0: Freeze,
",1,["hotshot_query_service::availability::FetchLeafSnafu"]],["impl<__T0> Freeze for FetchBlockSnafu<__T0>
where\n __T0: Freeze,
",1,["hotshot_query_service::availability::FetchBlockSnafu"]],["impl<__T0> Freeze for FetchTransactionSnafu<__T0>
where\n __T0: Freeze,
",1,["hotshot_query_service::availability::FetchTransactionSnafu"]],["impl<__T0, __T1> Freeze for InvalidTransactionIndexSnafu<__T0, __T1>
where\n __T0: Freeze,\n __T1: Freeze,
",1,["hotshot_query_service::availability::InvalidTransactionIndexSnafu"]],["impl<__T0, __T1> Freeze for CustomSnafu<__T0, __T1>
where\n __T0: Freeze,\n __T1: Freeze,
",1,["hotshot_query_service::availability::CustomSnafu"]],["impl<D, U> Freeze for ExtensibleDataSource<D, U>
where\n D: Freeze,\n U: Freeze,
",1,["hotshot_query_service::data_source::extension::ExtensibleDataSource"]],["impl<Types, S, P> Freeze for Builder<Types, S, P>
where\n P: Freeze,\n S: Freeze,
",1,["hotshot_query_service::data_source::fetching::Builder"]],["impl<Types, S, P> Freeze for FetchingDataSource<Types, S, P>",1,["hotshot_query_service::data_source::fetching::FetchingDataSource"]],["impl<Types, S, P> Freeze for Pruner<Types, S, P>",1,["hotshot_query_service::data_source::fetching::Pruner"]],["impl<'a, Types, S> Freeze for StorageReadGuard<'a, Types, S>",1,["hotshot_query_service::data_source::fetching::StorageReadGuard"]],["impl<'a, Types, S> Freeze for StorageWriteGuard<'a, Types, S>",1,["hotshot_query_service::data_source::fetching::StorageWriteGuard"]],["impl Freeze for MetricsDataSource",1,["hotshot_query_service::data_source::metrics::MetricsDataSource"]],["impl<Types> Freeze for FileSystemStorage<Types>",1,["hotshot_query_service::data_source::storage::fs::FileSystemStorage"]],["impl Freeze for Storage",1,["hotshot_query_service::data_source::storage::no_storage::testing::Storage"]],["impl Freeze for DataSource",1,["hotshot_query_service::data_source::storage::no_storage::testing::DataSource"]],["impl Freeze for NoStorage",1,["hotshot_query_service::data_source::storage::no_storage::NoStorage"]],["impl Freeze for PrunerCfg",1,["hotshot_query_service::data_source::storage::pruning::PrunerCfg"]],["impl Freeze for TmpDb",1,["hotshot_query_service::data_source::storage::sql::testing::TmpDb"]],["impl Freeze for TestMerkleTreeMigration",1,["hotshot_query_service::data_source::storage::sql::testing::TestMerkleTreeMigration"]],["impl Freeze for Config",1,["hotshot_query_service::data_source::storage::sql::Config"]],["impl Freeze for SqlStorage",1,["hotshot_query_service::data_source::storage::sql::SqlStorage"]],["impl<'a> Freeze for Transaction<'a>",1,["hotshot_query_service::data_source::storage::sql::Transaction"]],["impl Freeze for LTree",1,["hotshot_query_service::data_source::storage::sql::LTree"]],["impl Freeze for Error",1,["hotshot_query_service::error::Error"]],["impl<Types> Freeze for AnyProvider<Types>",1,["hotshot_query_service::fetching::provider::any::AnyProvider"]],["impl Freeze for QueryServiceProvider",1,["hotshot_query_service::fetching::provider::query_service::QueryServiceProvider"]],["impl<P> Freeze for TestProvider<P>",1,["hotshot_query_service::fetching::provider::testing::TestProvider"]],["impl Freeze for NoFetching",1,["hotshot_query_service::fetching::provider::NoFetching"]],["impl Freeze for PayloadRequest",1,["hotshot_query_service::fetching::request::PayloadRequest"]],["impl Freeze for VidCommonRequest",1,["hotshot_query_service::fetching::request::VidCommonRequest"]],["impl Freeze for LeafRequest",1,["hotshot_query_service::fetching::request::LeafRequest"]],["impl<T, C> Freeze for Fetcher<T, C>",1,["hotshot_query_service::fetching::Fetcher"]],["impl<Types, T> Freeze for Snapshot<Types, T>
where\n <T as MerklizedState<Types>>::Commit: Freeze,
",1,["hotshot_query_service::merklized_state::data_source::Snapshot"]],["impl Freeze for Options",1,["hotshot_query_service::merklized_state::Options"]],["impl Freeze for Error",1,["hotshot_query_service::merklized_state::Error"]],["impl Freeze for MetricsError",1,["hotshot_query_service::metrics::MetricsError"]],["impl Freeze for PrometheusMetrics",1,["hotshot_query_service::metrics::PrometheusMetrics"]],["impl Freeze for Counter",1,["hotshot_query_service::metrics::Counter"]],["impl Freeze for Gauge",1,["hotshot_query_service::metrics::Gauge"]],["impl Freeze for Histogram",1,["hotshot_query_service::metrics::Histogram"]],["impl Freeze for Label",1,["hotshot_query_service::metrics::Label"]],["impl<Types> Freeze for WindowStart<Types>",1,["hotshot_query_service::node::data_source::WindowStart"]],["impl Freeze for SyncStatus",1,["hotshot_query_service::node::query_data::SyncStatus"]],["impl<T> Freeze for TimeWindowQueryData<T>
where\n T: Freeze,
",1,["hotshot_query_service::node::query_data::TimeWindowQueryData"]],["impl Freeze for Options",1,["hotshot_query_service::node::Options"]],["impl Freeze for Error",1,["hotshot_query_service::node::Error"]],["impl Freeze for RequestSnafu",1,["hotshot_query_service::node::RequestSnafu"]],["impl Freeze for QuerySnafu",1,["hotshot_query_service::node::QuerySnafu"]],["impl<__T0> Freeze for QueryVidSnafu<__T0>
where\n __T0: Freeze,
",1,["hotshot_query_service::node::QueryVidSnafu"]],["impl<__T0, __T1> Freeze for QueryWindowSnafu<__T0, __T1>
where\n __T0: Freeze,\n __T1: Freeze,
",1,["hotshot_query_service::node::QueryWindowSnafu"]],["impl<__T0, __T1> Freeze for CustomSnafu<__T0, __T1>
where\n __T0: Freeze,\n __T1: Freeze,
",1,["hotshot_query_service::node::CustomSnafu"]],["impl Freeze for MempoolQueryData",1,["hotshot_query_service::status::query_data::MempoolQueryData"]],["impl Freeze for Options",1,["hotshot_query_service::status::Options"]],["impl Freeze for Error",1,["hotshot_query_service::status::Error"]],["impl<D> Freeze for MockNetwork<D>",1,["hotshot_query_service::testing::consensus::MockNetwork"]],["impl Freeze for MockTypes",1,["hotshot_query_service::testing::mocks::MockTypes"]],["impl Freeze for MockNodeImpl",1,["hotshot_query_service::testing::mocks::MockNodeImpl"]],["impl Freeze for QueryError",1,["hotshot_query_service::QueryError"]],["impl Freeze for NotFoundSnafu",1,["hotshot_query_service::NotFoundSnafu"]],["impl Freeze for MissingSnafu",1,["hotshot_query_service::MissingSnafu"]],["impl<__T0> Freeze for Snafu<__T0>
where\n __T0: Freeze,
",1,["hotshot_query_service::Snafu"]],["impl Freeze for Options",1,["hotshot_query_service::Options"]]] +"hotshot_query_service":[["impl<Types> Freeze for LeafId<Types>",1,["hotshot_query_service::availability::data_source::LeafId"]],["impl<Types> Freeze for BlockId<Types>",1,["hotshot_query_service::availability::data_source::BlockId"]],["impl<T> Freeze for Fetch<T>
where\n T: Freeze,
",1,["hotshot_query_service::availability::fetch::Fetch"]],["impl<Types> Freeze for LeafQueryData<Types>
where\n <Types as NodeType>::BlockHeader: Freeze,\n <Types as NodeType>::BlockPayload: Freeze,\n <<Types as NodeType>::SignatureKey as SignatureKey>::QCType: Freeze,\n <Types as NodeType>::SignatureKey: Freeze,\n <Types as NodeType>::Time: Freeze,
",1,["hotshot_query_service::availability::query_data::LeafQueryData"]],["impl<Types> Freeze for InconsistentLeafError<Types>",1,["hotshot_query_service::availability::query_data::InconsistentLeafError"]],["impl<Types> Freeze for BlockQueryData<Types>
where\n <Types as NodeType>::BlockHeader: Freeze,\n <Types as NodeType>::BlockPayload: Freeze,
",1,["hotshot_query_service::availability::query_data::BlockQueryData"]],["impl<Types> Freeze for PayloadQueryData<Types>
where\n <Types as NodeType>::BlockPayload: Freeze,
",1,["hotshot_query_service::availability::query_data::PayloadQueryData"]],["impl<Types> Freeze for VidCommonQueryData<Types>",1,["hotshot_query_service::availability::query_data::VidCommonQueryData"]],["impl<Types> Freeze for TransactionQueryData<Types>
where\n <<Types as NodeType>::BlockPayload as QueryablePayload>::InclusionProof: Freeze,\n <Types as NodeType>::Transaction: Freeze,
",1,["hotshot_query_service::availability::query_data::TransactionQueryData"]],["impl<Types> Freeze for BlockSummaryQueryData<Types>
where\n <Types as NodeType>::BlockHeader: Freeze,
",1,["hotshot_query_service::availability::query_data::BlockSummaryQueryData"]],["impl<Types> Freeze for TransactionSummaryQueryData<Types>
where\n <Types as NodeType>::BlockHeader: Freeze,\n <Types as NodeType>::Transaction: Freeze,
",1,["hotshot_query_service::availability::query_data::TransactionSummaryQueryData"]],["impl Freeze for Options",1,["hotshot_query_service::availability::Options"]],["impl Freeze for Error",1,["hotshot_query_service::availability::Error"]],["impl Freeze for RequestSnafu",1,["hotshot_query_service::availability::RequestSnafu"]],["impl<__T0> Freeze for FetchLeafSnafu<__T0>
where\n __T0: Freeze,
",1,["hotshot_query_service::availability::FetchLeafSnafu"]],["impl<__T0> Freeze for FetchBlockSnafu<__T0>
where\n __T0: Freeze,
",1,["hotshot_query_service::availability::FetchBlockSnafu"]],["impl<__T0> Freeze for FetchTransactionSnafu<__T0>
where\n __T0: Freeze,
",1,["hotshot_query_service::availability::FetchTransactionSnafu"]],["impl<__T0, __T1> Freeze for InvalidTransactionIndexSnafu<__T0, __T1>
where\n __T0: Freeze,\n __T1: Freeze,
",1,["hotshot_query_service::availability::InvalidTransactionIndexSnafu"]],["impl<__T0, __T1> Freeze for CustomSnafu<__T0, __T1>
where\n __T0: Freeze,\n __T1: Freeze,
",1,["hotshot_query_service::availability::CustomSnafu"]],["impl<D, U> Freeze for ExtensibleDataSource<D, U>
where\n D: Freeze,\n U: Freeze,
",1,["hotshot_query_service::data_source::extension::ExtensibleDataSource"]],["impl<Types, S, P> Freeze for Builder<Types, S, P>
where\n P: Freeze,\n S: Freeze,
",1,["hotshot_query_service::data_source::fetching::Builder"]],["impl<Types, S, P> Freeze for FetchingDataSource<Types, S, P>",1,["hotshot_query_service::data_source::fetching::FetchingDataSource"]],["impl<Types, S, P> Freeze for Pruner<Types, S, P>",1,["hotshot_query_service::data_source::fetching::Pruner"]],["impl<'a, Types, S> Freeze for StorageReadGuard<'a, Types, S>",1,["hotshot_query_service::data_source::fetching::StorageReadGuard"]],["impl<'a, Types, S> Freeze for StorageWriteGuard<'a, Types, S>",1,["hotshot_query_service::data_source::fetching::StorageWriteGuard"]],["impl Freeze for MetricsDataSource",1,["hotshot_query_service::data_source::metrics::MetricsDataSource"]],["impl<Types> Freeze for FileSystemStorage<Types>",1,["hotshot_query_service::data_source::storage::fs::FileSystemStorage"]],["impl Freeze for Storage",1,["hotshot_query_service::data_source::storage::no_storage::testing::Storage"]],["impl Freeze for DataSource",1,["hotshot_query_service::data_source::storage::no_storage::testing::DataSource"]],["impl Freeze for NoStorage",1,["hotshot_query_service::data_source::storage::no_storage::NoStorage"]],["impl Freeze for PrunerCfg",1,["hotshot_query_service::data_source::storage::pruning::PrunerCfg"]],["impl Freeze for TmpDb",1,["hotshot_query_service::data_source::storage::sql::testing::TmpDb"]],["impl Freeze for TestMerkleTreeMigration",1,["hotshot_query_service::data_source::storage::sql::testing::TestMerkleTreeMigration"]],["impl Freeze for Config",1,["hotshot_query_service::data_source::storage::sql::Config"]],["impl Freeze for SqlStorage",1,["hotshot_query_service::data_source::storage::sql::SqlStorage"]],["impl<'a> Freeze for Transaction<'a>",1,["hotshot_query_service::data_source::storage::sql::Transaction"]],["impl Freeze for LTree",1,["hotshot_query_service::data_source::storage::sql::LTree"]],["impl Freeze for Error",1,["hotshot_query_service::error::Error"]],["impl<Types> Freeze for AnyProvider<Types>",1,["hotshot_query_service::fetching::provider::any::AnyProvider"]],["impl<Ver> Freeze for QueryServiceProvider<Ver>",1,["hotshot_query_service::fetching::provider::query_service::QueryServiceProvider"]],["impl<P> Freeze for TestProvider<P>",1,["hotshot_query_service::fetching::provider::testing::TestProvider"]],["impl Freeze for NoFetching",1,["hotshot_query_service::fetching::provider::NoFetching"]],["impl Freeze for PayloadRequest",1,["hotshot_query_service::fetching::request::PayloadRequest"]],["impl Freeze for VidCommonRequest",1,["hotshot_query_service::fetching::request::VidCommonRequest"]],["impl Freeze for LeafRequest",1,["hotshot_query_service::fetching::request::LeafRequest"]],["impl<T, C> Freeze for Fetcher<T, C>",1,["hotshot_query_service::fetching::Fetcher"]],["impl<Types, T> Freeze for Snapshot<Types, T>
where\n <T as MerklizedState<Types>>::Commit: Freeze,
",1,["hotshot_query_service::merklized_state::data_source::Snapshot"]],["impl Freeze for Options",1,["hotshot_query_service::merklized_state::Options"]],["impl Freeze for Error",1,["hotshot_query_service::merklized_state::Error"]],["impl Freeze for MetricsError",1,["hotshot_query_service::metrics::MetricsError"]],["impl Freeze for PrometheusMetrics",1,["hotshot_query_service::metrics::PrometheusMetrics"]],["impl Freeze for Counter",1,["hotshot_query_service::metrics::Counter"]],["impl Freeze for Gauge",1,["hotshot_query_service::metrics::Gauge"]],["impl Freeze for Histogram",1,["hotshot_query_service::metrics::Histogram"]],["impl Freeze for Label",1,["hotshot_query_service::metrics::Label"]],["impl<Types> Freeze for WindowStart<Types>",1,["hotshot_query_service::node::data_source::WindowStart"]],["impl Freeze for SyncStatus",1,["hotshot_query_service::node::query_data::SyncStatus"]],["impl<T> Freeze for TimeWindowQueryData<T>
where\n T: Freeze,
",1,["hotshot_query_service::node::query_data::TimeWindowQueryData"]],["impl Freeze for Options",1,["hotshot_query_service::node::Options"]],["impl Freeze for Error",1,["hotshot_query_service::node::Error"]],["impl Freeze for RequestSnafu",1,["hotshot_query_service::node::RequestSnafu"]],["impl Freeze for QuerySnafu",1,["hotshot_query_service::node::QuerySnafu"]],["impl<__T0> Freeze for QueryVidSnafu<__T0>
where\n __T0: Freeze,
",1,["hotshot_query_service::node::QueryVidSnafu"]],["impl<__T0, __T1> Freeze for QueryWindowSnafu<__T0, __T1>
where\n __T0: Freeze,\n __T1: Freeze,
",1,["hotshot_query_service::node::QueryWindowSnafu"]],["impl<__T0, __T1> Freeze for CustomSnafu<__T0, __T1>
where\n __T0: Freeze,\n __T1: Freeze,
",1,["hotshot_query_service::node::CustomSnafu"]],["impl Freeze for MempoolQueryData",1,["hotshot_query_service::status::query_data::MempoolQueryData"]],["impl Freeze for Options",1,["hotshot_query_service::status::Options"]],["impl Freeze for Error",1,["hotshot_query_service::status::Error"]],["impl<D> Freeze for MockNetwork<D>",1,["hotshot_query_service::testing::consensus::MockNetwork"]],["impl Freeze for MockTypes",1,["hotshot_query_service::testing::mocks::MockTypes"]],["impl Freeze for MockNodeImpl",1,["hotshot_query_service::testing::mocks::MockNodeImpl"]],["impl Freeze for QueryError",1,["hotshot_query_service::QueryError"]],["impl Freeze for NotFoundSnafu",1,["hotshot_query_service::NotFoundSnafu"]],["impl Freeze for MissingSnafu",1,["hotshot_query_service::MissingSnafu"]],["impl<__T0> Freeze for Snafu<__T0>
where\n __T0: Freeze,
",1,["hotshot_query_service::Snafu"]],["impl Freeze for Options",1,["hotshot_query_service::Options"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/marker/trait.Send.js b/trait.impl/core/marker/trait.Send.js index ee5fb7efd..86b390d2a 100644 --- a/trait.impl/core/marker/trait.Send.js +++ b/trait.impl/core/marker/trait.Send.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl<Types> Send for LeafId<Types>",1,["hotshot_query_service::availability::data_source::LeafId"]],["impl<Types> Send for BlockId<Types>",1,["hotshot_query_service::availability::data_source::BlockId"]],["impl<T> Send for Fetch<T>
where\n T: Send,
",1,["hotshot_query_service::availability::fetch::Fetch"]],["impl<Types> Send for LeafQueryData<Types>",1,["hotshot_query_service::availability::query_data::LeafQueryData"]],["impl<Types> Send for InconsistentLeafError<Types>",1,["hotshot_query_service::availability::query_data::InconsistentLeafError"]],["impl<Types> Send for BlockQueryData<Types>",1,["hotshot_query_service::availability::query_data::BlockQueryData"]],["impl<Types> Send for PayloadQueryData<Types>",1,["hotshot_query_service::availability::query_data::PayloadQueryData"]],["impl<Types> Send for VidCommonQueryData<Types>",1,["hotshot_query_service::availability::query_data::VidCommonQueryData"]],["impl<Types> Send for TransactionQueryData<Types>
where\n <<Types as NodeType>::BlockPayload as QueryablePayload>::InclusionProof: Send,
",1,["hotshot_query_service::availability::query_data::TransactionQueryData"]],["impl<Types> Send for BlockSummaryQueryData<Types>",1,["hotshot_query_service::availability::query_data::BlockSummaryQueryData"]],["impl<Types> Send for TransactionSummaryQueryData<Types>",1,["hotshot_query_service::availability::query_data::TransactionSummaryQueryData"]],["impl Send for Options",1,["hotshot_query_service::availability::Options"]],["impl Send for Error",1,["hotshot_query_service::availability::Error"]],["impl Send for RequestSnafu",1,["hotshot_query_service::availability::RequestSnafu"]],["impl<__T0> Send for FetchLeafSnafu<__T0>
where\n __T0: Send,
",1,["hotshot_query_service::availability::FetchLeafSnafu"]],["impl<__T0> Send for FetchBlockSnafu<__T0>
where\n __T0: Send,
",1,["hotshot_query_service::availability::FetchBlockSnafu"]],["impl<__T0> Send for FetchTransactionSnafu<__T0>
where\n __T0: Send,
",1,["hotshot_query_service::availability::FetchTransactionSnafu"]],["impl<__T0, __T1> Send for InvalidTransactionIndexSnafu<__T0, __T1>
where\n __T0: Send,\n __T1: Send,
",1,["hotshot_query_service::availability::InvalidTransactionIndexSnafu"]],["impl<__T0, __T1> Send for CustomSnafu<__T0, __T1>
where\n __T0: Send,\n __T1: Send,
",1,["hotshot_query_service::availability::CustomSnafu"]],["impl<D, U> Send for ExtensibleDataSource<D, U>
where\n D: Send,\n U: Send,
",1,["hotshot_query_service::data_source::extension::ExtensibleDataSource"]],["impl<Types, S, P> Send for Builder<Types, S, P>
where\n P: Send,\n S: Send,\n Types: Send,
",1,["hotshot_query_service::data_source::fetching::Builder"]],["impl<Types, S, P> Send for FetchingDataSource<Types, S, P>
where\n P: Send + Sync,\n S: Send + Sync,
",1,["hotshot_query_service::data_source::fetching::FetchingDataSource"]],["impl<Types, S, P> Send for Pruner<Types, S, P>
where\n P: Send,\n S: Send,
",1,["hotshot_query_service::data_source::fetching::Pruner"]],["impl<'a, Types, S> Send for StorageReadGuard<'a, Types, S>
where\n S: Sync,
",1,["hotshot_query_service::data_source::fetching::StorageReadGuard"]],["impl<'a, Types, S> Send for StorageWriteGuard<'a, Types, S>
where\n S: Send,
",1,["hotshot_query_service::data_source::fetching::StorageWriteGuard"]],["impl Send for MetricsDataSource",1,["hotshot_query_service::data_source::metrics::MetricsDataSource"]],["impl<Types> Send for FileSystemStorage<Types>",1,["hotshot_query_service::data_source::storage::fs::FileSystemStorage"]],["impl Send for Storage",1,["hotshot_query_service::data_source::storage::no_storage::testing::Storage"]],["impl Send for DataSource",1,["hotshot_query_service::data_source::storage::no_storage::testing::DataSource"]],["impl Send for NoStorage",1,["hotshot_query_service::data_source::storage::no_storage::NoStorage"]],["impl Send for PrunerCfg",1,["hotshot_query_service::data_source::storage::pruning::PrunerCfg"]],["impl Send for TmpDb",1,["hotshot_query_service::data_source::storage::sql::testing::TmpDb"]],["impl Send for TestMerkleTreeMigration",1,["hotshot_query_service::data_source::storage::sql::testing::TestMerkleTreeMigration"]],["impl Send for Config",1,["hotshot_query_service::data_source::storage::sql::Config"]],["impl Send for SqlStorage",1,["hotshot_query_service::data_source::storage::sql::SqlStorage"]],["impl<'a> Send for Transaction<'a>",1,["hotshot_query_service::data_source::storage::sql::Transaction"]],["impl Send for LTree",1,["hotshot_query_service::data_source::storage::sql::LTree"]],["impl Send for Error",1,["hotshot_query_service::error::Error"]],["impl<Types> Send for AnyProvider<Types>",1,["hotshot_query_service::fetching::provider::any::AnyProvider"]],["impl Send for QueryServiceProvider",1,["hotshot_query_service::fetching::provider::query_service::QueryServiceProvider"]],["impl<P> Send for TestProvider<P>
where\n P: Send + Sync,
",1,["hotshot_query_service::fetching::provider::testing::TestProvider"]],["impl Send for NoFetching",1,["hotshot_query_service::fetching::provider::NoFetching"]],["impl Send for PayloadRequest",1,["hotshot_query_service::fetching::request::PayloadRequest"]],["impl Send for VidCommonRequest",1,["hotshot_query_service::fetching::request::VidCommonRequest"]],["impl Send for LeafRequest",1,["hotshot_query_service::fetching::request::LeafRequest"]],["impl<T, C> Send for Fetcher<T, C>
where\n C: Send,\n T: Send,
",1,["hotshot_query_service::fetching::Fetcher"]],["impl<Types, T> Send for Snapshot<Types, T>",1,["hotshot_query_service::merklized_state::data_source::Snapshot"]],["impl Send for Options",1,["hotshot_query_service::merklized_state::Options"]],["impl Send for Error",1,["hotshot_query_service::merklized_state::Error"]],["impl Send for MetricsError",1,["hotshot_query_service::metrics::MetricsError"]],["impl Send for PrometheusMetrics",1,["hotshot_query_service::metrics::PrometheusMetrics"]],["impl Send for Counter",1,["hotshot_query_service::metrics::Counter"]],["impl Send for Gauge",1,["hotshot_query_service::metrics::Gauge"]],["impl Send for Histogram",1,["hotshot_query_service::metrics::Histogram"]],["impl Send for Label",1,["hotshot_query_service::metrics::Label"]],["impl<Types> Send for WindowStart<Types>",1,["hotshot_query_service::node::data_source::WindowStart"]],["impl Send for SyncStatus",1,["hotshot_query_service::node::query_data::SyncStatus"]],["impl<T> Send for TimeWindowQueryData<T>
where\n T: Send,
",1,["hotshot_query_service::node::query_data::TimeWindowQueryData"]],["impl Send for Options",1,["hotshot_query_service::node::Options"]],["impl Send for Error",1,["hotshot_query_service::node::Error"]],["impl Send for RequestSnafu",1,["hotshot_query_service::node::RequestSnafu"]],["impl Send for QuerySnafu",1,["hotshot_query_service::node::QuerySnafu"]],["impl<__T0> Send for QueryVidSnafu<__T0>
where\n __T0: Send,
",1,["hotshot_query_service::node::QueryVidSnafu"]],["impl<__T0, __T1> Send for QueryWindowSnafu<__T0, __T1>
where\n __T0: Send,\n __T1: Send,
",1,["hotshot_query_service::node::QueryWindowSnafu"]],["impl<__T0, __T1> Send for CustomSnafu<__T0, __T1>
where\n __T0: Send,\n __T1: Send,
",1,["hotshot_query_service::node::CustomSnafu"]],["impl Send for MempoolQueryData",1,["hotshot_query_service::status::query_data::MempoolQueryData"]],["impl Send for Options",1,["hotshot_query_service::status::Options"]],["impl Send for Error",1,["hotshot_query_service::status::Error"]],["impl<D> Send for MockNetwork<D>",1,["hotshot_query_service::testing::consensus::MockNetwork"]],["impl Send for MockTypes",1,["hotshot_query_service::testing::mocks::MockTypes"]],["impl Send for MockNodeImpl",1,["hotshot_query_service::testing::mocks::MockNodeImpl"]],["impl Send for QueryError",1,["hotshot_query_service::QueryError"]],["impl Send for NotFoundSnafu",1,["hotshot_query_service::NotFoundSnafu"]],["impl Send for MissingSnafu",1,["hotshot_query_service::MissingSnafu"]],["impl<__T0> Send for Snafu<__T0>
where\n __T0: Send,
",1,["hotshot_query_service::Snafu"]],["impl Send for Options",1,["hotshot_query_service::Options"]]] +"hotshot_query_service":[["impl<Types> Send for LeafId<Types>",1,["hotshot_query_service::availability::data_source::LeafId"]],["impl<Types> Send for BlockId<Types>",1,["hotshot_query_service::availability::data_source::BlockId"]],["impl<T> Send for Fetch<T>
where\n T: Send,
",1,["hotshot_query_service::availability::fetch::Fetch"]],["impl<Types> Send for LeafQueryData<Types>",1,["hotshot_query_service::availability::query_data::LeafQueryData"]],["impl<Types> Send for InconsistentLeafError<Types>",1,["hotshot_query_service::availability::query_data::InconsistentLeafError"]],["impl<Types> Send for BlockQueryData<Types>",1,["hotshot_query_service::availability::query_data::BlockQueryData"]],["impl<Types> Send for PayloadQueryData<Types>",1,["hotshot_query_service::availability::query_data::PayloadQueryData"]],["impl<Types> Send for VidCommonQueryData<Types>",1,["hotshot_query_service::availability::query_data::VidCommonQueryData"]],["impl<Types> Send for TransactionQueryData<Types>
where\n <<Types as NodeType>::BlockPayload as QueryablePayload>::InclusionProof: Send,
",1,["hotshot_query_service::availability::query_data::TransactionQueryData"]],["impl<Types> Send for BlockSummaryQueryData<Types>",1,["hotshot_query_service::availability::query_data::BlockSummaryQueryData"]],["impl<Types> Send for TransactionSummaryQueryData<Types>",1,["hotshot_query_service::availability::query_data::TransactionSummaryQueryData"]],["impl Send for Options",1,["hotshot_query_service::availability::Options"]],["impl Send for Error",1,["hotshot_query_service::availability::Error"]],["impl Send for RequestSnafu",1,["hotshot_query_service::availability::RequestSnafu"]],["impl<__T0> Send for FetchLeafSnafu<__T0>
where\n __T0: Send,
",1,["hotshot_query_service::availability::FetchLeafSnafu"]],["impl<__T0> Send for FetchBlockSnafu<__T0>
where\n __T0: Send,
",1,["hotshot_query_service::availability::FetchBlockSnafu"]],["impl<__T0> Send for FetchTransactionSnafu<__T0>
where\n __T0: Send,
",1,["hotshot_query_service::availability::FetchTransactionSnafu"]],["impl<__T0, __T1> Send for InvalidTransactionIndexSnafu<__T0, __T1>
where\n __T0: Send,\n __T1: Send,
",1,["hotshot_query_service::availability::InvalidTransactionIndexSnafu"]],["impl<__T0, __T1> Send for CustomSnafu<__T0, __T1>
where\n __T0: Send,\n __T1: Send,
",1,["hotshot_query_service::availability::CustomSnafu"]],["impl<D, U> Send for ExtensibleDataSource<D, U>
where\n D: Send,\n U: Send,
",1,["hotshot_query_service::data_source::extension::ExtensibleDataSource"]],["impl<Types, S, P> Send for Builder<Types, S, P>
where\n P: Send,\n S: Send,\n Types: Send,
",1,["hotshot_query_service::data_source::fetching::Builder"]],["impl<Types, S, P> Send for FetchingDataSource<Types, S, P>
where\n P: Send + Sync,\n S: Send + Sync,
",1,["hotshot_query_service::data_source::fetching::FetchingDataSource"]],["impl<Types, S, P> Send for Pruner<Types, S, P>
where\n P: Send,\n S: Send,
",1,["hotshot_query_service::data_source::fetching::Pruner"]],["impl<'a, Types, S> Send for StorageReadGuard<'a, Types, S>
where\n S: Sync,
",1,["hotshot_query_service::data_source::fetching::StorageReadGuard"]],["impl<'a, Types, S> Send for StorageWriteGuard<'a, Types, S>
where\n S: Send,
",1,["hotshot_query_service::data_source::fetching::StorageWriteGuard"]],["impl Send for MetricsDataSource",1,["hotshot_query_service::data_source::metrics::MetricsDataSource"]],["impl<Types> Send for FileSystemStorage<Types>",1,["hotshot_query_service::data_source::storage::fs::FileSystemStorage"]],["impl Send for Storage",1,["hotshot_query_service::data_source::storage::no_storage::testing::Storage"]],["impl Send for DataSource",1,["hotshot_query_service::data_source::storage::no_storage::testing::DataSource"]],["impl Send for NoStorage",1,["hotshot_query_service::data_source::storage::no_storage::NoStorage"]],["impl Send for PrunerCfg",1,["hotshot_query_service::data_source::storage::pruning::PrunerCfg"]],["impl Send for TmpDb",1,["hotshot_query_service::data_source::storage::sql::testing::TmpDb"]],["impl Send for TestMerkleTreeMigration",1,["hotshot_query_service::data_source::storage::sql::testing::TestMerkleTreeMigration"]],["impl Send for Config",1,["hotshot_query_service::data_source::storage::sql::Config"]],["impl Send for SqlStorage",1,["hotshot_query_service::data_source::storage::sql::SqlStorage"]],["impl<'a> Send for Transaction<'a>",1,["hotshot_query_service::data_source::storage::sql::Transaction"]],["impl Send for LTree",1,["hotshot_query_service::data_source::storage::sql::LTree"]],["impl Send for Error",1,["hotshot_query_service::error::Error"]],["impl<Types> Send for AnyProvider<Types>",1,["hotshot_query_service::fetching::provider::any::AnyProvider"]],["impl<Ver> Send for QueryServiceProvider<Ver>",1,["hotshot_query_service::fetching::provider::query_service::QueryServiceProvider"]],["impl<P> Send for TestProvider<P>
where\n P: Send + Sync,
",1,["hotshot_query_service::fetching::provider::testing::TestProvider"]],["impl Send for NoFetching",1,["hotshot_query_service::fetching::provider::NoFetching"]],["impl Send for PayloadRequest",1,["hotshot_query_service::fetching::request::PayloadRequest"]],["impl Send for VidCommonRequest",1,["hotshot_query_service::fetching::request::VidCommonRequest"]],["impl Send for LeafRequest",1,["hotshot_query_service::fetching::request::LeafRequest"]],["impl<T, C> Send for Fetcher<T, C>
where\n C: Send,\n T: Send,
",1,["hotshot_query_service::fetching::Fetcher"]],["impl<Types, T> Send for Snapshot<Types, T>",1,["hotshot_query_service::merklized_state::data_source::Snapshot"]],["impl Send for Options",1,["hotshot_query_service::merklized_state::Options"]],["impl Send for Error",1,["hotshot_query_service::merklized_state::Error"]],["impl Send for MetricsError",1,["hotshot_query_service::metrics::MetricsError"]],["impl Send for PrometheusMetrics",1,["hotshot_query_service::metrics::PrometheusMetrics"]],["impl Send for Counter",1,["hotshot_query_service::metrics::Counter"]],["impl Send for Gauge",1,["hotshot_query_service::metrics::Gauge"]],["impl Send for Histogram",1,["hotshot_query_service::metrics::Histogram"]],["impl Send for Label",1,["hotshot_query_service::metrics::Label"]],["impl<Types> Send for WindowStart<Types>",1,["hotshot_query_service::node::data_source::WindowStart"]],["impl Send for SyncStatus",1,["hotshot_query_service::node::query_data::SyncStatus"]],["impl<T> Send for TimeWindowQueryData<T>
where\n T: Send,
",1,["hotshot_query_service::node::query_data::TimeWindowQueryData"]],["impl Send for Options",1,["hotshot_query_service::node::Options"]],["impl Send for Error",1,["hotshot_query_service::node::Error"]],["impl Send for RequestSnafu",1,["hotshot_query_service::node::RequestSnafu"]],["impl Send for QuerySnafu",1,["hotshot_query_service::node::QuerySnafu"]],["impl<__T0> Send for QueryVidSnafu<__T0>
where\n __T0: Send,
",1,["hotshot_query_service::node::QueryVidSnafu"]],["impl<__T0, __T1> Send for QueryWindowSnafu<__T0, __T1>
where\n __T0: Send,\n __T1: Send,
",1,["hotshot_query_service::node::QueryWindowSnafu"]],["impl<__T0, __T1> Send for CustomSnafu<__T0, __T1>
where\n __T0: Send,\n __T1: Send,
",1,["hotshot_query_service::node::CustomSnafu"]],["impl Send for MempoolQueryData",1,["hotshot_query_service::status::query_data::MempoolQueryData"]],["impl Send for Options",1,["hotshot_query_service::status::Options"]],["impl Send for Error",1,["hotshot_query_service::status::Error"]],["impl<D> Send for MockNetwork<D>",1,["hotshot_query_service::testing::consensus::MockNetwork"]],["impl Send for MockTypes",1,["hotshot_query_service::testing::mocks::MockTypes"]],["impl Send for MockNodeImpl",1,["hotshot_query_service::testing::mocks::MockNodeImpl"]],["impl Send for QueryError",1,["hotshot_query_service::QueryError"]],["impl Send for NotFoundSnafu",1,["hotshot_query_service::NotFoundSnafu"]],["impl Send for MissingSnafu",1,["hotshot_query_service::MissingSnafu"]],["impl<__T0> Send for Snafu<__T0>
where\n __T0: Send,
",1,["hotshot_query_service::Snafu"]],["impl Send for Options",1,["hotshot_query_service::Options"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/marker/trait.StructuralEq.js b/trait.impl/core/marker/trait.StructuralEq.js index 7a365e4d9..2ac2699a0 100644 --- a/trait.impl/core/marker/trait.StructuralEq.js +++ b/trait.impl/core/marker/trait.StructuralEq.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl<Types: NodeType> StructuralEq for LeafQueryData<Types>"],["impl<Types: NodeType> StructuralEq for VidCommonQueryData<Types>"],["impl<Types: NodeType> StructuralEq for TransactionQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"],["impl<T> StructuralEq for TimeWindowQueryData<T>"],["impl<Types: NodeType> StructuralEq for BlockSummaryQueryData<Types>"],["impl StructuralEq for PayloadRequest"],["impl<Types: NodeType> StructuralEq for TransactionSummaryQueryData<Types>"],["impl StructuralEq for MockNodeImpl"],["impl StructuralEq for MockTypes"],["impl StructuralEq for LeafRequest"],["impl StructuralEq for SyncStatus"],["impl<Types: NodeType> StructuralEq for BlockQueryData<Types>"],["impl StructuralEq for VidCommonRequest"],["impl<Types: NodeType> StructuralEq for PayloadQueryData<Types>"],["impl StructuralEq for MempoolQueryData"]] +"hotshot_query_service":[["impl StructuralEq for MockNodeImpl"],["impl StructuralEq for SyncStatus"],["impl StructuralEq for MempoolQueryData"],["impl StructuralEq for MockTypes"],["impl<Types: NodeType> StructuralEq for BlockQueryData<Types>"],["impl<Types: NodeType> StructuralEq for LeafQueryData<Types>"],["impl<Types: NodeType> StructuralEq for VidCommonQueryData<Types>"],["impl StructuralEq for VidCommonRequest"],["impl<Types: NodeType> StructuralEq for TransactionQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"],["impl<Types: NodeType> StructuralEq for TransactionSummaryQueryData<Types>"],["impl StructuralEq for PayloadRequest"],["impl<Types: NodeType> StructuralEq for PayloadQueryData<Types>"],["impl StructuralEq for LeafRequest"],["impl<T> StructuralEq for TimeWindowQueryData<T>"],["impl<Types: NodeType> StructuralEq for BlockSummaryQueryData<Types>"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/marker/trait.StructuralPartialEq.js b/trait.impl/core/marker/trait.StructuralPartialEq.js index 9aaff39be..7e61bf73b 100644 --- a/trait.impl/core/marker/trait.StructuralPartialEq.js +++ b/trait.impl/core/marker/trait.StructuralPartialEq.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl StructuralPartialEq for MockNodeImpl"],["impl<Types: NodeType> StructuralPartialEq for LeafQueryData<Types>"],["impl<Types: NodeType> StructuralPartialEq for TransactionSummaryQueryData<Types>"],["impl<Types: NodeType> StructuralPartialEq for PayloadQueryData<Types>"],["impl<Types: NodeType> StructuralPartialEq for VidCommonQueryData<Types>"],["impl<Types: NodeType> StructuralPartialEq for BlockQueryData<Types>"],["impl StructuralPartialEq for MempoolQueryData"],["impl StructuralPartialEq for VidCommonRequest"],["impl StructuralPartialEq for SyncStatus"],["impl StructuralPartialEq for LeafRequest"],["impl<Types: NodeType> StructuralPartialEq for BlockSummaryQueryData<Types>"],["impl<Types: NodeType> StructuralPartialEq for TransactionQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"],["impl StructuralPartialEq for MockTypes"],["impl StructuralPartialEq for PayloadRequest"],["impl<T> StructuralPartialEq for TimeWindowQueryData<T>"]] +"hotshot_query_service":[["impl StructuralPartialEq for VidCommonRequest"],["impl StructuralPartialEq for MempoolQueryData"],["impl<T> StructuralPartialEq for TimeWindowQueryData<T>"],["impl<Types: NodeType> StructuralPartialEq for TransactionQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"],["impl StructuralPartialEq for SyncStatus"],["impl<Types: NodeType> StructuralPartialEq for TransactionSummaryQueryData<Types>"],["impl<Types: NodeType> StructuralPartialEq for BlockQueryData<Types>"],["impl<Types: NodeType> StructuralPartialEq for BlockSummaryQueryData<Types>"],["impl<Types: NodeType> StructuralPartialEq for LeafQueryData<Types>"],["impl StructuralPartialEq for MockTypes"],["impl StructuralPartialEq for PayloadRequest"],["impl<Types: NodeType> StructuralPartialEq for PayloadQueryData<Types>"],["impl<Types: NodeType> StructuralPartialEq for VidCommonQueryData<Types>"],["impl StructuralPartialEq for MockNodeImpl"],["impl StructuralPartialEq for LeafRequest"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/marker/trait.Sync.js b/trait.impl/core/marker/trait.Sync.js index 261a1dccd..b9b584c51 100644 --- a/trait.impl/core/marker/trait.Sync.js +++ b/trait.impl/core/marker/trait.Sync.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl<Types> Sync for LeafId<Types>",1,["hotshot_query_service::availability::data_source::LeafId"]],["impl<Types> Sync for BlockId<Types>",1,["hotshot_query_service::availability::data_source::BlockId"]],["impl<T> !Sync for Fetch<T>",1,["hotshot_query_service::availability::fetch::Fetch"]],["impl<Types> Sync for LeafQueryData<Types>",1,["hotshot_query_service::availability::query_data::LeafQueryData"]],["impl<Types> Sync for InconsistentLeafError<Types>",1,["hotshot_query_service::availability::query_data::InconsistentLeafError"]],["impl<Types> Sync for BlockQueryData<Types>",1,["hotshot_query_service::availability::query_data::BlockQueryData"]],["impl<Types> Sync for PayloadQueryData<Types>",1,["hotshot_query_service::availability::query_data::PayloadQueryData"]],["impl<Types> Sync for VidCommonQueryData<Types>",1,["hotshot_query_service::availability::query_data::VidCommonQueryData"]],["impl<Types> Sync for TransactionQueryData<Types>
where\n <<Types as NodeType>::BlockPayload as QueryablePayload>::InclusionProof: Sync,
",1,["hotshot_query_service::availability::query_data::TransactionQueryData"]],["impl<Types> Sync for BlockSummaryQueryData<Types>",1,["hotshot_query_service::availability::query_data::BlockSummaryQueryData"]],["impl<Types> Sync for TransactionSummaryQueryData<Types>",1,["hotshot_query_service::availability::query_data::TransactionSummaryQueryData"]],["impl Sync for Options",1,["hotshot_query_service::availability::Options"]],["impl Sync for Error",1,["hotshot_query_service::availability::Error"]],["impl Sync for RequestSnafu",1,["hotshot_query_service::availability::RequestSnafu"]],["impl<__T0> Sync for FetchLeafSnafu<__T0>
where\n __T0: Sync,
",1,["hotshot_query_service::availability::FetchLeafSnafu"]],["impl<__T0> Sync for FetchBlockSnafu<__T0>
where\n __T0: Sync,
",1,["hotshot_query_service::availability::FetchBlockSnafu"]],["impl<__T0> Sync for FetchTransactionSnafu<__T0>
where\n __T0: Sync,
",1,["hotshot_query_service::availability::FetchTransactionSnafu"]],["impl<__T0, __T1> Sync for InvalidTransactionIndexSnafu<__T0, __T1>
where\n __T0: Sync,\n __T1: Sync,
",1,["hotshot_query_service::availability::InvalidTransactionIndexSnafu"]],["impl<__T0, __T1> Sync for CustomSnafu<__T0, __T1>
where\n __T0: Sync,\n __T1: Sync,
",1,["hotshot_query_service::availability::CustomSnafu"]],["impl<D, U> Sync for ExtensibleDataSource<D, U>
where\n D: Sync,\n U: Sync,
",1,["hotshot_query_service::data_source::extension::ExtensibleDataSource"]],["impl<Types, S, P> Sync for Builder<Types, S, P>
where\n P: Sync,\n S: Sync,\n Types: Sync,
",1,["hotshot_query_service::data_source::fetching::Builder"]],["impl<Types, S, P> Sync for FetchingDataSource<Types, S, P>
where\n P: Send + Sync,\n S: Send + Sync,
",1,["hotshot_query_service::data_source::fetching::FetchingDataSource"]],["impl<Types, S, P> Sync for Pruner<Types, S, P>
where\n P: Sync,\n S: Sync,
",1,["hotshot_query_service::data_source::fetching::Pruner"]],["impl<'a, Types, S> Sync for StorageReadGuard<'a, Types, S>
where\n S: Sync,
",1,["hotshot_query_service::data_source::fetching::StorageReadGuard"]],["impl<'a, Types, S> Sync for StorageWriteGuard<'a, Types, S>
where\n S: Sync,
",1,["hotshot_query_service::data_source::fetching::StorageWriteGuard"]],["impl Sync for MetricsDataSource",1,["hotshot_query_service::data_source::metrics::MetricsDataSource"]],["impl<Types> Sync for FileSystemStorage<Types>",1,["hotshot_query_service::data_source::storage::fs::FileSystemStorage"]],["impl Sync for Storage",1,["hotshot_query_service::data_source::storage::no_storage::testing::Storage"]],["impl Sync for DataSource",1,["hotshot_query_service::data_source::storage::no_storage::testing::DataSource"]],["impl Sync for NoStorage",1,["hotshot_query_service::data_source::storage::no_storage::NoStorage"]],["impl Sync for PrunerCfg",1,["hotshot_query_service::data_source::storage::pruning::PrunerCfg"]],["impl Sync for TmpDb",1,["hotshot_query_service::data_source::storage::sql::testing::TmpDb"]],["impl Sync for TestMerkleTreeMigration",1,["hotshot_query_service::data_source::storage::sql::testing::TestMerkleTreeMigration"]],["impl Sync for Config",1,["hotshot_query_service::data_source::storage::sql::Config"]],["impl Sync for SqlStorage",1,["hotshot_query_service::data_source::storage::sql::SqlStorage"]],["impl<'a> Sync for Transaction<'a>",1,["hotshot_query_service::data_source::storage::sql::Transaction"]],["impl Sync for LTree",1,["hotshot_query_service::data_source::storage::sql::LTree"]],["impl Sync for Error",1,["hotshot_query_service::error::Error"]],["impl<Types> Sync for AnyProvider<Types>",1,["hotshot_query_service::fetching::provider::any::AnyProvider"]],["impl Sync for QueryServiceProvider",1,["hotshot_query_service::fetching::provider::query_service::QueryServiceProvider"]],["impl<P> Sync for TestProvider<P>
where\n P: Send + Sync,
",1,["hotshot_query_service::fetching::provider::testing::TestProvider"]],["impl Sync for NoFetching",1,["hotshot_query_service::fetching::provider::NoFetching"]],["impl Sync for PayloadRequest",1,["hotshot_query_service::fetching::request::PayloadRequest"]],["impl Sync for VidCommonRequest",1,["hotshot_query_service::fetching::request::VidCommonRequest"]],["impl Sync for LeafRequest",1,["hotshot_query_service::fetching::request::LeafRequest"]],["impl<T, C> Sync for Fetcher<T, C>
where\n C: Send,\n T: Send,
",1,["hotshot_query_service::fetching::Fetcher"]],["impl<Types, T> Sync for Snapshot<Types, T>",1,["hotshot_query_service::merklized_state::data_source::Snapshot"]],["impl Sync for Options",1,["hotshot_query_service::merklized_state::Options"]],["impl Sync for Error",1,["hotshot_query_service::merklized_state::Error"]],["impl Sync for MetricsError",1,["hotshot_query_service::metrics::MetricsError"]],["impl Sync for PrometheusMetrics",1,["hotshot_query_service::metrics::PrometheusMetrics"]],["impl Sync for Counter",1,["hotshot_query_service::metrics::Counter"]],["impl Sync for Gauge",1,["hotshot_query_service::metrics::Gauge"]],["impl Sync for Histogram",1,["hotshot_query_service::metrics::Histogram"]],["impl Sync for Label",1,["hotshot_query_service::metrics::Label"]],["impl<Types> Sync for WindowStart<Types>",1,["hotshot_query_service::node::data_source::WindowStart"]],["impl Sync for SyncStatus",1,["hotshot_query_service::node::query_data::SyncStatus"]],["impl<T> Sync for TimeWindowQueryData<T>
where\n T: Sync,
",1,["hotshot_query_service::node::query_data::TimeWindowQueryData"]],["impl Sync for Options",1,["hotshot_query_service::node::Options"]],["impl Sync for Error",1,["hotshot_query_service::node::Error"]],["impl Sync for RequestSnafu",1,["hotshot_query_service::node::RequestSnafu"]],["impl Sync for QuerySnafu",1,["hotshot_query_service::node::QuerySnafu"]],["impl<__T0> Sync for QueryVidSnafu<__T0>
where\n __T0: Sync,
",1,["hotshot_query_service::node::QueryVidSnafu"]],["impl<__T0, __T1> Sync for QueryWindowSnafu<__T0, __T1>
where\n __T0: Sync,\n __T1: Sync,
",1,["hotshot_query_service::node::QueryWindowSnafu"]],["impl<__T0, __T1> Sync for CustomSnafu<__T0, __T1>
where\n __T0: Sync,\n __T1: Sync,
",1,["hotshot_query_service::node::CustomSnafu"]],["impl Sync for MempoolQueryData",1,["hotshot_query_service::status::query_data::MempoolQueryData"]],["impl Sync for Options",1,["hotshot_query_service::status::Options"]],["impl Sync for Error",1,["hotshot_query_service::status::Error"]],["impl<D> Sync for MockNetwork<D>",1,["hotshot_query_service::testing::consensus::MockNetwork"]],["impl Sync for MockTypes",1,["hotshot_query_service::testing::mocks::MockTypes"]],["impl Sync for MockNodeImpl",1,["hotshot_query_service::testing::mocks::MockNodeImpl"]],["impl Sync for QueryError",1,["hotshot_query_service::QueryError"]],["impl Sync for NotFoundSnafu",1,["hotshot_query_service::NotFoundSnafu"]],["impl Sync for MissingSnafu",1,["hotshot_query_service::MissingSnafu"]],["impl<__T0> Sync for Snafu<__T0>
where\n __T0: Sync,
",1,["hotshot_query_service::Snafu"]],["impl Sync for Options",1,["hotshot_query_service::Options"]]] +"hotshot_query_service":[["impl<Types> Sync for LeafId<Types>",1,["hotshot_query_service::availability::data_source::LeafId"]],["impl<Types> Sync for BlockId<Types>",1,["hotshot_query_service::availability::data_source::BlockId"]],["impl<T> !Sync for Fetch<T>",1,["hotshot_query_service::availability::fetch::Fetch"]],["impl<Types> Sync for LeafQueryData<Types>",1,["hotshot_query_service::availability::query_data::LeafQueryData"]],["impl<Types> Sync for InconsistentLeafError<Types>",1,["hotshot_query_service::availability::query_data::InconsistentLeafError"]],["impl<Types> Sync for BlockQueryData<Types>",1,["hotshot_query_service::availability::query_data::BlockQueryData"]],["impl<Types> Sync for PayloadQueryData<Types>",1,["hotshot_query_service::availability::query_data::PayloadQueryData"]],["impl<Types> Sync for VidCommonQueryData<Types>",1,["hotshot_query_service::availability::query_data::VidCommonQueryData"]],["impl<Types> Sync for TransactionQueryData<Types>
where\n <<Types as NodeType>::BlockPayload as QueryablePayload>::InclusionProof: Sync,
",1,["hotshot_query_service::availability::query_data::TransactionQueryData"]],["impl<Types> Sync for BlockSummaryQueryData<Types>",1,["hotshot_query_service::availability::query_data::BlockSummaryQueryData"]],["impl<Types> Sync for TransactionSummaryQueryData<Types>",1,["hotshot_query_service::availability::query_data::TransactionSummaryQueryData"]],["impl Sync for Options",1,["hotshot_query_service::availability::Options"]],["impl Sync for Error",1,["hotshot_query_service::availability::Error"]],["impl Sync for RequestSnafu",1,["hotshot_query_service::availability::RequestSnafu"]],["impl<__T0> Sync for FetchLeafSnafu<__T0>
where\n __T0: Sync,
",1,["hotshot_query_service::availability::FetchLeafSnafu"]],["impl<__T0> Sync for FetchBlockSnafu<__T0>
where\n __T0: Sync,
",1,["hotshot_query_service::availability::FetchBlockSnafu"]],["impl<__T0> Sync for FetchTransactionSnafu<__T0>
where\n __T0: Sync,
",1,["hotshot_query_service::availability::FetchTransactionSnafu"]],["impl<__T0, __T1> Sync for InvalidTransactionIndexSnafu<__T0, __T1>
where\n __T0: Sync,\n __T1: Sync,
",1,["hotshot_query_service::availability::InvalidTransactionIndexSnafu"]],["impl<__T0, __T1> Sync for CustomSnafu<__T0, __T1>
where\n __T0: Sync,\n __T1: Sync,
",1,["hotshot_query_service::availability::CustomSnafu"]],["impl<D, U> Sync for ExtensibleDataSource<D, U>
where\n D: Sync,\n U: Sync,
",1,["hotshot_query_service::data_source::extension::ExtensibleDataSource"]],["impl<Types, S, P> Sync for Builder<Types, S, P>
where\n P: Sync,\n S: Sync,\n Types: Sync,
",1,["hotshot_query_service::data_source::fetching::Builder"]],["impl<Types, S, P> Sync for FetchingDataSource<Types, S, P>
where\n P: Send + Sync,\n S: Send + Sync,
",1,["hotshot_query_service::data_source::fetching::FetchingDataSource"]],["impl<Types, S, P> Sync for Pruner<Types, S, P>
where\n P: Sync,\n S: Sync,
",1,["hotshot_query_service::data_source::fetching::Pruner"]],["impl<'a, Types, S> Sync for StorageReadGuard<'a, Types, S>
where\n S: Sync,
",1,["hotshot_query_service::data_source::fetching::StorageReadGuard"]],["impl<'a, Types, S> Sync for StorageWriteGuard<'a, Types, S>
where\n S: Sync,
",1,["hotshot_query_service::data_source::fetching::StorageWriteGuard"]],["impl Sync for MetricsDataSource",1,["hotshot_query_service::data_source::metrics::MetricsDataSource"]],["impl<Types> Sync for FileSystemStorage<Types>",1,["hotshot_query_service::data_source::storage::fs::FileSystemStorage"]],["impl Sync for Storage",1,["hotshot_query_service::data_source::storage::no_storage::testing::Storage"]],["impl Sync for DataSource",1,["hotshot_query_service::data_source::storage::no_storage::testing::DataSource"]],["impl Sync for NoStorage",1,["hotshot_query_service::data_source::storage::no_storage::NoStorage"]],["impl Sync for PrunerCfg",1,["hotshot_query_service::data_source::storage::pruning::PrunerCfg"]],["impl Sync for TmpDb",1,["hotshot_query_service::data_source::storage::sql::testing::TmpDb"]],["impl Sync for TestMerkleTreeMigration",1,["hotshot_query_service::data_source::storage::sql::testing::TestMerkleTreeMigration"]],["impl Sync for Config",1,["hotshot_query_service::data_source::storage::sql::Config"]],["impl Sync for SqlStorage",1,["hotshot_query_service::data_source::storage::sql::SqlStorage"]],["impl<'a> Sync for Transaction<'a>",1,["hotshot_query_service::data_source::storage::sql::Transaction"]],["impl Sync for LTree",1,["hotshot_query_service::data_source::storage::sql::LTree"]],["impl Sync for Error",1,["hotshot_query_service::error::Error"]],["impl<Types> Sync for AnyProvider<Types>",1,["hotshot_query_service::fetching::provider::any::AnyProvider"]],["impl<Ver> Sync for QueryServiceProvider<Ver>",1,["hotshot_query_service::fetching::provider::query_service::QueryServiceProvider"]],["impl<P> Sync for TestProvider<P>
where\n P: Send + Sync,
",1,["hotshot_query_service::fetching::provider::testing::TestProvider"]],["impl Sync for NoFetching",1,["hotshot_query_service::fetching::provider::NoFetching"]],["impl Sync for PayloadRequest",1,["hotshot_query_service::fetching::request::PayloadRequest"]],["impl Sync for VidCommonRequest",1,["hotshot_query_service::fetching::request::VidCommonRequest"]],["impl Sync for LeafRequest",1,["hotshot_query_service::fetching::request::LeafRequest"]],["impl<T, C> Sync for Fetcher<T, C>
where\n C: Send,\n T: Send,
",1,["hotshot_query_service::fetching::Fetcher"]],["impl<Types, T> Sync for Snapshot<Types, T>",1,["hotshot_query_service::merklized_state::data_source::Snapshot"]],["impl Sync for Options",1,["hotshot_query_service::merklized_state::Options"]],["impl Sync for Error",1,["hotshot_query_service::merklized_state::Error"]],["impl Sync for MetricsError",1,["hotshot_query_service::metrics::MetricsError"]],["impl Sync for PrometheusMetrics",1,["hotshot_query_service::metrics::PrometheusMetrics"]],["impl Sync for Counter",1,["hotshot_query_service::metrics::Counter"]],["impl Sync for Gauge",1,["hotshot_query_service::metrics::Gauge"]],["impl Sync for Histogram",1,["hotshot_query_service::metrics::Histogram"]],["impl Sync for Label",1,["hotshot_query_service::metrics::Label"]],["impl<Types> Sync for WindowStart<Types>",1,["hotshot_query_service::node::data_source::WindowStart"]],["impl Sync for SyncStatus",1,["hotshot_query_service::node::query_data::SyncStatus"]],["impl<T> Sync for TimeWindowQueryData<T>
where\n T: Sync,
",1,["hotshot_query_service::node::query_data::TimeWindowQueryData"]],["impl Sync for Options",1,["hotshot_query_service::node::Options"]],["impl Sync for Error",1,["hotshot_query_service::node::Error"]],["impl Sync for RequestSnafu",1,["hotshot_query_service::node::RequestSnafu"]],["impl Sync for QuerySnafu",1,["hotshot_query_service::node::QuerySnafu"]],["impl<__T0> Sync for QueryVidSnafu<__T0>
where\n __T0: Sync,
",1,["hotshot_query_service::node::QueryVidSnafu"]],["impl<__T0, __T1> Sync for QueryWindowSnafu<__T0, __T1>
where\n __T0: Sync,\n __T1: Sync,
",1,["hotshot_query_service::node::QueryWindowSnafu"]],["impl<__T0, __T1> Sync for CustomSnafu<__T0, __T1>
where\n __T0: Sync,\n __T1: Sync,
",1,["hotshot_query_service::node::CustomSnafu"]],["impl Sync for MempoolQueryData",1,["hotshot_query_service::status::query_data::MempoolQueryData"]],["impl Sync for Options",1,["hotshot_query_service::status::Options"]],["impl Sync for Error",1,["hotshot_query_service::status::Error"]],["impl<D> Sync for MockNetwork<D>",1,["hotshot_query_service::testing::consensus::MockNetwork"]],["impl Sync for MockTypes",1,["hotshot_query_service::testing::mocks::MockTypes"]],["impl Sync for MockNodeImpl",1,["hotshot_query_service::testing::mocks::MockNodeImpl"]],["impl Sync for QueryError",1,["hotshot_query_service::QueryError"]],["impl Sync for NotFoundSnafu",1,["hotshot_query_service::NotFoundSnafu"]],["impl Sync for MissingSnafu",1,["hotshot_query_service::MissingSnafu"]],["impl<__T0> Sync for Snafu<__T0>
where\n __T0: Sync,
",1,["hotshot_query_service::Snafu"]],["impl Sync for Options",1,["hotshot_query_service::Options"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/marker/trait.Unpin.js b/trait.impl/core/marker/trait.Unpin.js index 6faedec16..668ab3614 100644 --- a/trait.impl/core/marker/trait.Unpin.js +++ b/trait.impl/core/marker/trait.Unpin.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl<Types> Unpin for LeafId<Types>",1,["hotshot_query_service::availability::data_source::LeafId"]],["impl<Types> Unpin for BlockId<Types>",1,["hotshot_query_service::availability::data_source::BlockId"]],["impl<T> Unpin for Fetch<T>
where\n T: Unpin,
",1,["hotshot_query_service::availability::fetch::Fetch"]],["impl<Types> Unpin for LeafQueryData<Types>
where\n Types: Unpin,\n <Types as NodeType>::BlockHeader: Unpin,\n <Types as NodeType>::BlockPayload: Unpin,\n <<Types as NodeType>::SignatureKey as SignatureKey>::QCType: Unpin,\n <Types as NodeType>::SignatureKey: Unpin,\n <Types as NodeType>::Time: Unpin,
",1,["hotshot_query_service::availability::query_data::LeafQueryData"]],["impl<Types> Unpin for InconsistentLeafError<Types>",1,["hotshot_query_service::availability::query_data::InconsistentLeafError"]],["impl<Types> Unpin for BlockQueryData<Types>
where\n <Types as NodeType>::BlockHeader: Unpin,\n <Types as NodeType>::BlockPayload: Unpin,
",1,["hotshot_query_service::availability::query_data::BlockQueryData"]],["impl<Types> Unpin for PayloadQueryData<Types>
where\n <Types as NodeType>::BlockPayload: Unpin,
",1,["hotshot_query_service::availability::query_data::PayloadQueryData"]],["impl<Types> Unpin for VidCommonQueryData<Types>",1,["hotshot_query_service::availability::query_data::VidCommonQueryData"]],["impl<Types> Unpin for TransactionQueryData<Types>
where\n <<Types as NodeType>::BlockPayload as QueryablePayload>::InclusionProof: Unpin,\n <Types as NodeType>::Transaction: Unpin,
",1,["hotshot_query_service::availability::query_data::TransactionQueryData"]],["impl<Types> Unpin for BlockSummaryQueryData<Types>
where\n <Types as NodeType>::BlockHeader: Unpin,
",1,["hotshot_query_service::availability::query_data::BlockSummaryQueryData"]],["impl<Types> Unpin for TransactionSummaryQueryData<Types>
where\n <Types as NodeType>::BlockHeader: Unpin,\n <Types as NodeType>::Transaction: Unpin,
",1,["hotshot_query_service::availability::query_data::TransactionSummaryQueryData"]],["impl Unpin for Options",1,["hotshot_query_service::availability::Options"]],["impl Unpin for Error",1,["hotshot_query_service::availability::Error"]],["impl Unpin for RequestSnafu",1,["hotshot_query_service::availability::RequestSnafu"]],["impl<__T0> Unpin for FetchLeafSnafu<__T0>
where\n __T0: Unpin,
",1,["hotshot_query_service::availability::FetchLeafSnafu"]],["impl<__T0> Unpin for FetchBlockSnafu<__T0>
where\n __T0: Unpin,
",1,["hotshot_query_service::availability::FetchBlockSnafu"]],["impl<__T0> Unpin for FetchTransactionSnafu<__T0>
where\n __T0: Unpin,
",1,["hotshot_query_service::availability::FetchTransactionSnafu"]],["impl<__T0, __T1> Unpin for InvalidTransactionIndexSnafu<__T0, __T1>
where\n __T0: Unpin,\n __T1: Unpin,
",1,["hotshot_query_service::availability::InvalidTransactionIndexSnafu"]],["impl<__T0, __T1> Unpin for CustomSnafu<__T0, __T1>
where\n __T0: Unpin,\n __T1: Unpin,
",1,["hotshot_query_service::availability::CustomSnafu"]],["impl<D, U> Unpin for ExtensibleDataSource<D, U>
where\n D: Unpin,\n U: Unpin,
",1,["hotshot_query_service::data_source::extension::ExtensibleDataSource"]],["impl<Types, S, P> Unpin for Builder<Types, S, P>
where\n P: Unpin,\n S: Unpin,\n Types: Unpin,
",1,["hotshot_query_service::data_source::fetching::Builder"]],["impl<Types, S, P> Unpin for FetchingDataSource<Types, S, P>
where\n P: Unpin,\n S: Unpin,\n Types: Unpin,
",1,["hotshot_query_service::data_source::fetching::FetchingDataSource"]],["impl<Types, S, P> Unpin for Pruner<Types, S, P>
where\n P: Unpin,\n S: Unpin,\n Types: Unpin,
",1,["hotshot_query_service::data_source::fetching::Pruner"]],["impl<'a, Types, S> Unpin for StorageReadGuard<'a, Types, S>",1,["hotshot_query_service::data_source::fetching::StorageReadGuard"]],["impl<'a, Types, S> Unpin for StorageWriteGuard<'a, Types, S>",1,["hotshot_query_service::data_source::fetching::StorageWriteGuard"]],["impl Unpin for MetricsDataSource",1,["hotshot_query_service::data_source::metrics::MetricsDataSource"]],["impl<Types> Unpin for FileSystemStorage<Types>
where\n Types: Unpin,\n <Types as NodeType>::BlockHeader: Unpin,\n <Types as NodeType>::BlockPayload: Unpin,\n <<Types as NodeType>::SignatureKey as SignatureKey>::QCType: Unpin,\n <Types as NodeType>::SignatureKey: Unpin,\n <Types as NodeType>::Time: Unpin,\n <<Types as NodeType>::BlockPayload as QueryablePayload>::TransactionIndex: Unpin,
",1,["hotshot_query_service::data_source::storage::fs::FileSystemStorage"]],["impl Unpin for Storage",1,["hotshot_query_service::data_source::storage::no_storage::testing::Storage"]],["impl Unpin for DataSource",1,["hotshot_query_service::data_source::storage::no_storage::testing::DataSource"]],["impl Unpin for NoStorage",1,["hotshot_query_service::data_source::storage::no_storage::NoStorage"]],["impl Unpin for PrunerCfg",1,["hotshot_query_service::data_source::storage::pruning::PrunerCfg"]],["impl Unpin for TmpDb",1,["hotshot_query_service::data_source::storage::sql::testing::TmpDb"]],["impl Unpin for TestMerkleTreeMigration",1,["hotshot_query_service::data_source::storage::sql::testing::TestMerkleTreeMigration"]],["impl Unpin for Config",1,["hotshot_query_service::data_source::storage::sql::Config"]],["impl Unpin for SqlStorage",1,["hotshot_query_service::data_source::storage::sql::SqlStorage"]],["impl<'a> Unpin for Transaction<'a>",1,["hotshot_query_service::data_source::storage::sql::Transaction"]],["impl Unpin for LTree",1,["hotshot_query_service::data_source::storage::sql::LTree"]],["impl Unpin for Error",1,["hotshot_query_service::error::Error"]],["impl<Types> Unpin for AnyProvider<Types>",1,["hotshot_query_service::fetching::provider::any::AnyProvider"]],["impl Unpin for QueryServiceProvider",1,["hotshot_query_service::fetching::provider::query_service::QueryServiceProvider"]],["impl<P> Unpin for TestProvider<P>",1,["hotshot_query_service::fetching::provider::testing::TestProvider"]],["impl Unpin for NoFetching",1,["hotshot_query_service::fetching::provider::NoFetching"]],["impl Unpin for PayloadRequest",1,["hotshot_query_service::fetching::request::PayloadRequest"]],["impl Unpin for VidCommonRequest",1,["hotshot_query_service::fetching::request::VidCommonRequest"]],["impl Unpin for LeafRequest",1,["hotshot_query_service::fetching::request::LeafRequest"]],["impl<T, C> Unpin for Fetcher<T, C>",1,["hotshot_query_service::fetching::Fetcher"]],["impl<Types, T> Unpin for Snapshot<Types, T>
where\n <T as MerklizedState<Types>>::Commit: Unpin,
",1,["hotshot_query_service::merklized_state::data_source::Snapshot"]],["impl Unpin for Options",1,["hotshot_query_service::merklized_state::Options"]],["impl Unpin for Error",1,["hotshot_query_service::merklized_state::Error"]],["impl Unpin for MetricsError",1,["hotshot_query_service::metrics::MetricsError"]],["impl Unpin for PrometheusMetrics",1,["hotshot_query_service::metrics::PrometheusMetrics"]],["impl Unpin for Counter",1,["hotshot_query_service::metrics::Counter"]],["impl Unpin for Gauge",1,["hotshot_query_service::metrics::Gauge"]],["impl Unpin for Histogram",1,["hotshot_query_service::metrics::Histogram"]],["impl Unpin for Label",1,["hotshot_query_service::metrics::Label"]],["impl<Types> Unpin for WindowStart<Types>",1,["hotshot_query_service::node::data_source::WindowStart"]],["impl Unpin for SyncStatus",1,["hotshot_query_service::node::query_data::SyncStatus"]],["impl<T> Unpin for TimeWindowQueryData<T>
where\n T: Unpin,
",1,["hotshot_query_service::node::query_data::TimeWindowQueryData"]],["impl Unpin for Options",1,["hotshot_query_service::node::Options"]],["impl Unpin for Error",1,["hotshot_query_service::node::Error"]],["impl Unpin for RequestSnafu",1,["hotshot_query_service::node::RequestSnafu"]],["impl Unpin for QuerySnafu",1,["hotshot_query_service::node::QuerySnafu"]],["impl<__T0> Unpin for QueryVidSnafu<__T0>
where\n __T0: Unpin,
",1,["hotshot_query_service::node::QueryVidSnafu"]],["impl<__T0, __T1> Unpin for QueryWindowSnafu<__T0, __T1>
where\n __T0: Unpin,\n __T1: Unpin,
",1,["hotshot_query_service::node::QueryWindowSnafu"]],["impl<__T0, __T1> Unpin for CustomSnafu<__T0, __T1>
where\n __T0: Unpin,\n __T1: Unpin,
",1,["hotshot_query_service::node::CustomSnafu"]],["impl Unpin for MempoolQueryData",1,["hotshot_query_service::status::query_data::MempoolQueryData"]],["impl Unpin for Options",1,["hotshot_query_service::status::Options"]],["impl Unpin for Error",1,["hotshot_query_service::status::Error"]],["impl<D> Unpin for MockNetwork<D>",1,["hotshot_query_service::testing::consensus::MockNetwork"]],["impl Unpin for MockTypes",1,["hotshot_query_service::testing::mocks::MockTypes"]],["impl Unpin for MockNodeImpl",1,["hotshot_query_service::testing::mocks::MockNodeImpl"]],["impl Unpin for QueryError",1,["hotshot_query_service::QueryError"]],["impl Unpin for NotFoundSnafu",1,["hotshot_query_service::NotFoundSnafu"]],["impl Unpin for MissingSnafu",1,["hotshot_query_service::MissingSnafu"]],["impl<__T0> Unpin for Snafu<__T0>
where\n __T0: Unpin,
",1,["hotshot_query_service::Snafu"]],["impl Unpin for Options",1,["hotshot_query_service::Options"]]] +"hotshot_query_service":[["impl<Types> Unpin for LeafId<Types>",1,["hotshot_query_service::availability::data_source::LeafId"]],["impl<Types> Unpin for BlockId<Types>",1,["hotshot_query_service::availability::data_source::BlockId"]],["impl<T> Unpin for Fetch<T>
where\n T: Unpin,
",1,["hotshot_query_service::availability::fetch::Fetch"]],["impl<Types> Unpin for LeafQueryData<Types>
where\n Types: Unpin,\n <Types as NodeType>::BlockHeader: Unpin,\n <Types as NodeType>::BlockPayload: Unpin,\n <<Types as NodeType>::SignatureKey as SignatureKey>::QCType: Unpin,\n <Types as NodeType>::SignatureKey: Unpin,\n <Types as NodeType>::Time: Unpin,
",1,["hotshot_query_service::availability::query_data::LeafQueryData"]],["impl<Types> Unpin for InconsistentLeafError<Types>",1,["hotshot_query_service::availability::query_data::InconsistentLeafError"]],["impl<Types> Unpin for BlockQueryData<Types>
where\n <Types as NodeType>::BlockHeader: Unpin,\n <Types as NodeType>::BlockPayload: Unpin,
",1,["hotshot_query_service::availability::query_data::BlockQueryData"]],["impl<Types> Unpin for PayloadQueryData<Types>
where\n <Types as NodeType>::BlockPayload: Unpin,
",1,["hotshot_query_service::availability::query_data::PayloadQueryData"]],["impl<Types> Unpin for VidCommonQueryData<Types>",1,["hotshot_query_service::availability::query_data::VidCommonQueryData"]],["impl<Types> Unpin for TransactionQueryData<Types>
where\n <<Types as NodeType>::BlockPayload as QueryablePayload>::InclusionProof: Unpin,\n <Types as NodeType>::Transaction: Unpin,
",1,["hotshot_query_service::availability::query_data::TransactionQueryData"]],["impl<Types> Unpin for BlockSummaryQueryData<Types>
where\n <Types as NodeType>::BlockHeader: Unpin,
",1,["hotshot_query_service::availability::query_data::BlockSummaryQueryData"]],["impl<Types> Unpin for TransactionSummaryQueryData<Types>
where\n <Types as NodeType>::BlockHeader: Unpin,\n <Types as NodeType>::Transaction: Unpin,
",1,["hotshot_query_service::availability::query_data::TransactionSummaryQueryData"]],["impl Unpin for Options",1,["hotshot_query_service::availability::Options"]],["impl Unpin for Error",1,["hotshot_query_service::availability::Error"]],["impl Unpin for RequestSnafu",1,["hotshot_query_service::availability::RequestSnafu"]],["impl<__T0> Unpin for FetchLeafSnafu<__T0>
where\n __T0: Unpin,
",1,["hotshot_query_service::availability::FetchLeafSnafu"]],["impl<__T0> Unpin for FetchBlockSnafu<__T0>
where\n __T0: Unpin,
",1,["hotshot_query_service::availability::FetchBlockSnafu"]],["impl<__T0> Unpin for FetchTransactionSnafu<__T0>
where\n __T0: Unpin,
",1,["hotshot_query_service::availability::FetchTransactionSnafu"]],["impl<__T0, __T1> Unpin for InvalidTransactionIndexSnafu<__T0, __T1>
where\n __T0: Unpin,\n __T1: Unpin,
",1,["hotshot_query_service::availability::InvalidTransactionIndexSnafu"]],["impl<__T0, __T1> Unpin for CustomSnafu<__T0, __T1>
where\n __T0: Unpin,\n __T1: Unpin,
",1,["hotshot_query_service::availability::CustomSnafu"]],["impl<D, U> Unpin for ExtensibleDataSource<D, U>
where\n D: Unpin,\n U: Unpin,
",1,["hotshot_query_service::data_source::extension::ExtensibleDataSource"]],["impl<Types, S, P> Unpin for Builder<Types, S, P>
where\n P: Unpin,\n S: Unpin,\n Types: Unpin,
",1,["hotshot_query_service::data_source::fetching::Builder"]],["impl<Types, S, P> Unpin for FetchingDataSource<Types, S, P>
where\n P: Unpin,\n S: Unpin,\n Types: Unpin,
",1,["hotshot_query_service::data_source::fetching::FetchingDataSource"]],["impl<Types, S, P> Unpin for Pruner<Types, S, P>
where\n P: Unpin,\n S: Unpin,\n Types: Unpin,
",1,["hotshot_query_service::data_source::fetching::Pruner"]],["impl<'a, Types, S> Unpin for StorageReadGuard<'a, Types, S>",1,["hotshot_query_service::data_source::fetching::StorageReadGuard"]],["impl<'a, Types, S> Unpin for StorageWriteGuard<'a, Types, S>",1,["hotshot_query_service::data_source::fetching::StorageWriteGuard"]],["impl Unpin for MetricsDataSource",1,["hotshot_query_service::data_source::metrics::MetricsDataSource"]],["impl<Types> Unpin for FileSystemStorage<Types>
where\n Types: Unpin,\n <Types as NodeType>::BlockHeader: Unpin,\n <Types as NodeType>::BlockPayload: Unpin,\n <<Types as NodeType>::SignatureKey as SignatureKey>::QCType: Unpin,\n <Types as NodeType>::SignatureKey: Unpin,\n <Types as NodeType>::Time: Unpin,\n <<Types as NodeType>::BlockPayload as QueryablePayload>::TransactionIndex: Unpin,
",1,["hotshot_query_service::data_source::storage::fs::FileSystemStorage"]],["impl Unpin for Storage",1,["hotshot_query_service::data_source::storage::no_storage::testing::Storage"]],["impl Unpin for DataSource",1,["hotshot_query_service::data_source::storage::no_storage::testing::DataSource"]],["impl Unpin for NoStorage",1,["hotshot_query_service::data_source::storage::no_storage::NoStorage"]],["impl Unpin for PrunerCfg",1,["hotshot_query_service::data_source::storage::pruning::PrunerCfg"]],["impl Unpin for TmpDb",1,["hotshot_query_service::data_source::storage::sql::testing::TmpDb"]],["impl Unpin for TestMerkleTreeMigration",1,["hotshot_query_service::data_source::storage::sql::testing::TestMerkleTreeMigration"]],["impl Unpin for Config",1,["hotshot_query_service::data_source::storage::sql::Config"]],["impl Unpin for SqlStorage",1,["hotshot_query_service::data_source::storage::sql::SqlStorage"]],["impl<'a> Unpin for Transaction<'a>",1,["hotshot_query_service::data_source::storage::sql::Transaction"]],["impl Unpin for LTree",1,["hotshot_query_service::data_source::storage::sql::LTree"]],["impl Unpin for Error",1,["hotshot_query_service::error::Error"]],["impl<Types> Unpin for AnyProvider<Types>",1,["hotshot_query_service::fetching::provider::any::AnyProvider"]],["impl<Ver> Unpin for QueryServiceProvider<Ver>",1,["hotshot_query_service::fetching::provider::query_service::QueryServiceProvider"]],["impl<P> Unpin for TestProvider<P>",1,["hotshot_query_service::fetching::provider::testing::TestProvider"]],["impl Unpin for NoFetching",1,["hotshot_query_service::fetching::provider::NoFetching"]],["impl Unpin for PayloadRequest",1,["hotshot_query_service::fetching::request::PayloadRequest"]],["impl Unpin for VidCommonRequest",1,["hotshot_query_service::fetching::request::VidCommonRequest"]],["impl Unpin for LeafRequest",1,["hotshot_query_service::fetching::request::LeafRequest"]],["impl<T, C> Unpin for Fetcher<T, C>",1,["hotshot_query_service::fetching::Fetcher"]],["impl<Types, T> Unpin for Snapshot<Types, T>
where\n <T as MerklizedState<Types>>::Commit: Unpin,
",1,["hotshot_query_service::merklized_state::data_source::Snapshot"]],["impl Unpin for Options",1,["hotshot_query_service::merklized_state::Options"]],["impl Unpin for Error",1,["hotshot_query_service::merklized_state::Error"]],["impl Unpin for MetricsError",1,["hotshot_query_service::metrics::MetricsError"]],["impl Unpin for PrometheusMetrics",1,["hotshot_query_service::metrics::PrometheusMetrics"]],["impl Unpin for Counter",1,["hotshot_query_service::metrics::Counter"]],["impl Unpin for Gauge",1,["hotshot_query_service::metrics::Gauge"]],["impl Unpin for Histogram",1,["hotshot_query_service::metrics::Histogram"]],["impl Unpin for Label",1,["hotshot_query_service::metrics::Label"]],["impl<Types> Unpin for WindowStart<Types>",1,["hotshot_query_service::node::data_source::WindowStart"]],["impl Unpin for SyncStatus",1,["hotshot_query_service::node::query_data::SyncStatus"]],["impl<T> Unpin for TimeWindowQueryData<T>
where\n T: Unpin,
",1,["hotshot_query_service::node::query_data::TimeWindowQueryData"]],["impl Unpin for Options",1,["hotshot_query_service::node::Options"]],["impl Unpin for Error",1,["hotshot_query_service::node::Error"]],["impl Unpin for RequestSnafu",1,["hotshot_query_service::node::RequestSnafu"]],["impl Unpin for QuerySnafu",1,["hotshot_query_service::node::QuerySnafu"]],["impl<__T0> Unpin for QueryVidSnafu<__T0>
where\n __T0: Unpin,
",1,["hotshot_query_service::node::QueryVidSnafu"]],["impl<__T0, __T1> Unpin for QueryWindowSnafu<__T0, __T1>
where\n __T0: Unpin,\n __T1: Unpin,
",1,["hotshot_query_service::node::QueryWindowSnafu"]],["impl<__T0, __T1> Unpin for CustomSnafu<__T0, __T1>
where\n __T0: Unpin,\n __T1: Unpin,
",1,["hotshot_query_service::node::CustomSnafu"]],["impl Unpin for MempoolQueryData",1,["hotshot_query_service::status::query_data::MempoolQueryData"]],["impl Unpin for Options",1,["hotshot_query_service::status::Options"]],["impl Unpin for Error",1,["hotshot_query_service::status::Error"]],["impl<D> Unpin for MockNetwork<D>",1,["hotshot_query_service::testing::consensus::MockNetwork"]],["impl Unpin for MockTypes",1,["hotshot_query_service::testing::mocks::MockTypes"]],["impl Unpin for MockNodeImpl",1,["hotshot_query_service::testing::mocks::MockNodeImpl"]],["impl Unpin for QueryError",1,["hotshot_query_service::QueryError"]],["impl Unpin for NotFoundSnafu",1,["hotshot_query_service::NotFoundSnafu"]],["impl Unpin for MissingSnafu",1,["hotshot_query_service::MissingSnafu"]],["impl<__T0> Unpin for Snafu<__T0>
where\n __T0: Unpin,
",1,["hotshot_query_service::Snafu"]],["impl Unpin for Options",1,["hotshot_query_service::Options"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/ops/drop/trait.Drop.js b/trait.impl/core/ops/drop/trait.Drop.js index 6f0d5a111..591d4ebfd 100644 --- a/trait.impl/core/ops/drop/trait.Drop.js +++ b/trait.impl/core/ops/drop/trait.Drop.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl<D: DataSourceLifeCycle> Drop for MockNetwork<D>"],["impl Drop for TmpDb"]] +"hotshot_query_service":[["impl Drop for TmpDb"],["impl<D: DataSourceLifeCycle> Drop for MockNetwork<D>"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/panic/unwind_safe/trait.RefUnwindSafe.js b/trait.impl/core/panic/unwind_safe/trait.RefUnwindSafe.js index 1096f6d5e..0a803045f 100644 --- a/trait.impl/core/panic/unwind_safe/trait.RefUnwindSafe.js +++ b/trait.impl/core/panic/unwind_safe/trait.RefUnwindSafe.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl<Types> RefUnwindSafe for LeafId<Types>",1,["hotshot_query_service::availability::data_source::LeafId"]],["impl<Types> RefUnwindSafe for BlockId<Types>",1,["hotshot_query_service::availability::data_source::BlockId"]],["impl<T> !RefUnwindSafe for Fetch<T>",1,["hotshot_query_service::availability::fetch::Fetch"]],["impl<Types> RefUnwindSafe for LeafQueryData<Types>
where\n Types: RefUnwindSafe,\n <Types as NodeType>::BlockHeader: RefUnwindSafe,\n <Types as NodeType>::BlockPayload: RefUnwindSafe,\n <<Types as NodeType>::SignatureKey as SignatureKey>::QCType: RefUnwindSafe,\n <Types as NodeType>::SignatureKey: RefUnwindSafe,\n <Types as NodeType>::Time: RefUnwindSafe,
",1,["hotshot_query_service::availability::query_data::LeafQueryData"]],["impl<Types> RefUnwindSafe for InconsistentLeafError<Types>",1,["hotshot_query_service::availability::query_data::InconsistentLeafError"]],["impl<Types> RefUnwindSafe for BlockQueryData<Types>
where\n <Types as NodeType>::BlockHeader: RefUnwindSafe,\n <Types as NodeType>::BlockPayload: RefUnwindSafe,
",1,["hotshot_query_service::availability::query_data::BlockQueryData"]],["impl<Types> RefUnwindSafe for PayloadQueryData<Types>
where\n <Types as NodeType>::BlockPayload: RefUnwindSafe,
",1,["hotshot_query_service::availability::query_data::PayloadQueryData"]],["impl<Types> RefUnwindSafe for VidCommonQueryData<Types>",1,["hotshot_query_service::availability::query_data::VidCommonQueryData"]],["impl<Types> RefUnwindSafe for TransactionQueryData<Types>
where\n <<Types as NodeType>::BlockPayload as QueryablePayload>::InclusionProof: RefUnwindSafe,\n <Types as NodeType>::Transaction: RefUnwindSafe,
",1,["hotshot_query_service::availability::query_data::TransactionQueryData"]],["impl<Types> RefUnwindSafe for BlockSummaryQueryData<Types>
where\n <Types as NodeType>::BlockHeader: RefUnwindSafe,
",1,["hotshot_query_service::availability::query_data::BlockSummaryQueryData"]],["impl<Types> RefUnwindSafe for TransactionSummaryQueryData<Types>
where\n <Types as NodeType>::BlockHeader: RefUnwindSafe,\n <Types as NodeType>::Transaction: RefUnwindSafe,
",1,["hotshot_query_service::availability::query_data::TransactionSummaryQueryData"]],["impl RefUnwindSafe for Options",1,["hotshot_query_service::availability::Options"]],["impl RefUnwindSafe for Error",1,["hotshot_query_service::availability::Error"]],["impl RefUnwindSafe for RequestSnafu",1,["hotshot_query_service::availability::RequestSnafu"]],["impl<__T0> RefUnwindSafe for FetchLeafSnafu<__T0>
where\n __T0: RefUnwindSafe,
",1,["hotshot_query_service::availability::FetchLeafSnafu"]],["impl<__T0> RefUnwindSafe for FetchBlockSnafu<__T0>
where\n __T0: RefUnwindSafe,
",1,["hotshot_query_service::availability::FetchBlockSnafu"]],["impl<__T0> RefUnwindSafe for FetchTransactionSnafu<__T0>
where\n __T0: RefUnwindSafe,
",1,["hotshot_query_service::availability::FetchTransactionSnafu"]],["impl<__T0, __T1> RefUnwindSafe for InvalidTransactionIndexSnafu<__T0, __T1>
where\n __T0: RefUnwindSafe,\n __T1: RefUnwindSafe,
",1,["hotshot_query_service::availability::InvalidTransactionIndexSnafu"]],["impl<__T0, __T1> RefUnwindSafe for CustomSnafu<__T0, __T1>
where\n __T0: RefUnwindSafe,\n __T1: RefUnwindSafe,
",1,["hotshot_query_service::availability::CustomSnafu"]],["impl<D, U> RefUnwindSafe for ExtensibleDataSource<D, U>
where\n D: RefUnwindSafe,\n U: RefUnwindSafe,
",1,["hotshot_query_service::data_source::extension::ExtensibleDataSource"]],["impl<Types, S, P> RefUnwindSafe for Builder<Types, S, P>
where\n P: RefUnwindSafe,\n S: RefUnwindSafe,\n Types: RefUnwindSafe,
",1,["hotshot_query_service::data_source::fetching::Builder"]],["impl<Types, S, P> !RefUnwindSafe for FetchingDataSource<Types, S, P>",1,["hotshot_query_service::data_source::fetching::FetchingDataSource"]],["impl<Types, S, P> RefUnwindSafe for Pruner<Types, S, P>
where\n P: RefUnwindSafe,\n S: RefUnwindSafe,\n Types: RefUnwindSafe,
",1,["hotshot_query_service::data_source::fetching::Pruner"]],["impl<'a, Types, S> !RefUnwindSafe for StorageReadGuard<'a, Types, S>",1,["hotshot_query_service::data_source::fetching::StorageReadGuard"]],["impl<'a, Types, S> !RefUnwindSafe for StorageWriteGuard<'a, Types, S>",1,["hotshot_query_service::data_source::fetching::StorageWriteGuard"]],["impl !RefUnwindSafe for MetricsDataSource",1,["hotshot_query_service::data_source::metrics::MetricsDataSource"]],["impl<Types> RefUnwindSafe for FileSystemStorage<Types>
where\n Types: RefUnwindSafe,\n <Types as NodeType>::BlockHeader: RefUnwindSafe,\n <Types as NodeType>::BlockPayload: RefUnwindSafe,\n <<Types as NodeType>::SignatureKey as SignatureKey>::QCType: RefUnwindSafe,\n <Types as NodeType>::SignatureKey: RefUnwindSafe,\n <Types as NodeType>::Time: RefUnwindSafe,\n <<Types as NodeType>::BlockPayload as QueryablePayload>::TransactionIndex: RefUnwindSafe,
",1,["hotshot_query_service::data_source::storage::fs::FileSystemStorage"]],["impl RefUnwindSafe for Storage",1,["hotshot_query_service::data_source::storage::no_storage::testing::Storage"]],["impl !RefUnwindSafe for DataSource",1,["hotshot_query_service::data_source::storage::no_storage::testing::DataSource"]],["impl RefUnwindSafe for NoStorage",1,["hotshot_query_service::data_source::storage::no_storage::NoStorage"]],["impl RefUnwindSafe for PrunerCfg",1,["hotshot_query_service::data_source::storage::pruning::PrunerCfg"]],["impl RefUnwindSafe for TmpDb",1,["hotshot_query_service::data_source::storage::sql::testing::TmpDb"]],["impl RefUnwindSafe for TestMerkleTreeMigration",1,["hotshot_query_service::data_source::storage::sql::testing::TestMerkleTreeMigration"]],["impl RefUnwindSafe for Config",1,["hotshot_query_service::data_source::storage::sql::Config"]],["impl !RefUnwindSafe for SqlStorage",1,["hotshot_query_service::data_source::storage::sql::SqlStorage"]],["impl<'a> !RefUnwindSafe for Transaction<'a>",1,["hotshot_query_service::data_source::storage::sql::Transaction"]],["impl RefUnwindSafe for LTree",1,["hotshot_query_service::data_source::storage::sql::LTree"]],["impl RefUnwindSafe for Error",1,["hotshot_query_service::error::Error"]],["impl<Types> !RefUnwindSafe for AnyProvider<Types>",1,["hotshot_query_service::fetching::provider::any::AnyProvider"]],["impl !RefUnwindSafe for QueryServiceProvider",1,["hotshot_query_service::fetching::provider::query_service::QueryServiceProvider"]],["impl<P> !RefUnwindSafe for TestProvider<P>",1,["hotshot_query_service::fetching::provider::testing::TestProvider"]],["impl RefUnwindSafe for NoFetching",1,["hotshot_query_service::fetching::provider::NoFetching"]],["impl RefUnwindSafe for PayloadRequest",1,["hotshot_query_service::fetching::request::PayloadRequest"]],["impl RefUnwindSafe for VidCommonRequest",1,["hotshot_query_service::fetching::request::VidCommonRequest"]],["impl RefUnwindSafe for LeafRequest",1,["hotshot_query_service::fetching::request::LeafRequest"]],["impl<T, C> !RefUnwindSafe for Fetcher<T, C>",1,["hotshot_query_service::fetching::Fetcher"]],["impl<Types, T> RefUnwindSafe for Snapshot<Types, T>
where\n <T as MerklizedState<Types>>::Commit: RefUnwindSafe,
",1,["hotshot_query_service::merklized_state::data_source::Snapshot"]],["impl RefUnwindSafe for Options",1,["hotshot_query_service::merklized_state::Options"]],["impl RefUnwindSafe for Error",1,["hotshot_query_service::merklized_state::Error"]],["impl !RefUnwindSafe for MetricsError",1,["hotshot_query_service::metrics::MetricsError"]],["impl !RefUnwindSafe for PrometheusMetrics",1,["hotshot_query_service::metrics::PrometheusMetrics"]],["impl RefUnwindSafe for Counter",1,["hotshot_query_service::metrics::Counter"]],["impl RefUnwindSafe for Gauge",1,["hotshot_query_service::metrics::Gauge"]],["impl RefUnwindSafe for Histogram",1,["hotshot_query_service::metrics::Histogram"]],["impl RefUnwindSafe for Label",1,["hotshot_query_service::metrics::Label"]],["impl<Types> RefUnwindSafe for WindowStart<Types>",1,["hotshot_query_service::node::data_source::WindowStart"]],["impl RefUnwindSafe for SyncStatus",1,["hotshot_query_service::node::query_data::SyncStatus"]],["impl<T> RefUnwindSafe for TimeWindowQueryData<T>
where\n T: RefUnwindSafe,
",1,["hotshot_query_service::node::query_data::TimeWindowQueryData"]],["impl RefUnwindSafe for Options",1,["hotshot_query_service::node::Options"]],["impl RefUnwindSafe for Error",1,["hotshot_query_service::node::Error"]],["impl RefUnwindSafe for RequestSnafu",1,["hotshot_query_service::node::RequestSnafu"]],["impl RefUnwindSafe for QuerySnafu",1,["hotshot_query_service::node::QuerySnafu"]],["impl<__T0> RefUnwindSafe for QueryVidSnafu<__T0>
where\n __T0: RefUnwindSafe,
",1,["hotshot_query_service::node::QueryVidSnafu"]],["impl<__T0, __T1> RefUnwindSafe for QueryWindowSnafu<__T0, __T1>
where\n __T0: RefUnwindSafe,\n __T1: RefUnwindSafe,
",1,["hotshot_query_service::node::QueryWindowSnafu"]],["impl<__T0, __T1> RefUnwindSafe for CustomSnafu<__T0, __T1>
where\n __T0: RefUnwindSafe,\n __T1: RefUnwindSafe,
",1,["hotshot_query_service::node::CustomSnafu"]],["impl RefUnwindSafe for MempoolQueryData",1,["hotshot_query_service::status::query_data::MempoolQueryData"]],["impl RefUnwindSafe for Options",1,["hotshot_query_service::status::Options"]],["impl RefUnwindSafe for Error",1,["hotshot_query_service::status::Error"]],["impl<D> !RefUnwindSafe for MockNetwork<D>",1,["hotshot_query_service::testing::consensus::MockNetwork"]],["impl RefUnwindSafe for MockTypes",1,["hotshot_query_service::testing::mocks::MockTypes"]],["impl RefUnwindSafe for MockNodeImpl",1,["hotshot_query_service::testing::mocks::MockNodeImpl"]],["impl RefUnwindSafe for QueryError",1,["hotshot_query_service::QueryError"]],["impl RefUnwindSafe for NotFoundSnafu",1,["hotshot_query_service::NotFoundSnafu"]],["impl RefUnwindSafe for MissingSnafu",1,["hotshot_query_service::MissingSnafu"]],["impl<__T0> RefUnwindSafe for Snafu<__T0>
where\n __T0: RefUnwindSafe,
",1,["hotshot_query_service::Snafu"]],["impl RefUnwindSafe for Options",1,["hotshot_query_service::Options"]]] +"hotshot_query_service":[["impl<Types> RefUnwindSafe for LeafId<Types>",1,["hotshot_query_service::availability::data_source::LeafId"]],["impl<Types> RefUnwindSafe for BlockId<Types>",1,["hotshot_query_service::availability::data_source::BlockId"]],["impl<T> !RefUnwindSafe for Fetch<T>",1,["hotshot_query_service::availability::fetch::Fetch"]],["impl<Types> RefUnwindSafe for LeafQueryData<Types>
where\n Types: RefUnwindSafe,\n <Types as NodeType>::BlockHeader: RefUnwindSafe,\n <Types as NodeType>::BlockPayload: RefUnwindSafe,\n <<Types as NodeType>::SignatureKey as SignatureKey>::QCType: RefUnwindSafe,\n <Types as NodeType>::SignatureKey: RefUnwindSafe,\n <Types as NodeType>::Time: RefUnwindSafe,
",1,["hotshot_query_service::availability::query_data::LeafQueryData"]],["impl<Types> RefUnwindSafe for InconsistentLeafError<Types>",1,["hotshot_query_service::availability::query_data::InconsistentLeafError"]],["impl<Types> RefUnwindSafe for BlockQueryData<Types>
where\n <Types as NodeType>::BlockHeader: RefUnwindSafe,\n <Types as NodeType>::BlockPayload: RefUnwindSafe,
",1,["hotshot_query_service::availability::query_data::BlockQueryData"]],["impl<Types> RefUnwindSafe for PayloadQueryData<Types>
where\n <Types as NodeType>::BlockPayload: RefUnwindSafe,
",1,["hotshot_query_service::availability::query_data::PayloadQueryData"]],["impl<Types> RefUnwindSafe for VidCommonQueryData<Types>",1,["hotshot_query_service::availability::query_data::VidCommonQueryData"]],["impl<Types> RefUnwindSafe for TransactionQueryData<Types>
where\n <<Types as NodeType>::BlockPayload as QueryablePayload>::InclusionProof: RefUnwindSafe,\n <Types as NodeType>::Transaction: RefUnwindSafe,
",1,["hotshot_query_service::availability::query_data::TransactionQueryData"]],["impl<Types> RefUnwindSafe for BlockSummaryQueryData<Types>
where\n <Types as NodeType>::BlockHeader: RefUnwindSafe,
",1,["hotshot_query_service::availability::query_data::BlockSummaryQueryData"]],["impl<Types> RefUnwindSafe for TransactionSummaryQueryData<Types>
where\n <Types as NodeType>::BlockHeader: RefUnwindSafe,\n <Types as NodeType>::Transaction: RefUnwindSafe,
",1,["hotshot_query_service::availability::query_data::TransactionSummaryQueryData"]],["impl RefUnwindSafe for Options",1,["hotshot_query_service::availability::Options"]],["impl RefUnwindSafe for Error",1,["hotshot_query_service::availability::Error"]],["impl RefUnwindSafe for RequestSnafu",1,["hotshot_query_service::availability::RequestSnafu"]],["impl<__T0> RefUnwindSafe for FetchLeafSnafu<__T0>
where\n __T0: RefUnwindSafe,
",1,["hotshot_query_service::availability::FetchLeafSnafu"]],["impl<__T0> RefUnwindSafe for FetchBlockSnafu<__T0>
where\n __T0: RefUnwindSafe,
",1,["hotshot_query_service::availability::FetchBlockSnafu"]],["impl<__T0> RefUnwindSafe for FetchTransactionSnafu<__T0>
where\n __T0: RefUnwindSafe,
",1,["hotshot_query_service::availability::FetchTransactionSnafu"]],["impl<__T0, __T1> RefUnwindSafe for InvalidTransactionIndexSnafu<__T0, __T1>
where\n __T0: RefUnwindSafe,\n __T1: RefUnwindSafe,
",1,["hotshot_query_service::availability::InvalidTransactionIndexSnafu"]],["impl<__T0, __T1> RefUnwindSafe for CustomSnafu<__T0, __T1>
where\n __T0: RefUnwindSafe,\n __T1: RefUnwindSafe,
",1,["hotshot_query_service::availability::CustomSnafu"]],["impl<D, U> RefUnwindSafe for ExtensibleDataSource<D, U>
where\n D: RefUnwindSafe,\n U: RefUnwindSafe,
",1,["hotshot_query_service::data_source::extension::ExtensibleDataSource"]],["impl<Types, S, P> RefUnwindSafe for Builder<Types, S, P>
where\n P: RefUnwindSafe,\n S: RefUnwindSafe,\n Types: RefUnwindSafe,
",1,["hotshot_query_service::data_source::fetching::Builder"]],["impl<Types, S, P> !RefUnwindSafe for FetchingDataSource<Types, S, P>",1,["hotshot_query_service::data_source::fetching::FetchingDataSource"]],["impl<Types, S, P> RefUnwindSafe for Pruner<Types, S, P>
where\n P: RefUnwindSafe,\n S: RefUnwindSafe,\n Types: RefUnwindSafe,
",1,["hotshot_query_service::data_source::fetching::Pruner"]],["impl<'a, Types, S> !RefUnwindSafe for StorageReadGuard<'a, Types, S>",1,["hotshot_query_service::data_source::fetching::StorageReadGuard"]],["impl<'a, Types, S> !RefUnwindSafe for StorageWriteGuard<'a, Types, S>",1,["hotshot_query_service::data_source::fetching::StorageWriteGuard"]],["impl !RefUnwindSafe for MetricsDataSource",1,["hotshot_query_service::data_source::metrics::MetricsDataSource"]],["impl<Types> RefUnwindSafe for FileSystemStorage<Types>
where\n Types: RefUnwindSafe,\n <Types as NodeType>::BlockHeader: RefUnwindSafe,\n <Types as NodeType>::BlockPayload: RefUnwindSafe,\n <<Types as NodeType>::SignatureKey as SignatureKey>::QCType: RefUnwindSafe,\n <Types as NodeType>::SignatureKey: RefUnwindSafe,\n <Types as NodeType>::Time: RefUnwindSafe,\n <<Types as NodeType>::BlockPayload as QueryablePayload>::TransactionIndex: RefUnwindSafe,
",1,["hotshot_query_service::data_source::storage::fs::FileSystemStorage"]],["impl RefUnwindSafe for Storage",1,["hotshot_query_service::data_source::storage::no_storage::testing::Storage"]],["impl !RefUnwindSafe for DataSource",1,["hotshot_query_service::data_source::storage::no_storage::testing::DataSource"]],["impl RefUnwindSafe for NoStorage",1,["hotshot_query_service::data_source::storage::no_storage::NoStorage"]],["impl RefUnwindSafe for PrunerCfg",1,["hotshot_query_service::data_source::storage::pruning::PrunerCfg"]],["impl RefUnwindSafe for TmpDb",1,["hotshot_query_service::data_source::storage::sql::testing::TmpDb"]],["impl RefUnwindSafe for TestMerkleTreeMigration",1,["hotshot_query_service::data_source::storage::sql::testing::TestMerkleTreeMigration"]],["impl RefUnwindSafe for Config",1,["hotshot_query_service::data_source::storage::sql::Config"]],["impl !RefUnwindSafe for SqlStorage",1,["hotshot_query_service::data_source::storage::sql::SqlStorage"]],["impl<'a> !RefUnwindSafe for Transaction<'a>",1,["hotshot_query_service::data_source::storage::sql::Transaction"]],["impl RefUnwindSafe for LTree",1,["hotshot_query_service::data_source::storage::sql::LTree"]],["impl RefUnwindSafe for Error",1,["hotshot_query_service::error::Error"]],["impl<Types> !RefUnwindSafe for AnyProvider<Types>",1,["hotshot_query_service::fetching::provider::any::AnyProvider"]],["impl<Ver> !RefUnwindSafe for QueryServiceProvider<Ver>",1,["hotshot_query_service::fetching::provider::query_service::QueryServiceProvider"]],["impl<P> !RefUnwindSafe for TestProvider<P>",1,["hotshot_query_service::fetching::provider::testing::TestProvider"]],["impl RefUnwindSafe for NoFetching",1,["hotshot_query_service::fetching::provider::NoFetching"]],["impl RefUnwindSafe for PayloadRequest",1,["hotshot_query_service::fetching::request::PayloadRequest"]],["impl RefUnwindSafe for VidCommonRequest",1,["hotshot_query_service::fetching::request::VidCommonRequest"]],["impl RefUnwindSafe for LeafRequest",1,["hotshot_query_service::fetching::request::LeafRequest"]],["impl<T, C> !RefUnwindSafe for Fetcher<T, C>",1,["hotshot_query_service::fetching::Fetcher"]],["impl<Types, T> RefUnwindSafe for Snapshot<Types, T>
where\n <T as MerklizedState<Types>>::Commit: RefUnwindSafe,
",1,["hotshot_query_service::merklized_state::data_source::Snapshot"]],["impl RefUnwindSafe for Options",1,["hotshot_query_service::merklized_state::Options"]],["impl RefUnwindSafe for Error",1,["hotshot_query_service::merklized_state::Error"]],["impl !RefUnwindSafe for MetricsError",1,["hotshot_query_service::metrics::MetricsError"]],["impl !RefUnwindSafe for PrometheusMetrics",1,["hotshot_query_service::metrics::PrometheusMetrics"]],["impl RefUnwindSafe for Counter",1,["hotshot_query_service::metrics::Counter"]],["impl RefUnwindSafe for Gauge",1,["hotshot_query_service::metrics::Gauge"]],["impl RefUnwindSafe for Histogram",1,["hotshot_query_service::metrics::Histogram"]],["impl RefUnwindSafe for Label",1,["hotshot_query_service::metrics::Label"]],["impl<Types> RefUnwindSafe for WindowStart<Types>",1,["hotshot_query_service::node::data_source::WindowStart"]],["impl RefUnwindSafe for SyncStatus",1,["hotshot_query_service::node::query_data::SyncStatus"]],["impl<T> RefUnwindSafe for TimeWindowQueryData<T>
where\n T: RefUnwindSafe,
",1,["hotshot_query_service::node::query_data::TimeWindowQueryData"]],["impl RefUnwindSafe for Options",1,["hotshot_query_service::node::Options"]],["impl RefUnwindSafe for Error",1,["hotshot_query_service::node::Error"]],["impl RefUnwindSafe for RequestSnafu",1,["hotshot_query_service::node::RequestSnafu"]],["impl RefUnwindSafe for QuerySnafu",1,["hotshot_query_service::node::QuerySnafu"]],["impl<__T0> RefUnwindSafe for QueryVidSnafu<__T0>
where\n __T0: RefUnwindSafe,
",1,["hotshot_query_service::node::QueryVidSnafu"]],["impl<__T0, __T1> RefUnwindSafe for QueryWindowSnafu<__T0, __T1>
where\n __T0: RefUnwindSafe,\n __T1: RefUnwindSafe,
",1,["hotshot_query_service::node::QueryWindowSnafu"]],["impl<__T0, __T1> RefUnwindSafe for CustomSnafu<__T0, __T1>
where\n __T0: RefUnwindSafe,\n __T1: RefUnwindSafe,
",1,["hotshot_query_service::node::CustomSnafu"]],["impl RefUnwindSafe for MempoolQueryData",1,["hotshot_query_service::status::query_data::MempoolQueryData"]],["impl RefUnwindSafe for Options",1,["hotshot_query_service::status::Options"]],["impl RefUnwindSafe for Error",1,["hotshot_query_service::status::Error"]],["impl<D> !RefUnwindSafe for MockNetwork<D>",1,["hotshot_query_service::testing::consensus::MockNetwork"]],["impl RefUnwindSafe for MockTypes",1,["hotshot_query_service::testing::mocks::MockTypes"]],["impl RefUnwindSafe for MockNodeImpl",1,["hotshot_query_service::testing::mocks::MockNodeImpl"]],["impl RefUnwindSafe for QueryError",1,["hotshot_query_service::QueryError"]],["impl RefUnwindSafe for NotFoundSnafu",1,["hotshot_query_service::NotFoundSnafu"]],["impl RefUnwindSafe for MissingSnafu",1,["hotshot_query_service::MissingSnafu"]],["impl<__T0> RefUnwindSafe for Snafu<__T0>
where\n __T0: RefUnwindSafe,
",1,["hotshot_query_service::Snafu"]],["impl RefUnwindSafe for Options",1,["hotshot_query_service::Options"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/core/panic/unwind_safe/trait.UnwindSafe.js b/trait.impl/core/panic/unwind_safe/trait.UnwindSafe.js index ae0539e9a..210f93276 100644 --- a/trait.impl/core/panic/unwind_safe/trait.UnwindSafe.js +++ b/trait.impl/core/panic/unwind_safe/trait.UnwindSafe.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl<Types> UnwindSafe for LeafId<Types>",1,["hotshot_query_service::availability::data_source::LeafId"]],["impl<Types> UnwindSafe for BlockId<Types>",1,["hotshot_query_service::availability::data_source::BlockId"]],["impl<T> !UnwindSafe for Fetch<T>",1,["hotshot_query_service::availability::fetch::Fetch"]],["impl<Types> UnwindSafe for LeafQueryData<Types>
where\n Types: UnwindSafe,\n <Types as NodeType>::BlockHeader: UnwindSafe,\n <Types as NodeType>::BlockPayload: UnwindSafe,\n <<Types as NodeType>::SignatureKey as SignatureKey>::QCType: UnwindSafe,\n <Types as NodeType>::SignatureKey: UnwindSafe,\n <Types as NodeType>::Time: UnwindSafe,
",1,["hotshot_query_service::availability::query_data::LeafQueryData"]],["impl<Types> UnwindSafe for InconsistentLeafError<Types>",1,["hotshot_query_service::availability::query_data::InconsistentLeafError"]],["impl<Types> UnwindSafe for BlockQueryData<Types>
where\n <Types as NodeType>::BlockHeader: UnwindSafe,\n <Types as NodeType>::BlockPayload: UnwindSafe,
",1,["hotshot_query_service::availability::query_data::BlockQueryData"]],["impl<Types> UnwindSafe for PayloadQueryData<Types>
where\n <Types as NodeType>::BlockPayload: UnwindSafe,
",1,["hotshot_query_service::availability::query_data::PayloadQueryData"]],["impl<Types> UnwindSafe for VidCommonQueryData<Types>",1,["hotshot_query_service::availability::query_data::VidCommonQueryData"]],["impl<Types> UnwindSafe for TransactionQueryData<Types>
where\n <<Types as NodeType>::BlockPayload as QueryablePayload>::InclusionProof: UnwindSafe,\n <Types as NodeType>::Transaction: UnwindSafe,
",1,["hotshot_query_service::availability::query_data::TransactionQueryData"]],["impl<Types> UnwindSafe for BlockSummaryQueryData<Types>
where\n <Types as NodeType>::BlockHeader: UnwindSafe,
",1,["hotshot_query_service::availability::query_data::BlockSummaryQueryData"]],["impl<Types> UnwindSafe for TransactionSummaryQueryData<Types>
where\n <Types as NodeType>::BlockHeader: UnwindSafe,\n <Types as NodeType>::Transaction: UnwindSafe,
",1,["hotshot_query_service::availability::query_data::TransactionSummaryQueryData"]],["impl UnwindSafe for Options",1,["hotshot_query_service::availability::Options"]],["impl UnwindSafe for Error",1,["hotshot_query_service::availability::Error"]],["impl UnwindSafe for RequestSnafu",1,["hotshot_query_service::availability::RequestSnafu"]],["impl<__T0> UnwindSafe for FetchLeafSnafu<__T0>
where\n __T0: UnwindSafe,
",1,["hotshot_query_service::availability::FetchLeafSnafu"]],["impl<__T0> UnwindSafe for FetchBlockSnafu<__T0>
where\n __T0: UnwindSafe,
",1,["hotshot_query_service::availability::FetchBlockSnafu"]],["impl<__T0> UnwindSafe for FetchTransactionSnafu<__T0>
where\n __T0: UnwindSafe,
",1,["hotshot_query_service::availability::FetchTransactionSnafu"]],["impl<__T0, __T1> UnwindSafe for InvalidTransactionIndexSnafu<__T0, __T1>
where\n __T0: UnwindSafe,\n __T1: UnwindSafe,
",1,["hotshot_query_service::availability::InvalidTransactionIndexSnafu"]],["impl<__T0, __T1> UnwindSafe for CustomSnafu<__T0, __T1>
where\n __T0: UnwindSafe,\n __T1: UnwindSafe,
",1,["hotshot_query_service::availability::CustomSnafu"]],["impl<D, U> UnwindSafe for ExtensibleDataSource<D, U>
where\n D: UnwindSafe,\n U: UnwindSafe,
",1,["hotshot_query_service::data_source::extension::ExtensibleDataSource"]],["impl<Types, S, P> UnwindSafe for Builder<Types, S, P>
where\n P: UnwindSafe,\n S: UnwindSafe,\n Types: UnwindSafe,
",1,["hotshot_query_service::data_source::fetching::Builder"]],["impl<Types, S, P> !UnwindSafe for FetchingDataSource<Types, S, P>",1,["hotshot_query_service::data_source::fetching::FetchingDataSource"]],["impl<Types, S, P> UnwindSafe for Pruner<Types, S, P>
where\n P: UnwindSafe,\n S: UnwindSafe,\n Types: UnwindSafe,
",1,["hotshot_query_service::data_source::fetching::Pruner"]],["impl<'a, Types, S> !UnwindSafe for StorageReadGuard<'a, Types, S>",1,["hotshot_query_service::data_source::fetching::StorageReadGuard"]],["impl<'a, Types, S> !UnwindSafe for StorageWriteGuard<'a, Types, S>",1,["hotshot_query_service::data_source::fetching::StorageWriteGuard"]],["impl !UnwindSafe for MetricsDataSource",1,["hotshot_query_service::data_source::metrics::MetricsDataSource"]],["impl<Types> UnwindSafe for FileSystemStorage<Types>
where\n Types: UnwindSafe,\n <Types as NodeType>::BlockHeader: UnwindSafe,\n <Types as NodeType>::BlockPayload: UnwindSafe,\n <<Types as NodeType>::SignatureKey as SignatureKey>::QCType: UnwindSafe,\n <Types as NodeType>::SignatureKey: UnwindSafe,\n <Types as NodeType>::Time: UnwindSafe,\n <<Types as NodeType>::BlockPayload as QueryablePayload>::TransactionIndex: UnwindSafe,
",1,["hotshot_query_service::data_source::storage::fs::FileSystemStorage"]],["impl UnwindSafe for Storage",1,["hotshot_query_service::data_source::storage::no_storage::testing::Storage"]],["impl !UnwindSafe for DataSource",1,["hotshot_query_service::data_source::storage::no_storage::testing::DataSource"]],["impl UnwindSafe for NoStorage",1,["hotshot_query_service::data_source::storage::no_storage::NoStorage"]],["impl UnwindSafe for PrunerCfg",1,["hotshot_query_service::data_source::storage::pruning::PrunerCfg"]],["impl UnwindSafe for TmpDb",1,["hotshot_query_service::data_source::storage::sql::testing::TmpDb"]],["impl UnwindSafe for TestMerkleTreeMigration",1,["hotshot_query_service::data_source::storage::sql::testing::TestMerkleTreeMigration"]],["impl UnwindSafe for Config",1,["hotshot_query_service::data_source::storage::sql::Config"]],["impl !UnwindSafe for SqlStorage",1,["hotshot_query_service::data_source::storage::sql::SqlStorage"]],["impl<'a> !UnwindSafe for Transaction<'a>",1,["hotshot_query_service::data_source::storage::sql::Transaction"]],["impl UnwindSafe for LTree",1,["hotshot_query_service::data_source::storage::sql::LTree"]],["impl UnwindSafe for Error",1,["hotshot_query_service::error::Error"]],["impl<Types> !UnwindSafe for AnyProvider<Types>",1,["hotshot_query_service::fetching::provider::any::AnyProvider"]],["impl !UnwindSafe for QueryServiceProvider",1,["hotshot_query_service::fetching::provider::query_service::QueryServiceProvider"]],["impl<P> !UnwindSafe for TestProvider<P>",1,["hotshot_query_service::fetching::provider::testing::TestProvider"]],["impl UnwindSafe for NoFetching",1,["hotshot_query_service::fetching::provider::NoFetching"]],["impl UnwindSafe for PayloadRequest",1,["hotshot_query_service::fetching::request::PayloadRequest"]],["impl UnwindSafe for VidCommonRequest",1,["hotshot_query_service::fetching::request::VidCommonRequest"]],["impl UnwindSafe for LeafRequest",1,["hotshot_query_service::fetching::request::LeafRequest"]],["impl<T, C> !UnwindSafe for Fetcher<T, C>",1,["hotshot_query_service::fetching::Fetcher"]],["impl<Types, T> UnwindSafe for Snapshot<Types, T>
where\n <T as MerklizedState<Types>>::Commit: UnwindSafe,
",1,["hotshot_query_service::merklized_state::data_source::Snapshot"]],["impl UnwindSafe for Options",1,["hotshot_query_service::merklized_state::Options"]],["impl UnwindSafe for Error",1,["hotshot_query_service::merklized_state::Error"]],["impl !UnwindSafe for MetricsError",1,["hotshot_query_service::metrics::MetricsError"]],["impl !UnwindSafe for PrometheusMetrics",1,["hotshot_query_service::metrics::PrometheusMetrics"]],["impl UnwindSafe for Counter",1,["hotshot_query_service::metrics::Counter"]],["impl UnwindSafe for Gauge",1,["hotshot_query_service::metrics::Gauge"]],["impl UnwindSafe for Histogram",1,["hotshot_query_service::metrics::Histogram"]],["impl UnwindSafe for Label",1,["hotshot_query_service::metrics::Label"]],["impl<Types> UnwindSafe for WindowStart<Types>",1,["hotshot_query_service::node::data_source::WindowStart"]],["impl UnwindSafe for SyncStatus",1,["hotshot_query_service::node::query_data::SyncStatus"]],["impl<T> UnwindSafe for TimeWindowQueryData<T>
where\n T: UnwindSafe,
",1,["hotshot_query_service::node::query_data::TimeWindowQueryData"]],["impl UnwindSafe for Options",1,["hotshot_query_service::node::Options"]],["impl UnwindSafe for Error",1,["hotshot_query_service::node::Error"]],["impl UnwindSafe for RequestSnafu",1,["hotshot_query_service::node::RequestSnafu"]],["impl UnwindSafe for QuerySnafu",1,["hotshot_query_service::node::QuerySnafu"]],["impl<__T0> UnwindSafe for QueryVidSnafu<__T0>
where\n __T0: UnwindSafe,
",1,["hotshot_query_service::node::QueryVidSnafu"]],["impl<__T0, __T1> UnwindSafe for QueryWindowSnafu<__T0, __T1>
where\n __T0: UnwindSafe,\n __T1: UnwindSafe,
",1,["hotshot_query_service::node::QueryWindowSnafu"]],["impl<__T0, __T1> UnwindSafe for CustomSnafu<__T0, __T1>
where\n __T0: UnwindSafe,\n __T1: UnwindSafe,
",1,["hotshot_query_service::node::CustomSnafu"]],["impl UnwindSafe for MempoolQueryData",1,["hotshot_query_service::status::query_data::MempoolQueryData"]],["impl UnwindSafe for Options",1,["hotshot_query_service::status::Options"]],["impl UnwindSafe for Error",1,["hotshot_query_service::status::Error"]],["impl<D> !UnwindSafe for MockNetwork<D>",1,["hotshot_query_service::testing::consensus::MockNetwork"]],["impl UnwindSafe for MockTypes",1,["hotshot_query_service::testing::mocks::MockTypes"]],["impl UnwindSafe for MockNodeImpl",1,["hotshot_query_service::testing::mocks::MockNodeImpl"]],["impl UnwindSafe for QueryError",1,["hotshot_query_service::QueryError"]],["impl UnwindSafe for NotFoundSnafu",1,["hotshot_query_service::NotFoundSnafu"]],["impl UnwindSafe for MissingSnafu",1,["hotshot_query_service::MissingSnafu"]],["impl<__T0> UnwindSafe for Snafu<__T0>
where\n __T0: UnwindSafe,
",1,["hotshot_query_service::Snafu"]],["impl UnwindSafe for Options",1,["hotshot_query_service::Options"]]] +"hotshot_query_service":[["impl<Types> UnwindSafe for LeafId<Types>",1,["hotshot_query_service::availability::data_source::LeafId"]],["impl<Types> UnwindSafe for BlockId<Types>",1,["hotshot_query_service::availability::data_source::BlockId"]],["impl<T> !UnwindSafe for Fetch<T>",1,["hotshot_query_service::availability::fetch::Fetch"]],["impl<Types> UnwindSafe for LeafQueryData<Types>
where\n Types: UnwindSafe,\n <Types as NodeType>::BlockHeader: UnwindSafe,\n <Types as NodeType>::BlockPayload: UnwindSafe,\n <<Types as NodeType>::SignatureKey as SignatureKey>::QCType: UnwindSafe,\n <Types as NodeType>::SignatureKey: UnwindSafe,\n <Types as NodeType>::Time: UnwindSafe,
",1,["hotshot_query_service::availability::query_data::LeafQueryData"]],["impl<Types> UnwindSafe for InconsistentLeafError<Types>",1,["hotshot_query_service::availability::query_data::InconsistentLeafError"]],["impl<Types> UnwindSafe for BlockQueryData<Types>
where\n <Types as NodeType>::BlockHeader: UnwindSafe,\n <Types as NodeType>::BlockPayload: UnwindSafe,
",1,["hotshot_query_service::availability::query_data::BlockQueryData"]],["impl<Types> UnwindSafe for PayloadQueryData<Types>
where\n <Types as NodeType>::BlockPayload: UnwindSafe,
",1,["hotshot_query_service::availability::query_data::PayloadQueryData"]],["impl<Types> UnwindSafe for VidCommonQueryData<Types>",1,["hotshot_query_service::availability::query_data::VidCommonQueryData"]],["impl<Types> UnwindSafe for TransactionQueryData<Types>
where\n <<Types as NodeType>::BlockPayload as QueryablePayload>::InclusionProof: UnwindSafe,\n <Types as NodeType>::Transaction: UnwindSafe,
",1,["hotshot_query_service::availability::query_data::TransactionQueryData"]],["impl<Types> UnwindSafe for BlockSummaryQueryData<Types>
where\n <Types as NodeType>::BlockHeader: UnwindSafe,
",1,["hotshot_query_service::availability::query_data::BlockSummaryQueryData"]],["impl<Types> UnwindSafe for TransactionSummaryQueryData<Types>
where\n <Types as NodeType>::BlockHeader: UnwindSafe,\n <Types as NodeType>::Transaction: UnwindSafe,
",1,["hotshot_query_service::availability::query_data::TransactionSummaryQueryData"]],["impl UnwindSafe for Options",1,["hotshot_query_service::availability::Options"]],["impl UnwindSafe for Error",1,["hotshot_query_service::availability::Error"]],["impl UnwindSafe for RequestSnafu",1,["hotshot_query_service::availability::RequestSnafu"]],["impl<__T0> UnwindSafe for FetchLeafSnafu<__T0>
where\n __T0: UnwindSafe,
",1,["hotshot_query_service::availability::FetchLeafSnafu"]],["impl<__T0> UnwindSafe for FetchBlockSnafu<__T0>
where\n __T0: UnwindSafe,
",1,["hotshot_query_service::availability::FetchBlockSnafu"]],["impl<__T0> UnwindSafe for FetchTransactionSnafu<__T0>
where\n __T0: UnwindSafe,
",1,["hotshot_query_service::availability::FetchTransactionSnafu"]],["impl<__T0, __T1> UnwindSafe for InvalidTransactionIndexSnafu<__T0, __T1>
where\n __T0: UnwindSafe,\n __T1: UnwindSafe,
",1,["hotshot_query_service::availability::InvalidTransactionIndexSnafu"]],["impl<__T0, __T1> UnwindSafe for CustomSnafu<__T0, __T1>
where\n __T0: UnwindSafe,\n __T1: UnwindSafe,
",1,["hotshot_query_service::availability::CustomSnafu"]],["impl<D, U> UnwindSafe for ExtensibleDataSource<D, U>
where\n D: UnwindSafe,\n U: UnwindSafe,
",1,["hotshot_query_service::data_source::extension::ExtensibleDataSource"]],["impl<Types, S, P> UnwindSafe for Builder<Types, S, P>
where\n P: UnwindSafe,\n S: UnwindSafe,\n Types: UnwindSafe,
",1,["hotshot_query_service::data_source::fetching::Builder"]],["impl<Types, S, P> !UnwindSafe for FetchingDataSource<Types, S, P>",1,["hotshot_query_service::data_source::fetching::FetchingDataSource"]],["impl<Types, S, P> UnwindSafe for Pruner<Types, S, P>
where\n P: UnwindSafe,\n S: UnwindSafe,\n Types: UnwindSafe,
",1,["hotshot_query_service::data_source::fetching::Pruner"]],["impl<'a, Types, S> !UnwindSafe for StorageReadGuard<'a, Types, S>",1,["hotshot_query_service::data_source::fetching::StorageReadGuard"]],["impl<'a, Types, S> !UnwindSafe for StorageWriteGuard<'a, Types, S>",1,["hotshot_query_service::data_source::fetching::StorageWriteGuard"]],["impl !UnwindSafe for MetricsDataSource",1,["hotshot_query_service::data_source::metrics::MetricsDataSource"]],["impl<Types> UnwindSafe for FileSystemStorage<Types>
where\n Types: UnwindSafe,\n <Types as NodeType>::BlockHeader: UnwindSafe,\n <Types as NodeType>::BlockPayload: UnwindSafe,\n <<Types as NodeType>::SignatureKey as SignatureKey>::QCType: UnwindSafe,\n <Types as NodeType>::SignatureKey: UnwindSafe,\n <Types as NodeType>::Time: UnwindSafe,\n <<Types as NodeType>::BlockPayload as QueryablePayload>::TransactionIndex: UnwindSafe,
",1,["hotshot_query_service::data_source::storage::fs::FileSystemStorage"]],["impl UnwindSafe for Storage",1,["hotshot_query_service::data_source::storage::no_storage::testing::Storage"]],["impl !UnwindSafe for DataSource",1,["hotshot_query_service::data_source::storage::no_storage::testing::DataSource"]],["impl UnwindSafe for NoStorage",1,["hotshot_query_service::data_source::storage::no_storage::NoStorage"]],["impl UnwindSafe for PrunerCfg",1,["hotshot_query_service::data_source::storage::pruning::PrunerCfg"]],["impl UnwindSafe for TmpDb",1,["hotshot_query_service::data_source::storage::sql::testing::TmpDb"]],["impl UnwindSafe for TestMerkleTreeMigration",1,["hotshot_query_service::data_source::storage::sql::testing::TestMerkleTreeMigration"]],["impl UnwindSafe for Config",1,["hotshot_query_service::data_source::storage::sql::Config"]],["impl !UnwindSafe for SqlStorage",1,["hotshot_query_service::data_source::storage::sql::SqlStorage"]],["impl<'a> !UnwindSafe for Transaction<'a>",1,["hotshot_query_service::data_source::storage::sql::Transaction"]],["impl UnwindSafe for LTree",1,["hotshot_query_service::data_source::storage::sql::LTree"]],["impl UnwindSafe for Error",1,["hotshot_query_service::error::Error"]],["impl<Types> !UnwindSafe for AnyProvider<Types>",1,["hotshot_query_service::fetching::provider::any::AnyProvider"]],["impl<Ver> !UnwindSafe for QueryServiceProvider<Ver>",1,["hotshot_query_service::fetching::provider::query_service::QueryServiceProvider"]],["impl<P> !UnwindSafe for TestProvider<P>",1,["hotshot_query_service::fetching::provider::testing::TestProvider"]],["impl UnwindSafe for NoFetching",1,["hotshot_query_service::fetching::provider::NoFetching"]],["impl UnwindSafe for PayloadRequest",1,["hotshot_query_service::fetching::request::PayloadRequest"]],["impl UnwindSafe for VidCommonRequest",1,["hotshot_query_service::fetching::request::VidCommonRequest"]],["impl UnwindSafe for LeafRequest",1,["hotshot_query_service::fetching::request::LeafRequest"]],["impl<T, C> !UnwindSafe for Fetcher<T, C>",1,["hotshot_query_service::fetching::Fetcher"]],["impl<Types, T> UnwindSafe for Snapshot<Types, T>
where\n <T as MerklizedState<Types>>::Commit: UnwindSafe,
",1,["hotshot_query_service::merklized_state::data_source::Snapshot"]],["impl UnwindSafe for Options",1,["hotshot_query_service::merklized_state::Options"]],["impl UnwindSafe for Error",1,["hotshot_query_service::merklized_state::Error"]],["impl !UnwindSafe for MetricsError",1,["hotshot_query_service::metrics::MetricsError"]],["impl !UnwindSafe for PrometheusMetrics",1,["hotshot_query_service::metrics::PrometheusMetrics"]],["impl UnwindSafe for Counter",1,["hotshot_query_service::metrics::Counter"]],["impl UnwindSafe for Gauge",1,["hotshot_query_service::metrics::Gauge"]],["impl UnwindSafe for Histogram",1,["hotshot_query_service::metrics::Histogram"]],["impl UnwindSafe for Label",1,["hotshot_query_service::metrics::Label"]],["impl<Types> UnwindSafe for WindowStart<Types>",1,["hotshot_query_service::node::data_source::WindowStart"]],["impl UnwindSafe for SyncStatus",1,["hotshot_query_service::node::query_data::SyncStatus"]],["impl<T> UnwindSafe for TimeWindowQueryData<T>
where\n T: UnwindSafe,
",1,["hotshot_query_service::node::query_data::TimeWindowQueryData"]],["impl UnwindSafe for Options",1,["hotshot_query_service::node::Options"]],["impl UnwindSafe for Error",1,["hotshot_query_service::node::Error"]],["impl UnwindSafe for RequestSnafu",1,["hotshot_query_service::node::RequestSnafu"]],["impl UnwindSafe for QuerySnafu",1,["hotshot_query_service::node::QuerySnafu"]],["impl<__T0> UnwindSafe for QueryVidSnafu<__T0>
where\n __T0: UnwindSafe,
",1,["hotshot_query_service::node::QueryVidSnafu"]],["impl<__T0, __T1> UnwindSafe for QueryWindowSnafu<__T0, __T1>
where\n __T0: UnwindSafe,\n __T1: UnwindSafe,
",1,["hotshot_query_service::node::QueryWindowSnafu"]],["impl<__T0, __T1> UnwindSafe for CustomSnafu<__T0, __T1>
where\n __T0: UnwindSafe,\n __T1: UnwindSafe,
",1,["hotshot_query_service::node::CustomSnafu"]],["impl UnwindSafe for MempoolQueryData",1,["hotshot_query_service::status::query_data::MempoolQueryData"]],["impl UnwindSafe for Options",1,["hotshot_query_service::status::Options"]],["impl UnwindSafe for Error",1,["hotshot_query_service::status::Error"]],["impl<D> !UnwindSafe for MockNetwork<D>",1,["hotshot_query_service::testing::consensus::MockNetwork"]],["impl UnwindSafe for MockTypes",1,["hotshot_query_service::testing::mocks::MockTypes"]],["impl UnwindSafe for MockNodeImpl",1,["hotshot_query_service::testing::mocks::MockNodeImpl"]],["impl UnwindSafe for QueryError",1,["hotshot_query_service::QueryError"]],["impl UnwindSafe for NotFoundSnafu",1,["hotshot_query_service::NotFoundSnafu"]],["impl UnwindSafe for MissingSnafu",1,["hotshot_query_service::MissingSnafu"]],["impl<__T0> UnwindSafe for Snafu<__T0>
where\n __T0: UnwindSafe,
",1,["hotshot_query_service::Snafu"]],["impl UnwindSafe for Options",1,["hotshot_query_service::Options"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/serde/de/trait.Deserialize.js b/trait.impl/serde/de/trait.Deserialize.js index 134324993..c67e1cdb9 100644 --- a/trait.impl/serde/de/trait.Deserialize.js +++ b/trait.impl/serde/de/trait.Deserialize.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl<'de> Deserialize<'de> for Error"],["impl<'de, Types: NodeType> Deserialize<'de> for LeafQueryData<Types>"],["impl<'de> Deserialize<'de> for Error"],["impl<'de, Types: NodeType> Deserialize<'de> for BlockQueryData<Types>"],["impl<'de> Deserialize<'de> for Error"],["impl<'de> Deserialize<'de> for LTree"],["impl<'de> Deserialize<'de> for QueryError"],["impl<'de, Types: NodeType> Deserialize<'de> for TransactionSummaryQueryData<Types>"],["impl<'de, Types: NodeType> Deserialize<'de> for TransactionQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"],["impl<'de> Deserialize<'de> for Error"],["impl<'de> Deserialize<'de> for MempoolQueryData"],["impl<'de> Deserialize<'de> for Error"],["impl<'de, Types: NodeType> Deserialize<'de> for BlockSummaryQueryData<Types>"],["impl<'de> Deserialize<'de> for SyncStatus"],["impl<'de, Types: NodeType> Deserialize<'de> for VidCommonQueryData<Types>"],["impl<'de> Deserialize<'de> for MockNodeImpl"],["impl<'de, T> Deserialize<'de> for TimeWindowQueryData<T>
where\n T: Deserialize<'de>,
"],["impl<'de, Types: NodeType> Deserialize<'de> for PayloadQueryData<Types>"],["impl<'de> Deserialize<'de> for MockTypes"]] +"hotshot_query_service":[["impl<'de> Deserialize<'de> for MockNodeImpl"],["impl<'de, Types: NodeType> Deserialize<'de> for TransactionQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"],["impl<'de> Deserialize<'de> for Error"],["impl<'de> Deserialize<'de> for Error"],["impl<'de> Deserialize<'de> for Error"],["impl<'de, T> Deserialize<'de> for TimeWindowQueryData<T>
where\n T: Deserialize<'de>,
"],["impl<'de> Deserialize<'de> for MockTypes"],["impl<'de> Deserialize<'de> for Error"],["impl<'de, Types: NodeType> Deserialize<'de> for VidCommonQueryData<Types>"],["impl<'de, Types: NodeType> Deserialize<'de> for LeafQueryData<Types>"],["impl<'de, Types: NodeType> Deserialize<'de> for BlockQueryData<Types>"],["impl<'de> Deserialize<'de> for MempoolQueryData"],["impl<'de, Types: NodeType> Deserialize<'de> for TransactionSummaryQueryData<Types>"],["impl<'de> Deserialize<'de> for SyncStatus"],["impl<'de, Types: NodeType> Deserialize<'de> for BlockSummaryQueryData<Types>"],["impl<'de> Deserialize<'de> for LTree"],["impl<'de> Deserialize<'de> for QueryError"],["impl<'de, Types: NodeType> Deserialize<'de> for PayloadQueryData<Types>"],["impl<'de> Deserialize<'de> for Error"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/serde/ser/trait.Serialize.js b/trait.impl/serde/ser/trait.Serialize.js index 1df6dfcc8..f77bd482d 100644 --- a/trait.impl/serde/ser/trait.Serialize.js +++ b/trait.impl/serde/ser/trait.Serialize.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl Serialize for MempoolQueryData"],["impl<Types: NodeType> Serialize for TransactionSummaryQueryData<Types>"],["impl<Types: NodeType> Serialize for TransactionQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"],["impl Serialize for MockNodeImpl"],["impl Serialize for Error"],["impl Serialize for Error"],["impl Serialize for MockTypes"],["impl Serialize for LTree"],["impl<Types: NodeType> Serialize for BlockSummaryQueryData<Types>"],["impl<Types: NodeType> Serialize for VidCommonQueryData<Types>"],["impl<T> Serialize for TimeWindowQueryData<T>
where\n T: Serialize,
"],["impl Serialize for Error"],["impl Serialize for SyncStatus"],["impl Serialize for QueryError"],["impl<Types: NodeType> Serialize for LeafQueryData<Types>"],["impl<Types: NodeType> Serialize for BlockQueryData<Types>"],["impl Serialize for Error"],["impl Serialize for Error"],["impl<Types: NodeType> Serialize for PayloadQueryData<Types>"]] +"hotshot_query_service":[["impl<Types: NodeType> Serialize for PayloadQueryData<Types>"],["impl Serialize for Error"],["impl Serialize for LTree"],["impl Serialize for MockNodeImpl"],["impl<Types: NodeType> Serialize for LeafQueryData<Types>"],["impl<Types: NodeType> Serialize for BlockQueryData<Types>"],["impl<Types: NodeType> Serialize for BlockSummaryQueryData<Types>"],["impl Serialize for MockTypes"],["impl Serialize for MempoolQueryData"],["impl Serialize for Error"],["impl Serialize for Error"],["impl<Types: NodeType> Serialize for TransactionQueryData<Types>
where\n Payload<Types>: QueryablePayload,
"],["impl Serialize for Error"],["impl Serialize for Error"],["impl Serialize for SyncStatus"],["impl<Types: NodeType> Serialize for TransactionSummaryQueryData<Types>"],["impl<T> Serialize for TimeWindowQueryData<T>
where\n T: Serialize,
"],["impl Serialize for QueryError"],["impl<Types: NodeType> Serialize for VidCommonQueryData<Types>"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/snafu/trait.ErrorCompat.js b/trait.impl/snafu/trait.ErrorCompat.js index 41c8a4b94..e1329b8a5 100644 --- a/trait.impl/snafu/trait.ErrorCompat.js +++ b/trait.impl/snafu/trait.ErrorCompat.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl ErrorCompat for MetricsError"],["impl ErrorCompat for Error"],["impl ErrorCompat for Error"],["impl ErrorCompat for Error"],["impl ErrorCompat for QueryError"],["impl ErrorCompat for Error"],["impl ErrorCompat for Error"],["impl<Types: NodeType> ErrorCompat for InconsistentLeafError<Types>"]] +"hotshot_query_service":[["impl ErrorCompat for QueryError"],["impl<Types: NodeType> ErrorCompat for InconsistentLeafError<Types>"],["impl ErrorCompat for Error"],["impl ErrorCompat for Error"],["impl ErrorCompat for Error"],["impl ErrorCompat for Error"],["impl ErrorCompat for MetricsError"],["impl ErrorCompat for Error"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/snafu/trait.IntoError.js b/trait.impl/snafu/trait.IntoError.js index bd0ce8c3c..f677eef49 100644 --- a/trait.impl/snafu/trait.IntoError.js +++ b/trait.impl/snafu/trait.IntoError.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"hotshot_query_service":[["impl IntoError<QueryError> for NotFoundSnafu
where\n QueryError: Error + ErrorCompat,
"],["impl<__T0> IntoError<Error> for FetchBlockSnafu<__T0>
where\n Error: Error + ErrorCompat,\n __T0: Into<String>,
"],["impl IntoError<QueryError> for MissingSnafu
where\n QueryError: Error + ErrorCompat,
"],["impl IntoError<Error> for QuerySnafu
where\n Error: Error + ErrorCompat,
"],["impl<__T0> IntoError<Error> for FetchTransactionSnafu<__T0>
where\n Error: Error + ErrorCompat,\n __T0: Into<String>,
"],["impl<__T0> IntoError<Error> for FetchLeafSnafu<__T0>
where\n Error: Error + ErrorCompat,\n __T0: Into<String>,
"],["impl IntoError<Error> for RequestSnafu
where\n Error: Error + ErrorCompat,
"],["impl<__T0, __T1> IntoError<Error> for CustomSnafu<__T0, __T1>
where\n Error: Error + ErrorCompat,\n __T0: Into<String>,\n __T1: Into<StatusCode>,
"],["impl<__T0> IntoError<QueryError> for Snafu<__T0>
where\n QueryError: Error + ErrorCompat,\n __T0: Into<String>,
"],["impl IntoError<Error> for RequestSnafu
where\n Error: Error + ErrorCompat,
"],["impl<__T0, __T1> IntoError<Error> for QueryWindowSnafu<__T0, __T1>
where\n Error: Error + ErrorCompat,\n __T0: Into<String>,\n __T1: Into<u64>,
"],["impl<__T0> IntoError<Error> for QueryVidSnafu<__T0>
where\n Error: Error + ErrorCompat,\n __T0: Into<String>,
"],["impl<__T0, __T1> IntoError<Error> for CustomSnafu<__T0, __T1>
where\n Error: Error + ErrorCompat,\n __T0: Into<String>,\n __T1: Into<StatusCode>,
"],["impl<__T0, __T1> IntoError<Error> for InvalidTransactionIndexSnafu<__T0, __T1>
where\n Error: Error + ErrorCompat,\n __T0: Into<u64>,\n __T1: Into<u64>,
"]] +"hotshot_query_service":[["impl IntoError<Error> for RequestSnafu
where\n Error: Error + ErrorCompat,
"],["impl IntoError<QueryError> for NotFoundSnafu
where\n QueryError: Error + ErrorCompat,
"],["impl<__T0, __T1> IntoError<Error> for CustomSnafu<__T0, __T1>
where\n Error: Error + ErrorCompat,\n __T0: Into<String>,\n __T1: Into<StatusCode>,
"],["impl<__T0, __T1> IntoError<Error> for InvalidTransactionIndexSnafu<__T0, __T1>
where\n Error: Error + ErrorCompat,\n __T0: Into<u64>,\n __T1: Into<u64>,
"],["impl<__T0> IntoError<Error> for FetchTransactionSnafu<__T0>
where\n Error: Error + ErrorCompat,\n __T0: Into<String>,
"],["impl IntoError<Error> for RequestSnafu
where\n Error: Error + ErrorCompat,
"],["impl<__T0> IntoError<Error> for FetchBlockSnafu<__T0>
where\n Error: Error + ErrorCompat,\n __T0: Into<String>,
"],["impl<__T0, __T1> IntoError<Error> for CustomSnafu<__T0, __T1>
where\n Error: Error + ErrorCompat,\n __T0: Into<String>,\n __T1: Into<StatusCode>,
"],["impl<__T0> IntoError<Error> for QueryVidSnafu<__T0>
where\n Error: Error + ErrorCompat,\n __T0: Into<String>,
"],["impl<__T0, __T1> IntoError<Error> for QueryWindowSnafu<__T0, __T1>
where\n Error: Error + ErrorCompat,\n __T0: Into<String>,\n __T1: Into<u64>,
"],["impl IntoError<QueryError> for MissingSnafu
where\n QueryError: Error + ErrorCompat,
"],["impl<__T0> IntoError<QueryError> for Snafu<__T0>
where\n QueryError: Error + ErrorCompat,\n __T0: Into<String>,
"],["impl<__T0> IntoError<Error> for FetchLeafSnafu<__T0>
where\n Error: Error + ErrorCompat,\n __T0: Into<String>,
"],["impl IntoError<Error> for QuerySnafu
where\n Error: Error + ErrorCompat,
"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/type.impl/core/result/enum.Result.js b/type.impl/core/result/enum.Result.js index e7ec9a343..2c6f2255b 100644 --- a/type.impl/core/result/enum.Result.js +++ b/type.impl/core/result/enum.Result.js @@ -1,3 +1,3 @@ (function() {var type_impls = { -"hotshot_query_service":[["
source§

impl<T, E> Result<T, E>

1.0.0 (const: 1.48.0) · source

pub const fn is_ok(&self) -> bool

Returns true if the result is Ok.

\n
Examples
\n
let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_ok(), true);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_ok(), false);
\n
1.70.0 · source

pub fn is_ok_and(self, f: impl FnOnce(T) -> bool) -> bool

Returns true if the result is Ok and the value inside of it matches a predicate.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.is_ok_and(|x| x > 1), true);\n\nlet x: Result<u32, &str> = Ok(0);\nassert_eq!(x.is_ok_and(|x| x > 1), false);\n\nlet x: Result<u32, &str> = Err(\"hey\");\nassert_eq!(x.is_ok_and(|x| x > 1), false);
\n
1.0.0 (const: 1.48.0) · source

pub const fn is_err(&self) -> bool

Returns true if the result is Err.

\n
Examples
\n
let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_err(), false);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_err(), true);
\n
1.70.0 · source

pub fn is_err_and(self, f: impl FnOnce(E) -> bool) -> bool

Returns true if the result is Err and the value inside of it matches a predicate.

\n
Examples
\n
use std::io::{Error, ErrorKind};\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::NotFound, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), true);\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::PermissionDenied, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);\n\nlet x: Result<u32, Error> = Ok(123);\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);
\n
1.0.0 · source

pub fn ok(self) -> Option<T>

Converts from Result<T, E> to Option<T>.

\n

Converts self into an Option<T>, consuming self,\nand discarding the error, if any.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.ok(), Some(2));\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.ok(), None);
\n
1.0.0 · source

pub fn err(self) -> Option<E>

Converts from Result<T, E> to Option<E>.

\n

Converts self into an Option<E>, consuming self,\nand discarding the success value, if any.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.err(), None);\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.err(), Some(\"Nothing here\"));
\n
1.0.0 (const: 1.48.0) · source

pub const fn as_ref(&self) -> Result<&T, &E>

Converts from &Result<T, E> to Result<&T, &E>.

\n

Produces a new Result, containing a reference\ninto the original, leaving the original in place.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.as_ref(), Ok(&2));\n\nlet x: Result<u32, &str> = Err(\"Error\");\nassert_eq!(x.as_ref(), Err(&\"Error\"));
\n
1.0.0 (const: unstable) · source

pub fn as_mut(&mut self) -> Result<&mut T, &mut E>

Converts from &mut Result<T, E> to Result<&mut T, &mut E>.

\n
Examples
\n
fn mutate(r: &mut Result<i32, i32>) {\n    match r.as_mut() {\n        Ok(v) => *v = 42,\n        Err(e) => *e = 0,\n    }\n}\n\nlet mut x: Result<i32, i32> = Ok(2);\nmutate(&mut x);\nassert_eq!(x.unwrap(), 42);\n\nlet mut x: Result<i32, i32> = Err(13);\nmutate(&mut x);\nassert_eq!(x.unwrap_err(), 0);
\n
1.0.0 · source

pub fn map<U, F>(self, op: F) -> Result<U, E>
where\n F: FnOnce(T) -> U,

Maps a Result<T, E> to Result<U, E> by applying a function to a\ncontained Ok value, leaving an Err value untouched.

\n

This function can be used to compose the results of two functions.

\n
Examples
\n

Print the numbers on each line of a string multiplied by two.

\n\n
let line = \"1\\n2\\n3\\n4\\n\";\n\nfor num in line.lines() {\n    match num.parse::<i32>().map(|i| i * 2) {\n        Ok(n) => println!(\"{n}\"),\n        Err(..) => {}\n    }\n}
\n
1.41.0 · source

pub fn map_or<U, F>(self, default: U, f: F) -> U
where\n F: FnOnce(T) -> U,

Returns the provided default (if Err), or\napplies a function to the contained value (if Ok).

\n

Arguments passed to map_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use map_or_else,\nwhich is lazily evaluated.

\n
Examples
\n
let x: Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or(42, |v| v.len()), 3);\n\nlet x: Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or(42, |v| v.len()), 42);
\n
1.41.0 · source

pub fn map_or_else<U, D, F>(self, default: D, f: F) -> U
where\n D: FnOnce(E) -> U,\n F: FnOnce(T) -> U,

Maps a Result<T, E> to U by applying fallback function default to\na contained Err value, or function f to a contained Ok value.

\n

This function can be used to unpack a successful result\nwhile handling an error.

\n
Examples
\n
let k = 21;\n\nlet x : Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 3);\n\nlet x : Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 42);
\n
1.0.0 · source

pub fn map_err<F, O>(self, op: O) -> Result<T, F>
where\n O: FnOnce(E) -> F,

Maps a Result<T, E> to Result<T, F> by applying a function to a\ncontained Err value, leaving an Ok value untouched.

\n

This function can be used to pass through a successful result while handling\nan error.

\n
Examples
\n
fn stringify(x: u32) -> String { format!(\"error code: {x}\") }\n\nlet x: Result<u32, u32> = Ok(2);\nassert_eq!(x.map_err(stringify), Ok(2));\n\nlet x: Result<u32, u32> = Err(13);\nassert_eq!(x.map_err(stringify), Err(\"error code: 13\".to_string()));
\n
1.76.0 · source

pub fn inspect<F>(self, f: F) -> Result<T, E>
where\n F: FnOnce(&T),

Calls the provided closure with a reference to the contained value (if Ok).

\n
Examples
\n
let x: u8 = \"4\"\n    .parse::<u8>()\n    .inspect(|x| println!(\"original: {x}\"))\n    .map(|x| x.pow(3))\n    .expect(\"failed to parse number\");
\n
1.76.0 · source

pub fn inspect_err<F>(self, f: F) -> Result<T, E>
where\n F: FnOnce(&E),

Calls the provided closure with a reference to the contained error (if Err).

\n
Examples
\n
use std::{fs, io};\n\nfn read() -> io::Result<String> {\n    fs::read_to_string(\"address.txt\")\n        .inspect_err(|e| eprintln!(\"failed to read file: {e}\"))\n}
\n
1.47.0 · source

pub fn as_deref(&self) -> Result<&<T as Deref>::Target, &E>
where\n T: Deref,

Converts from Result<T, E> (or &Result<T, E>) to Result<&<T as Deref>::Target, &E>.

\n

Coerces the Ok variant of the original Result via Deref\nand returns the new Result.

\n
Examples
\n
let x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&str, &u32> = Ok(\"hello\");\nassert_eq!(x.as_deref(), y);\n\nlet x: Result<String, u32> = Err(42);\nlet y: Result<&str, &u32> = Err(&42);\nassert_eq!(x.as_deref(), y);
\n
1.47.0 · source

pub fn as_deref_mut(&mut self) -> Result<&mut <T as Deref>::Target, &mut E>
where\n T: DerefMut,

Converts from Result<T, E> (or &mut Result<T, E>) to Result<&mut <T as DerefMut>::Target, &mut E>.

\n

Coerces the Ok variant of the original Result via DerefMut\nand returns the new Result.

\n
Examples
\n
let mut s = \"HELLO\".to_string();\nlet mut x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&mut str, &mut u32> = Ok(&mut s);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);\n\nlet mut i = 42;\nlet mut x: Result<String, u32> = Err(42);\nlet y: Result<&mut str, &mut u32> = Err(&mut i);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);
\n
1.0.0 · source

pub fn iter(&self) -> Iter<'_, T>

Returns an iterator over the possibly contained value.

\n

The iterator yields one value if the result is Result::Ok, otherwise none.

\n
Examples
\n
let x: Result<u32, &str> = Ok(7);\nassert_eq!(x.iter().next(), Some(&7));\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter().next(), None);
\n
1.0.0 · source

pub fn iter_mut(&mut self) -> IterMut<'_, T>

Returns a mutable iterator over the possibly contained value.

\n

The iterator yields one value if the result is Result::Ok, otherwise none.

\n
Examples
\n
let mut x: Result<u32, &str> = Ok(7);\nmatch x.iter_mut().next() {\n    Some(v) => *v = 40,\n    None => {},\n}\nassert_eq!(x, Ok(40));\n\nlet mut x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter_mut().next(), None);
\n
1.4.0 · source

pub fn expect(self, msg: &str) -> T
where\n E: Debug,

Returns the contained Ok value, consuming the self value.

\n

Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

\n
Panics
\n

Panics if the value is an Err, with a panic message including the\npassed message, and the content of the Err.

\n
Examples
\n
let x: Result<u32, &str> = Err(\"emergency failure\");\nx.expect(\"Testing expect\"); // panics with `Testing expect: emergency failure`
\n
Recommended Message Style
\n

We recommend that expect messages are used to describe the reason you\nexpect the Result should be Ok.

\n\n
let path = std::env::var(\"IMPORTANT_PATH\")\n    .expect(\"env variable `IMPORTANT_PATH` should be set by `wrapper_script.sh`\");
\n

Hint: If you’re having trouble remembering how to phrase expect\nerror messages remember to focus on the word “should” as in “env\nvariable should be set by blah” or “the given binary should be available\nand executable by the current user”.

\n

For more detail on expect message styles and the reasoning behind our recommendation please\nrefer to the section on “Common Message\nStyles” in the\nstd::error module docs.

\n
1.0.0 · source

pub fn unwrap(self) -> T
where\n E: Debug,

Returns the contained Ok value, consuming the self value.

\n

Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

\n
Panics
\n

Panics if the value is an Err, with a panic message provided by the\nErr’s value.

\n
Examples
\n

Basic usage:

\n\n
let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.unwrap(), 2);
\n\n
let x: Result<u32, &str> = Err(\"emergency failure\");\nx.unwrap(); // panics with `emergency failure`
\n
1.16.0 · source

pub fn unwrap_or_default(self) -> T
where\n T: Default,

Returns the contained Ok value or a default

\n

Consumes the self argument then, if Ok, returns the contained\nvalue, otherwise if Err, returns the default value for that\ntype.

\n
Examples
\n

Converts a string to an integer, turning poorly-formed strings\ninto 0 (the default value for integers). parse converts\na string to any other type that implements FromStr, returning an\nErr on error.

\n\n
let good_year_from_input = \"1909\";\nlet bad_year_from_input = \"190blarg\";\nlet good_year = good_year_from_input.parse().unwrap_or_default();\nlet bad_year = bad_year_from_input.parse().unwrap_or_default();\n\nassert_eq!(1909, good_year);\nassert_eq!(0, bad_year);
\n
1.17.0 · source

pub fn expect_err(self, msg: &str) -> E
where\n T: Debug,

Returns the contained Err value, consuming the self value.

\n
Panics
\n

Panics if the value is an Ok, with a panic message including the\npassed message, and the content of the Ok.

\n
Examples
\n
let x: Result<u32, &str> = Ok(10);\nx.expect_err(\"Testing expect_err\"); // panics with `Testing expect_err: 10`
\n
1.0.0 · source

pub fn unwrap_err(self) -> E
where\n T: Debug,

Returns the contained Err value, consuming the self value.

\n
Panics
\n

Panics if the value is an Ok, with a custom panic message provided\nby the Ok’s value.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nx.unwrap_err(); // panics with `2`
\n\n
let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(x.unwrap_err(), \"emergency failure\");
\n
source

pub fn into_ok(self) -> T
where\n E: Into<!>,

🔬This is a nightly-only experimental API. (unwrap_infallible)

Returns the contained Ok value, but never panics.

\n

Unlike unwrap, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap as a maintainability safeguard that will fail\nto compile if the error type of the Result is later changed\nto an error that can actually occur.

\n
Examples
\n
\nfn only_good_news() -> Result<String, !> {\n    Ok(\"this is fine\".into())\n}\n\nlet s: String = only_good_news().into_ok();\nprintln!(\"{s}\");
\n
source

pub fn into_err(self) -> E
where\n T: Into<!>,

🔬This is a nightly-only experimental API. (unwrap_infallible)

Returns the contained Err value, but never panics.

\n

Unlike unwrap_err, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap_err as a maintainability safeguard that will fail\nto compile if the ok type of the Result is later changed\nto a type that can actually occur.

\n
Examples
\n
\nfn only_bad_news() -> Result<!, String> {\n    Err(\"Oops, it failed\".into())\n}\n\nlet error: String = only_bad_news().into_err();\nprintln!(\"{error}\");
\n
1.0.0 · source

pub fn and<U>(self, res: Result<U, E>) -> Result<U, E>

Returns res if the result is Ok, otherwise returns the Err value of self.

\n

Arguments passed to and are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use and_then, which is\nlazily evaluated.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<&str, &str> = Ok(\"foo\");\nassert_eq!(x.and(y), Err(\"early error\"));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"not a 2\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Ok(\"different result type\");\nassert_eq!(x.and(y), Ok(\"different result type\"));
\n
1.0.0 · source

pub fn and_then<U, F>(self, op: F) -> Result<U, E>
where\n F: FnOnce(T) -> Result<U, E>,

Calls op if the result is Ok, otherwise returns the Err value of self.

\n

This function can be used for control flow based on Result values.

\n
Examples
\n
fn sq_then_to_string(x: u32) -> Result<String, &'static str> {\n    x.checked_mul(x).map(|sq| sq.to_string()).ok_or(\"overflowed\")\n}\n\nassert_eq!(Ok(2).and_then(sq_then_to_string), Ok(4.to_string()));\nassert_eq!(Ok(1_000_000).and_then(sq_then_to_string), Err(\"overflowed\"));\nassert_eq!(Err(\"not a number\").and_then(sq_then_to_string), Err(\"not a number\"));
\n

Often used to chain fallible operations that may return Err.

\n\n
use std::{io::ErrorKind, path::Path};\n\n// Note: on Windows \"/\" maps to \"C:\\\"\nlet root_modified_time = Path::new(\"/\").metadata().and_then(|md| md.modified());\nassert!(root_modified_time.is_ok());\n\nlet should_fail = Path::new(\"/bad/path\").metadata().and_then(|md| md.modified());\nassert!(should_fail.is_err());\nassert_eq!(should_fail.unwrap_err().kind(), ErrorKind::NotFound);
\n
1.0.0 · source

pub fn or<F>(self, res: Result<T, F>) -> Result<T, F>

Returns res if the result is Err, otherwise returns the Ok value of self.

\n

Arguments passed to or are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use or_else, which is\nlazily evaluated.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<u32, &str> = Ok(2);\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Ok(100);\nassert_eq!(x.or(y), Ok(2));
\n
1.0.0 · source

pub fn or_else<F, O>(self, op: O) -> Result<T, F>
where\n O: FnOnce(E) -> Result<T, F>,

Calls op if the result is Err, otherwise returns the Ok value of self.

\n

This function can be used for control flow based on result values.

\n
Examples
\n
fn sq(x: u32) -> Result<u32, u32> { Ok(x * x) }\nfn err(x: u32) -> Result<u32, u32> { Err(x) }\n\nassert_eq!(Ok(2).or_else(sq).or_else(sq), Ok(2));\nassert_eq!(Ok(2).or_else(err).or_else(sq), Ok(2));\nassert_eq!(Err(3).or_else(sq).or_else(err), Ok(9));\nassert_eq!(Err(3).or_else(err).or_else(err), Err(3));
\n
1.0.0 · source

pub fn unwrap_or(self, default: T) -> T

Returns the contained Ok value or a provided default.

\n

Arguments passed to unwrap_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use unwrap_or_else,\nwhich is lazily evaluated.

\n
Examples
\n
let default = 2;\nlet x: Result<u32, &str> = Ok(9);\nassert_eq!(x.unwrap_or(default), 9);\n\nlet x: Result<u32, &str> = Err(\"error\");\nassert_eq!(x.unwrap_or(default), default);
\n
1.0.0 · source

pub fn unwrap_or_else<F>(self, op: F) -> T
where\n F: FnOnce(E) -> T,

Returns the contained Ok value or computes it from a closure.

\n
Examples
\n
fn count(x: &str) -> usize { x.len() }\n\nassert_eq!(Ok(2).unwrap_or_else(count), 2);\nassert_eq!(Err(\"foo\").unwrap_or_else(count), 3);
\n
1.58.0 · source

pub unsafe fn unwrap_unchecked(self) -> T

Returns the contained Ok value, consuming the self value,\nwithout checking that the value is not an Err.

\n
Safety
\n

Calling this method on an Err is undefined behavior.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nassert_eq!(unsafe { x.unwrap_unchecked() }, 2);
\n\n
let x: Result<u32, &str> = Err(\"emergency failure\");\nunsafe { x.unwrap_unchecked(); } // Undefined behavior!
\n
1.58.0 · source

pub unsafe fn unwrap_err_unchecked(self) -> E

Returns the contained Err value, consuming the self value,\nwithout checking that the value is not an Ok.

\n
Safety
\n

Calling this method on an Ok is undefined behavior.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nunsafe { x.unwrap_err_unchecked() }; // Undefined behavior!
\n\n
let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(unsafe { x.unwrap_err_unchecked() }, \"emergency failure\");
\n
",0,"hotshot_query_service::QueryResult"],["
source§

impl<T, E> Result<&T, E>

1.59.0 · source

pub fn copied(self) -> Result<T, E>
where\n T: Copy,

Maps a Result<&T, E> to a Result<T, E> by copying the contents of the\nOk part.

\n
Examples
\n
let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
\n
1.59.0 · source

pub fn cloned(self) -> Result<T, E>
where\n T: Clone,

Maps a Result<&T, E> to a Result<T, E> by cloning the contents of the\nOk part.

\n
Examples
\n
let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
\n
",0,"hotshot_query_service::QueryResult"],["
source§

impl<T, E> Result<&mut T, E>

1.59.0 · source

pub fn copied(self) -> Result<T, E>
where\n T: Copy,

Maps a Result<&mut T, E> to a Result<T, E> by copying the contents of the\nOk part.

\n
Examples
\n
let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
\n
1.59.0 · source

pub fn cloned(self) -> Result<T, E>
where\n T: Clone,

Maps a Result<&mut T, E> to a Result<T, E> by cloning the contents of the\nOk part.

\n
Examples
\n
let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
\n
",0,"hotshot_query_service::QueryResult"],["
source§

impl<T, E> Result<Option<T>, E>

1.33.0 (const: unstable) · source

pub fn transpose(self) -> Option<Result<T, E>>

Transposes a Result of an Option into an Option of a Result.

\n

Ok(None) will be mapped to None.\nOk(Some(_)) and Err(_) will be mapped to Some(Ok(_)) and Some(Err(_)).

\n
Examples
\n
#[derive(Debug, Eq, PartialEq)]\nstruct SomeErr;\n\nlet x: Result<Option<i32>, SomeErr> = Ok(Some(5));\nlet y: Option<Result<i32, SomeErr>> = Some(Ok(5));\nassert_eq!(x.transpose(), y);
\n
",0,"hotshot_query_service::QueryResult"],["
source§

impl<T, E> Result<Result<T, E>, E>

source

pub fn flatten(self) -> Result<T, E>

🔬This is a nightly-only experimental API. (result_flattening)

Converts from Result<Result<T, E>, E> to Result<T, E>

\n
Examples
\n
#![feature(result_flattening)]\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Ok(\"hello\"));\nassert_eq!(Ok(\"hello\"), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Err(6));\nassert_eq!(Err(6), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Err(6);\nassert_eq!(Err(6), x.flatten());
\n

Flattening only removes one level of nesting at a time:

\n\n
#![feature(result_flattening)]\nlet x: Result<Result<Result<&'static str, u32>, u32>, u32> = Ok(Ok(Ok(\"hello\")));\nassert_eq!(Ok(Ok(\"hello\")), x.flatten());\nassert_eq!(Ok(\"hello\"), x.flatten().flatten());
\n
",0,"hotshot_query_service::QueryResult"],["
1.61.0 · source§

impl<T, E> Termination for Result<T, E>
where\n T: Termination,\n E: Debug,

source§

fn report(self) -> ExitCode

Is called to get the representation of the value as status code.\nThis status code is returned to the operating system.
","Termination","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> PartialOrd for Result<T, E>
where\n T: PartialOrd,\n E: PartialOrd,

source§

fn partial_cmp(&self, other: &Result<T, E>) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
","PartialOrd","hotshot_query_service::QueryResult"],["
1.16.0 · source§

impl<T, U, E> Product<Result<U, E>> for Result<T, E>
where\n T: Product<U>,

source§

fn product<I>(iter: I) -> Result<T, E>
where\n I: Iterator<Item = Result<U, E>>,

Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the product of all elements is returned.

\n
Examples
\n

This multiplies each number in a vector of strings,\nif a string could not be parsed the operation returns Err:

\n\n
let nums = vec![\"5\", \"10\", \"1\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert_eq!(total, Ok(100));\nlet nums = vec![\"5\", \"10\", \"one\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert!(total.is_err());
\n
","Product>","hotshot_query_service::QueryResult"],["
source§

impl<T, E, F> FromResidual<Result<Infallible, E>> for Result<T, F>
where\n F: From<E>,

source§

fn from_residual(residual: Result<Infallible, E>) -> Result<T, F>

🔬This is a nightly-only experimental API. (try_trait_v2)
Constructs the type from a compatible Residual type. Read more
","FromResidual>","hotshot_query_service::QueryResult"],["
source§

impl<T, E, F> FromResidual<Yeet<E>> for Result<T, F>
where\n F: From<E>,

source§

fn from_residual(_: Yeet<E>) -> Result<T, F>

🔬This is a nightly-only experimental API. (try_trait_v2)
Constructs the type from a compatible Residual type. Read more
","FromResidual>","hotshot_query_service::QueryResult"],["
source§

impl<T, E> Try for Result<T, E>

§

type Output = T

🔬This is a nightly-only experimental API. (try_trait_v2)
The type of the value produced by ? when not short-circuiting.
§

type Residual = Result<Infallible, E>

🔬This is a nightly-only experimental API. (try_trait_v2)
The type of the value passed to FromResidual::from_residual\nas part of ? when short-circuiting. Read more
source§

fn from_output(output: <Result<T, E> as Try>::Output) -> Result<T, E>

🔬This is a nightly-only experimental API. (try_trait_v2)
Constructs the type from its Output type. Read more
source§

fn branch(\n self\n) -> ControlFlow<<Result<T, E> as Try>::Residual, <Result<T, E> as Try>::Output>

🔬This is a nightly-only experimental API. (try_trait_v2)
Used in ? to decide whether the operator should produce a value\n(because this returned ControlFlow::Continue)\nor propagate a value back to the caller\n(because this returned ControlFlow::Break). Read more
","Try","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> Clone for Result<T, E>
where\n T: Clone,\n E: Clone,

source§

fn clone(&self) -> Result<T, E>

Returns a copy of the value. Read more
source§

fn clone_from(&mut self, source: &Result<T, E>)

Performs copy-assignment from source. Read more
","Clone","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<A, E, V> FromIterator<Result<A, E>> for Result<V, E>
where\n V: FromIterator<A>,

source§

fn from_iter<I>(iter: I) -> Result<V, E>
where\n I: IntoIterator<Item = Result<A, E>>,

Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur, a\ncontainer with the values of each Result is returned.

\n

Here is an example which increments every integer in a vector,\nchecking for overflow:

\n\n
let v = vec![1, 2];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_add(1).ok_or(\"Overflow!\")\n).collect();\nassert_eq!(res, Ok(vec![2, 3]));
\n

Here is another example that tries to subtract one from another list\nof integers, this time checking for underflow:

\n\n
let v = vec![1, 2, 0];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_sub(1).ok_or(\"Underflow!\")\n).collect();\nassert_eq!(res, Err(\"Underflow!\"));
\n

Here is a variation on the previous example, showing that no\nfurther elements are taken from iter after the first Err.

\n\n
let v = vec![3, 2, 1, 10];\nlet mut shared = 0;\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32| {\n    shared += x;\n    x.checked_sub(2).ok_or(\"Underflow!\")\n}).collect();\nassert_eq!(res, Err(\"Underflow!\"));\nassert_eq!(shared, 6);
\n

Since the third element caused an underflow, no further elements were taken,\nso the final value of shared is 6 (= 3 + 2 + 1), not 16.

\n
","FromIterator>","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> StructuralEq for Result<T, E>

","StructuralEq","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> Eq for Result<T, E>
where\n T: Eq,\n E: Eq,

","Eq","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> Hash for Result<T, E>
where\n T: Hash,\n E: Hash,

source§

fn hash<__H>(&self, state: &mut __H)
where\n __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where\n H: Hasher,\n Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
","Hash","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> Ord for Result<T, E>
where\n T: Ord,\n E: Ord,

source§

fn cmp(&self, other: &Result<T, E>) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where\n Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Self
where\n Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Self
where\n Self: Sized + PartialOrd,

Restrict a value to a certain interval. Read more
","Ord","hotshot_query_service::QueryResult"],["
source§

impl<T, E> Residual<T> for Result<Infallible, E>

§

type TryType = Result<T, E>

🔬This is a nightly-only experimental API. (try_trait_v2_residual)
The “return” type of this meta-function.
","Residual","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> PartialEq for Result<T, E>
where\n T: PartialEq,\n E: PartialEq,

source§

fn eq(&self, other: &Result<T, E>) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> IntoIterator for Result<T, E>

source§

fn into_iter(self) -> IntoIter<T>

Returns a consuming iterator over the possibly contained value.

\n

The iterator yields one value if the result is Result::Ok, otherwise none.

\n
Examples
\n
let x: Result<u32, &str> = Ok(5);\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, [5]);\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, []);
\n
§

type Item = T

The type of the elements being iterated over.
§

type IntoIter = IntoIter<T>

Which kind of iterator are we turning this into?
","IntoIterator","hotshot_query_service::QueryResult"],["
1.16.0 · source§

impl<T, U, E> Sum<Result<U, E>> for Result<T, E>
where\n T: Sum<U>,

source§

fn sum<I>(iter: I) -> Result<T, E>
where\n I: Iterator<Item = Result<U, E>>,

Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the sum of all elements is returned.

\n
Examples
\n

This sums up every integer in a vector, rejecting the sum if a negative\nelement is encountered:

\n\n
let f = |&x: &i32| if x < 0 { Err(\"Negative element found\") } else { Ok(x) };\nlet v = vec![1, 2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Ok(3));\nlet v = vec![1, -2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Err(\"Negative element found\"));
\n
","Sum>","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> StructuralPartialEq for Result<T, E>

","StructuralPartialEq","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> Debug for Result<T, E>
where\n T: Debug,\n E: Debug,

source§

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

Formats the value using the given formatter. Read more
","Debug","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> Copy for Result<T, E>
where\n T: Copy,\n E: Copy,

","Copy","hotshot_query_service::QueryResult"],["
§

impl<T, U, E> Product<Result<U, E>> for Result<T, E>
where\n T: Product<U>,

§

fn product<'a, S>(stream: S) -> Pin<Box<dyn Future<Output = Result<T, E>> + 'a>>
where\n S: Stream<Item = Result<U, E>> + 'a,

Takes each element in the Stream: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur,\nthe product of all elements is returned.

\n
Examples
\n

This multiplies every integer in a vector, rejecting the product if a negative element is\nencountered:

\n\n
use async_std::prelude::*;\nuse async_std::stream;\n\nlet v = stream::from_iter(vec![1, 2, 4]);\nlet res: Result<i32, &'static str> = v.map(|x|\n    if x < 0 {\n        Err(\"Negative element found\")\n    } else {\n        Ok(x)\n    }).product().await;\nassert_eq!(res, Ok(8));
\n
","Product>","hotshot_query_service::QueryResult"],["
§

impl<T, U, E> Sum<Result<U, E>> for Result<T, E>
where\n T: Sum<U>,

§

fn sum<'a, S>(stream: S) -> Pin<Box<dyn Future<Output = Result<T, E>> + 'a>>
where\n S: Stream<Item = Result<U, E>> + 'a,

Takes each element in the Stream: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur,\nthe sum of all elements is returned.

\n
Examples
\n

This sums up every integer in a vector, rejecting the sum if a negative\nelement is encountered:

\n\n
use async_std::prelude::*;\nuse async_std::stream;\n\nlet v = stream::from_iter(vec![1, 2]);\nlet res: Result<i32, &'static str> = v.map(|x|\n    if x < 0 {\n        Err(\"Negative element found\")\n    } else {\n        Ok(x)\n    }).sum().await;\nassert_eq!(res, Ok(3));
\n
","Sum>","hotshot_query_service::QueryResult"],["
§

impl<T, E, V> FromStream<Result<T, E>> for Result<V, E>
where\n T: Send,\n E: Send,\n V: FromStream<T>,

§

fn from_stream<'a, S>(\n stream: S\n) -> Pin<Box<dyn Future<Output = Result<V, E>> + Send + 'a>>
where\n S: IntoStream<Item = Result<T, E>> + 'a,\n <S as IntoStream>::IntoStream: Send,

Takes each element in the stream: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, a container with the values of each Result is returned.

\n
Examples
\n
use async_std::prelude::*;\nuse async_std::stream;\n\nlet v = stream::from_iter(vec![1, 2]);\nlet res: Result<Vec<u32>, &'static str> = v.map(|x: u32|\n    x.checked_add(1).ok_or(\"Overflow!\")\n).collect().await;\nassert_eq!(res, Ok(vec![2, 3]));
\n
","FromStream>","hotshot_query_service::QueryResult"],["
source§

impl<T, E> Serialize for Result<T, E>
where\n T: Serialize,\n E: Serialize,

source§

fn serialize<S>(\n &self,\n serializer: S\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
where\n S: Serializer,

Serialize this value into the given Serde serializer. Read more
","Serialize","hotshot_query_service::QueryResult"],["
source§

impl<'de, T, E> Deserialize<'de> for Result<T, E>
where\n T: Deserialize<'de>,\n E: Deserialize<'de>,

source§

fn deserialize<D>(\n deserializer: D\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
where\n D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
","Deserialize<'de>","hotshot_query_service::QueryResult"],["
§

impl<T, E> ResultExt<T, E> for Result<T, E>

§

fn context<C, E2>(self, context: C) -> Result<T, E2>
where\n C: IntoError<E2, Source = E>,\n E2: Error + ErrorCompat,

Extend a Result’s error with additional context-sensitive information. Read more
§

fn with_context<F, C, E2>(self, context: F) -> Result<T, E2>
where\n F: FnOnce(&mut E) -> C,\n C: IntoError<E2, Source = E>,\n E2: Error + ErrorCompat,

Extend a Result’s error with lazily-generated context-sensitive information. Read more
§

fn whatever_context<S, E2>(self, context: S) -> Result<T, E2>
where\n S: Into<String>,\n E2: FromString,\n E: Into<<E2 as FromString>::Source>,

Extend a Result’s error with information from a string. Read more
§

fn with_whatever_context<F, S, E2>(self, context: F) -> Result<T, E2>
where\n F: FnOnce(&mut E) -> S,\n S: Into<String>,\n E2: FromString,\n E: Into<<E2 as FromString>::Source>,

Extend a Result’s error with information from a\nlazily-generated string. Read more
","ResultExt","hotshot_query_service::QueryResult"],["
§

impl<T, E> Status<T, E> for Result<T, E>
where\n E: Error + Send + Sync + 'static,

§

fn status<S>(self, status: S) -> Result<T, Error>
where\n S: TryInto<StatusCode>,\n <S as TryInto<StatusCode>>::Error: Debug,

Wrap the error value with an additional status code.

\n
Panics
\n

Panics if Status is not a valid StatusCode.

\n
§

fn with_status<S, F>(self, f: F) -> Result<T, Error>
where\n S: TryInto<StatusCode>,\n <S as TryInto<StatusCode>>::Error: Debug,\n F: FnOnce() -> S,

Wrap the error value with an additional status code that is evaluated\nlazily only once an error does occur.

\n
Panics
\n

Panics if Status is not a valid StatusCode.

\n
","Status","hotshot_query_service::QueryResult"],["
source§

impl<T, E> Context<T, E> for Result<T, E>
where\n E: StdError + Send + Sync + 'static,

source§

fn context<C>(self, context: C) -> Result<T, Error>
where\n C: Display + Send + Sync + 'static,

Wrap the error value with additional context.
source§

fn with_context<C, F>(self, context: F) -> Result<T, Error>
where\n C: Display + Send + Sync + 'static,\n F: FnOnce() -> C,

Wrap the error value with additional context that is evaluated lazily\nonly once an error does occur.
","Context","hotshot_query_service::QueryResult"],["
source§

impl<T, TAs, E, EAs> SerializeAs<Result<T, E>> for Result<TAs, EAs>
where\n TAs: SerializeAs<T>,\n EAs: SerializeAs<E>,

source§

fn serialize_as<S>(\n source: &Result<T, E>,\n serializer: S\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
where\n S: Serializer,

Serialize this value into the given Serde serializer.
","SerializeAs>","hotshot_query_service::QueryResult"],["
source§

impl<'de, T, TAs, E, EAs> DeserializeAs<'de, Result<T, E>> for Result<TAs, EAs>
where\n TAs: DeserializeAs<'de, T>,\n EAs: DeserializeAs<'de, E>,

source§

fn deserialize_as<D>(\n deserializer: D\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
where\n D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer.
","DeserializeAs<'de, Result>","hotshot_query_service::QueryResult"],["
§

impl<T, E> NonBlockingResult for Result<T, E>
where\n E: NonBlockingError,

§

type Result = Result<Option<T>, E>

Type of the converted result: Result<Option<T>, E>
§

fn no_block(self) -> <Result<T, E> as NonBlockingResult>::Result

Perform the non-block conversion.
","NonBlockingResult","hotshot_query_service::QueryResult"],["
§

impl<'a, A, B> Arbitrary<'a> for Result<A, B>
where\n A: Arbitrary<'a>,\n B: Arbitrary<'a>,

§

fn arbitrary(u: &mut Unstructured<'a>) -> Result<Result<A, B>, Error>

Generate an arbitrary value of Self from the given unstructured data. Read more
§

fn size_hint(depth: usize) -> (usize, Option<usize>)

Get a size hint for how many bytes out of an Unstructured this type\nneeds to construct itself. Read more
§

fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>

Generate an arbitrary value of Self from the entirety of the given\nunstructured data. Read more
","Arbitrary<'a>","hotshot_query_service::QueryResult"],["
§

impl<T, E> TapFallible for Result<T, E>

§

type Ok = T

The interior type used to indicate a successful construction.
§

type Err = E

The interior type used to indicate a failed construction.
§

fn tap_ok(self, func: impl FnOnce(&T)) -> Result<T, E>

Immutably accesses an interior success value. Read more
§

fn tap_ok_mut(self, func: impl FnOnce(&mut T)) -> Result<T, E>

Mutably accesses an interior success value. Read more
§

fn tap_err(self, func: impl FnOnce(&E)) -> Result<T, E>

Immutably accesses an interior failure value. Read more
§

fn tap_err_mut(self, func: impl FnOnce(&mut E)) -> Result<T, E>

Mutably accesses an interior failure value. Read more
§

fn tap_ok_dbg(self, func: impl FnOnce(&Self::Ok)) -> Self

Calls .tap_ok() only in debug builds, and is erased in release builds.
§

fn tap_ok_mut_dbg(self, func: impl FnOnce(&mut Self::Ok)) -> Self

Calls .tap_ok_mut() only in debug builds, and is erased in release\nbuilds.
§

fn tap_err_dbg(self, func: impl FnOnce(&Self::Err)) -> Self

Calls .tap_err() only in debug builds, and is erased in release\nbuilds.
§

fn tap_err_mut_dbg(self, func: impl FnOnce(&mut Self::Err)) -> Self

Calls .tap_err_mut() only in debug builds, and is erased in release\nbuilds.
","TapFallible","hotshot_query_service::QueryResult"],["
§

impl<C, T, E> FromParallelIterator<Result<T, E>> for Result<C, E>
where\n C: FromParallelIterator<T>,\n T: Send,\n E: Send,

Collect an arbitrary Result-wrapped collection.

\n

If any item is Err, then all previous Ok items collected are\ndiscarded, and it returns that error. If there are multiple errors, the\none returned is not deterministic.

\n
§

fn from_par_iter<I>(par_iter: I) -> Result<C, E>
where\n I: IntoParallelIterator<Item = Result<T, E>>,

Creates an instance of the collection from the parallel iterator par_iter. Read more
","FromParallelIterator>","hotshot_query_service::QueryResult"],["
§

impl<T, E> IntoParallelIterator for Result<T, E>
where\n T: Send,

§

type Item = T

The type of item that the parallel iterator will produce.
§

type Iter = IntoIter<T>

The parallel iterator type that will be created.
§

fn into_par_iter(self) -> <Result<T, E> as IntoParallelIterator>::Iter

Converts self into a parallel iterator. Read more
","IntoParallelIterator","hotshot_query_service::QueryResult"],["
source§

impl<T, E> InstrumentResult<T> for Result<T, E>
where\n E: InstrumentError,

§

type Instrumented = <E as InstrumentError>::Instrumented

The type of the wrapped error after instrumentation
source§

fn in_current_span(\n self\n) -> Result<T, <Result<T, E> as InstrumentResult<T>>::Instrumented>

Instrument an Error by bundling it with a SpanTrace Read more
","InstrumentResult","hotshot_query_service::QueryResult"],["
source§

impl<T, E> Section for Result<T, E>
where\n E: Into<Report>,

§

type Return = Result<T, Report>

The return type of each method after adding context
source§

fn note<D>(self, note: D) -> <Result<T, E> as Section>::Return
where\n D: Display + Send + Sync + 'static,

Add a Note to an error report, to be displayed after the chain of errors. Read more
source§

fn with_note<D, F>(self, note: F) -> <Result<T, E> as Section>::Return
where\n D: Display + Send + Sync + 'static,\n F: FnOnce() -> D,

Add a Note to an error report, to be displayed after the chain of errors. The closure to\ncreate the Note is lazily evaluated only in the case of an error. Read more
source§

fn warning<D>(self, warning: D) -> <Result<T, E> as Section>::Return
where\n D: Display + Send + Sync + 'static,

Add a Warning to an error report, to be displayed after the chain of errors.
source§

fn with_warning<D, F>(self, warning: F) -> <Result<T, E> as Section>::Return
where\n D: Display + Send + Sync + 'static,\n F: FnOnce() -> D,

Add a Warning to an error report, to be displayed after the chain of errors. The closure to\ncreate the Warning is lazily evaluated only in the case of an error.
source§

fn suggestion<D>(self, suggestion: D) -> <Result<T, E> as Section>::Return
where\n D: Display + Send + Sync + 'static,

Add a Suggestion to an error report, to be displayed after the chain of errors.
source§

fn with_suggestion<D, F>(\n self,\n suggestion: F\n) -> <Result<T, E> as Section>::Return
where\n D: Display + Send + Sync + 'static,\n F: FnOnce() -> D,

Add a Suggestion to an error report, to be displayed after the chain of errors. The closure\nto create the Suggestion is lazily evaluated only in the case of an error.
source§

fn with_section<D, F>(self, section: F) -> <Result<T, E> as Section>::Return
where\n D: Display + Send + Sync + 'static,\n F: FnOnce() -> D,

Add a Section to an error report, to be displayed after the chain of errors. The closure to\ncreate the Section is lazily evaluated only in the case of an error. Read more
source§

fn section<D>(self, section: D) -> <Result<T, E> as Section>::Return
where\n D: Display + Send + Sync + 'static,

Add a section to an error report, to be displayed after the chain of errors. Read more
source§

fn error<E2>(self, error: E2) -> <Result<T, E> as Section>::Return
where\n E2: Error + Send + Sync + 'static,

Add an error section to an error report, to be displayed after the primary error message\nsection. Read more
source§

fn with_error<E2, F>(self, error: F) -> <Result<T, E> as Section>::Return
where\n F: FnOnce() -> E2,\n E2: Error + Send + Sync + 'static,

Add an error section to an error report, to be displayed after the primary error message\nsection. The closure to create the Section is lazily evaluated only in the case of an error. Read more
","Section","hotshot_query_service::QueryResult"],["
source§

impl<T, E> WrapErr<T, E> for Result<T, E>
where\n E: StdError + Send + Sync + 'static,

source§

fn wrap_err<D>(self, msg: D) -> Result<T, Report>
where\n D: Display + Send + Sync + 'static,

Wrap the error value with a new adhoc error
source§

fn wrap_err_with<D, F>(self, msg: F) -> Result<T, Report>
where\n D: Display + Send + Sync + 'static,\n F: FnOnce() -> D,

Wrap the error value with a new adhoc error that is evaluated lazily\nonly once an error does occur.
source§

fn context<D>(self, msg: D) -> Result<T, Report>
where\n D: Display + Send + Sync + 'static,

Compatibility re-export of wrap_err for interop with anyhow
source§

fn with_context<D, F>(self, msg: F) -> Result<T, Report>
where\n D: Display + Send + Sync + 'static,\n F: FnOnce() -> D,

Compatibility re-export of wrap_err_with for interop with anyhow
","WrapErr","hotshot_query_service::QueryResult"],["
§

impl<E> ResultVoidErrExt<E> for Result<Void, E>

§

fn void_unwrap_err(self) -> E

Get the error out of an always-err Result.

\n

Never panics, since it is statically known to be Err.

\n
","ResultVoidErrExt","hotshot_query_service::QueryResult"],["
§

impl<R, A> RestrictedMath for Result<R, A>
where\n R: RestrictedMath,\n A: 'static + Copy,

§

type Arg = <R as RestrictedMath>::Arg

Argument for the math operations
§

type Value = <R as RestrictedMath>::Value

Return value, generally the same as Arg
§

fn checked_add(\n &self,\n arg: <Result<R, A> as RestrictedMath>::Arg\n) -> Result<Restrict<<Result<R, A> as RestrictedMath>::Value>, <Result<R, A> as RestrictedMath>::Arg>

Checked addition, see usize::checked_add
§

fn checked_sub(\n &self,\n arg: <Result<R, A> as RestrictedMath>::Arg\n) -> Result<Restrict<<Result<R, A> as RestrictedMath>::Value>, <Result<R, A> as RestrictedMath>::Arg>

Checked subtraction, see usize::checked_sub
§

fn checked_mul(\n &self,\n arg: <Result<R, A> as RestrictedMath>::Arg\n) -> Result<Restrict<<Result<R, A> as RestrictedMath>::Value>, <Result<R, A> as RestrictedMath>::Arg>

Checked multiplication, see usize::checked_mul
","RestrictedMath","hotshot_query_service::QueryResult"],["
§

impl<T, E> ResultExt<T, E> for Result<T, E>

§

fn context<X>(self, x: X) -> Result<T, Context<X, E>>

The method is use to add context information to current operation Read more
","ResultExt","hotshot_query_service::QueryResult"],["
§

impl<T, E> Archive for Result<T, E>
where\n T: Archive,\n E: Archive,

§

type Archived = ArchivedResult<<T as Archive>::Archived, <E as Archive>::Archived>

The archived representation of this type. Read more
§

type Resolver = Result<<T as Archive>::Resolver, <E as Archive>::Resolver>

The resolver for this type. It must contain all the additional information from serializing\nneeded to make the archived type from the normal type.
§

unsafe fn resolve(\n &self,\n pos: usize,\n resolver: <Result<T, E> as Archive>::Resolver,\n out: *mut <Result<T, E> as Archive>::Archived\n)

Creates the archived version of this value at the given position and writes it to the given\noutput. Read more
","Archive","hotshot_query_service::QueryResult"],["
§

impl<T, U, E, F> PartialEq<ArchivedResult<T, E>> for Result<U, F>
where\n T: PartialEq<U>,\n E: PartialEq<F>,

§

fn eq(&self, other: &ArchivedResult<T, E>) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq>","hotshot_query_service::QueryResult"],["
§

impl<T, E, S> Serialize<S> for Result<T, E>
where\n T: Serialize<S>,\n E: Serialize<S>,\n S: Fallible + ?Sized,

§

fn serialize(\n &self,\n serializer: &mut S\n) -> Result<<Result<T, E> as Archive>::Resolver, <S as Fallible>::Error>

Writes the dependencies for the object and returns a resolver that can create the archived\ntype.
","Serialize","hotshot_query_service::QueryResult"],["
§

impl<T, E> TestTermination for Result<T, E>

§

fn is_success(&self) -> bool

","TestTermination","hotshot_query_service::QueryResult"],["
source§

impl<T, E> Reply for Result<T, E>
where\n T: Reply,\n E: Reply,

source§

fn into_response(self) -> Response<Body>

Converts the given value into a Response.
","Reply","hotshot_query_service::QueryResult"],["
§

impl<T, E> NonBlockingResult for Result<T, E>
where\n E: NonBlockingError,

§

type Result = Result<Option<T>, E>

Type of the converted result: Result<Option<T>, E>
§

fn no_block(self) -> <Result<T, E> as NonBlockingResult>::Result

Perform the non-block conversion.
","NonBlockingResult","hotshot_query_service::QueryResult"],["
§

impl<T, E> NonBlockingResult for Result<T, E>
where\n E: NonBlockingError,

§

type Result = Result<Option<T>, E>

Type of the converted result: Result<Option<T>, E>
§

fn no_block(self) -> <Result<T, E> as NonBlockingResult>::Result

Perform the non-block conversion.
","NonBlockingResult","hotshot_query_service::QueryResult"],["
§

impl<T, E> WrapMigrationError<T, E> for Result<T, E>
where\n E: Error + Send + Sync + 'static,

§

fn migration_err(\n self,\n msg: &str,\n applied_migrations: Option<&[Migration]>\n) -> Result<T, Error>

","WrapMigrationError","hotshot_query_service::QueryResult"]] +"hotshot_query_service":[["
source§

impl<T, E> Result<T, E>

1.0.0 (const: 1.48.0) · source

pub const fn is_ok(&self) -> bool

Returns true if the result is Ok.

\n
Examples
\n
let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_ok(), true);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_ok(), false);
\n
1.70.0 · source

pub fn is_ok_and(self, f: impl FnOnce(T) -> bool) -> bool

Returns true if the result is Ok and the value inside of it matches a predicate.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.is_ok_and(|x| x > 1), true);\n\nlet x: Result<u32, &str> = Ok(0);\nassert_eq!(x.is_ok_and(|x| x > 1), false);\n\nlet x: Result<u32, &str> = Err(\"hey\");\nassert_eq!(x.is_ok_and(|x| x > 1), false);
\n
1.0.0 (const: 1.48.0) · source

pub const fn is_err(&self) -> bool

Returns true if the result is Err.

\n
Examples
\n
let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_err(), false);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_err(), true);
\n
1.70.0 · source

pub fn is_err_and(self, f: impl FnOnce(E) -> bool) -> bool

Returns true if the result is Err and the value inside of it matches a predicate.

\n
Examples
\n
use std::io::{Error, ErrorKind};\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::NotFound, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), true);\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::PermissionDenied, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);\n\nlet x: Result<u32, Error> = Ok(123);\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);
\n
1.0.0 · source

pub fn ok(self) -> Option<T>

Converts from Result<T, E> to Option<T>.

\n

Converts self into an Option<T>, consuming self,\nand discarding the error, if any.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.ok(), Some(2));\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.ok(), None);
\n
1.0.0 · source

pub fn err(self) -> Option<E>

Converts from Result<T, E> to Option<E>.

\n

Converts self into an Option<E>, consuming self,\nand discarding the success value, if any.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.err(), None);\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.err(), Some(\"Nothing here\"));
\n
1.0.0 (const: 1.48.0) · source

pub const fn as_ref(&self) -> Result<&T, &E>

Converts from &Result<T, E> to Result<&T, &E>.

\n

Produces a new Result, containing a reference\ninto the original, leaving the original in place.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.as_ref(), Ok(&2));\n\nlet x: Result<u32, &str> = Err(\"Error\");\nassert_eq!(x.as_ref(), Err(&\"Error\"));
\n
1.0.0 (const: unstable) · source

pub fn as_mut(&mut self) -> Result<&mut T, &mut E>

Converts from &mut Result<T, E> to Result<&mut T, &mut E>.

\n
Examples
\n
fn mutate(r: &mut Result<i32, i32>) {\n    match r.as_mut() {\n        Ok(v) => *v = 42,\n        Err(e) => *e = 0,\n    }\n}\n\nlet mut x: Result<i32, i32> = Ok(2);\nmutate(&mut x);\nassert_eq!(x.unwrap(), 42);\n\nlet mut x: Result<i32, i32> = Err(13);\nmutate(&mut x);\nassert_eq!(x.unwrap_err(), 0);
\n
1.0.0 · source

pub fn map<U, F>(self, op: F) -> Result<U, E>
where\n F: FnOnce(T) -> U,

Maps a Result<T, E> to Result<U, E> by applying a function to a\ncontained Ok value, leaving an Err value untouched.

\n

This function can be used to compose the results of two functions.

\n
Examples
\n

Print the numbers on each line of a string multiplied by two.

\n\n
let line = \"1\\n2\\n3\\n4\\n\";\n\nfor num in line.lines() {\n    match num.parse::<i32>().map(|i| i * 2) {\n        Ok(n) => println!(\"{n}\"),\n        Err(..) => {}\n    }\n}
\n
1.41.0 · source

pub fn map_or<U, F>(self, default: U, f: F) -> U
where\n F: FnOnce(T) -> U,

Returns the provided default (if Err), or\napplies a function to the contained value (if Ok).

\n

Arguments passed to map_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use map_or_else,\nwhich is lazily evaluated.

\n
Examples
\n
let x: Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or(42, |v| v.len()), 3);\n\nlet x: Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or(42, |v| v.len()), 42);
\n
1.41.0 · source

pub fn map_or_else<U, D, F>(self, default: D, f: F) -> U
where\n D: FnOnce(E) -> U,\n F: FnOnce(T) -> U,

Maps a Result<T, E> to U by applying fallback function default to\na contained Err value, or function f to a contained Ok value.

\n

This function can be used to unpack a successful result\nwhile handling an error.

\n
Examples
\n
let k = 21;\n\nlet x : Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 3);\n\nlet x : Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 42);
\n
1.0.0 · source

pub fn map_err<F, O>(self, op: O) -> Result<T, F>
where\n O: FnOnce(E) -> F,

Maps a Result<T, E> to Result<T, F> by applying a function to a\ncontained Err value, leaving an Ok value untouched.

\n

This function can be used to pass through a successful result while handling\nan error.

\n
Examples
\n
fn stringify(x: u32) -> String { format!(\"error code: {x}\") }\n\nlet x: Result<u32, u32> = Ok(2);\nassert_eq!(x.map_err(stringify), Ok(2));\n\nlet x: Result<u32, u32> = Err(13);\nassert_eq!(x.map_err(stringify), Err(\"error code: 13\".to_string()));
\n
1.76.0 · source

pub fn inspect<F>(self, f: F) -> Result<T, E>
where\n F: FnOnce(&T),

Calls the provided closure with a reference to the contained value (if Ok).

\n
Examples
\n
let x: u8 = \"4\"\n    .parse::<u8>()\n    .inspect(|x| println!(\"original: {x}\"))\n    .map(|x| x.pow(3))\n    .expect(\"failed to parse number\");
\n
1.76.0 · source

pub fn inspect_err<F>(self, f: F) -> Result<T, E>
where\n F: FnOnce(&E),

Calls the provided closure with a reference to the contained error (if Err).

\n
Examples
\n
use std::{fs, io};\n\nfn read() -> io::Result<String> {\n    fs::read_to_string(\"address.txt\")\n        .inspect_err(|e| eprintln!(\"failed to read file: {e}\"))\n}
\n
1.47.0 · source

pub fn as_deref(&self) -> Result<&<T as Deref>::Target, &E>
where\n T: Deref,

Converts from Result<T, E> (or &Result<T, E>) to Result<&<T as Deref>::Target, &E>.

\n

Coerces the Ok variant of the original Result via Deref\nand returns the new Result.

\n
Examples
\n
let x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&str, &u32> = Ok(\"hello\");\nassert_eq!(x.as_deref(), y);\n\nlet x: Result<String, u32> = Err(42);\nlet y: Result<&str, &u32> = Err(&42);\nassert_eq!(x.as_deref(), y);
\n
1.47.0 · source

pub fn as_deref_mut(&mut self) -> Result<&mut <T as Deref>::Target, &mut E>
where\n T: DerefMut,

Converts from Result<T, E> (or &mut Result<T, E>) to Result<&mut <T as DerefMut>::Target, &mut E>.

\n

Coerces the Ok variant of the original Result via DerefMut\nand returns the new Result.

\n
Examples
\n
let mut s = \"HELLO\".to_string();\nlet mut x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&mut str, &mut u32> = Ok(&mut s);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);\n\nlet mut i = 42;\nlet mut x: Result<String, u32> = Err(42);\nlet y: Result<&mut str, &mut u32> = Err(&mut i);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);
\n
1.0.0 · source

pub fn iter(&self) -> Iter<'_, T>

Returns an iterator over the possibly contained value.

\n

The iterator yields one value if the result is Result::Ok, otherwise none.

\n
Examples
\n
let x: Result<u32, &str> = Ok(7);\nassert_eq!(x.iter().next(), Some(&7));\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter().next(), None);
\n
1.0.0 · source

pub fn iter_mut(&mut self) -> IterMut<'_, T>

Returns a mutable iterator over the possibly contained value.

\n

The iterator yields one value if the result is Result::Ok, otherwise none.

\n
Examples
\n
let mut x: Result<u32, &str> = Ok(7);\nmatch x.iter_mut().next() {\n    Some(v) => *v = 40,\n    None => {},\n}\nassert_eq!(x, Ok(40));\n\nlet mut x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter_mut().next(), None);
\n
1.4.0 · source

pub fn expect(self, msg: &str) -> T
where\n E: Debug,

Returns the contained Ok value, consuming the self value.

\n

Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

\n
Panics
\n

Panics if the value is an Err, with a panic message including the\npassed message, and the content of the Err.

\n
Examples
\n
let x: Result<u32, &str> = Err(\"emergency failure\");\nx.expect(\"Testing expect\"); // panics with `Testing expect: emergency failure`
\n
Recommended Message Style
\n

We recommend that expect messages are used to describe the reason you\nexpect the Result should be Ok.

\n\n
let path = std::env::var(\"IMPORTANT_PATH\")\n    .expect(\"env variable `IMPORTANT_PATH` should be set by `wrapper_script.sh`\");
\n

Hint: If you’re having trouble remembering how to phrase expect\nerror messages remember to focus on the word “should” as in “env\nvariable should be set by blah” or “the given binary should be available\nand executable by the current user”.

\n

For more detail on expect message styles and the reasoning behind our recommendation please\nrefer to the section on “Common Message\nStyles” in the\nstd::error module docs.

\n
1.0.0 · source

pub fn unwrap(self) -> T
where\n E: Debug,

Returns the contained Ok value, consuming the self value.

\n

Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

\n
Panics
\n

Panics if the value is an Err, with a panic message provided by the\nErr’s value.

\n
Examples
\n

Basic usage:

\n\n
let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.unwrap(), 2);
\n\n
let x: Result<u32, &str> = Err(\"emergency failure\");\nx.unwrap(); // panics with `emergency failure`
\n
1.16.0 · source

pub fn unwrap_or_default(self) -> T
where\n T: Default,

Returns the contained Ok value or a default

\n

Consumes the self argument then, if Ok, returns the contained\nvalue, otherwise if Err, returns the default value for that\ntype.

\n
Examples
\n

Converts a string to an integer, turning poorly-formed strings\ninto 0 (the default value for integers). parse converts\na string to any other type that implements FromStr, returning an\nErr on error.

\n\n
let good_year_from_input = \"1909\";\nlet bad_year_from_input = \"190blarg\";\nlet good_year = good_year_from_input.parse().unwrap_or_default();\nlet bad_year = bad_year_from_input.parse().unwrap_or_default();\n\nassert_eq!(1909, good_year);\nassert_eq!(0, bad_year);
\n
1.17.0 · source

pub fn expect_err(self, msg: &str) -> E
where\n T: Debug,

Returns the contained Err value, consuming the self value.

\n
Panics
\n

Panics if the value is an Ok, with a panic message including the\npassed message, and the content of the Ok.

\n
Examples
\n
let x: Result<u32, &str> = Ok(10);\nx.expect_err(\"Testing expect_err\"); // panics with `Testing expect_err: 10`
\n
1.0.0 · source

pub fn unwrap_err(self) -> E
where\n T: Debug,

Returns the contained Err value, consuming the self value.

\n
Panics
\n

Panics if the value is an Ok, with a custom panic message provided\nby the Ok’s value.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nx.unwrap_err(); // panics with `2`
\n\n
let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(x.unwrap_err(), \"emergency failure\");
\n
source

pub fn into_ok(self) -> T
where\n E: Into<!>,

🔬This is a nightly-only experimental API. (unwrap_infallible)

Returns the contained Ok value, but never panics.

\n

Unlike unwrap, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap as a maintainability safeguard that will fail\nto compile if the error type of the Result is later changed\nto an error that can actually occur.

\n
Examples
\n
\nfn only_good_news() -> Result<String, !> {\n    Ok(\"this is fine\".into())\n}\n\nlet s: String = only_good_news().into_ok();\nprintln!(\"{s}\");
\n
source

pub fn into_err(self) -> E
where\n T: Into<!>,

🔬This is a nightly-only experimental API. (unwrap_infallible)

Returns the contained Err value, but never panics.

\n

Unlike unwrap_err, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap_err as a maintainability safeguard that will fail\nto compile if the ok type of the Result is later changed\nto a type that can actually occur.

\n
Examples
\n
\nfn only_bad_news() -> Result<!, String> {\n    Err(\"Oops, it failed\".into())\n}\n\nlet error: String = only_bad_news().into_err();\nprintln!(\"{error}\");
\n
1.0.0 · source

pub fn and<U>(self, res: Result<U, E>) -> Result<U, E>

Returns res if the result is Ok, otherwise returns the Err value of self.

\n

Arguments passed to and are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use and_then, which is\nlazily evaluated.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<&str, &str> = Ok(\"foo\");\nassert_eq!(x.and(y), Err(\"early error\"));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"not a 2\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Ok(\"different result type\");\nassert_eq!(x.and(y), Ok(\"different result type\"));
\n
1.0.0 · source

pub fn and_then<U, F>(self, op: F) -> Result<U, E>
where\n F: FnOnce(T) -> Result<U, E>,

Calls op if the result is Ok, otherwise returns the Err value of self.

\n

This function can be used for control flow based on Result values.

\n
Examples
\n
fn sq_then_to_string(x: u32) -> Result<String, &'static str> {\n    x.checked_mul(x).map(|sq| sq.to_string()).ok_or(\"overflowed\")\n}\n\nassert_eq!(Ok(2).and_then(sq_then_to_string), Ok(4.to_string()));\nassert_eq!(Ok(1_000_000).and_then(sq_then_to_string), Err(\"overflowed\"));\nassert_eq!(Err(\"not a number\").and_then(sq_then_to_string), Err(\"not a number\"));
\n

Often used to chain fallible operations that may return Err.

\n\n
use std::{io::ErrorKind, path::Path};\n\n// Note: on Windows \"/\" maps to \"C:\\\"\nlet root_modified_time = Path::new(\"/\").metadata().and_then(|md| md.modified());\nassert!(root_modified_time.is_ok());\n\nlet should_fail = Path::new(\"/bad/path\").metadata().and_then(|md| md.modified());\nassert!(should_fail.is_err());\nassert_eq!(should_fail.unwrap_err().kind(), ErrorKind::NotFound);
\n
1.0.0 · source

pub fn or<F>(self, res: Result<T, F>) -> Result<T, F>

Returns res if the result is Err, otherwise returns the Ok value of self.

\n

Arguments passed to or are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use or_else, which is\nlazily evaluated.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<u32, &str> = Ok(2);\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Ok(100);\nassert_eq!(x.or(y), Ok(2));
\n
1.0.0 · source

pub fn or_else<F, O>(self, op: O) -> Result<T, F>
where\n O: FnOnce(E) -> Result<T, F>,

Calls op if the result is Err, otherwise returns the Ok value of self.

\n

This function can be used for control flow based on result values.

\n
Examples
\n
fn sq(x: u32) -> Result<u32, u32> { Ok(x * x) }\nfn err(x: u32) -> Result<u32, u32> { Err(x) }\n\nassert_eq!(Ok(2).or_else(sq).or_else(sq), Ok(2));\nassert_eq!(Ok(2).or_else(err).or_else(sq), Ok(2));\nassert_eq!(Err(3).or_else(sq).or_else(err), Ok(9));\nassert_eq!(Err(3).or_else(err).or_else(err), Err(3));
\n
1.0.0 · source

pub fn unwrap_or(self, default: T) -> T

Returns the contained Ok value or a provided default.

\n

Arguments passed to unwrap_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use unwrap_or_else,\nwhich is lazily evaluated.

\n
Examples
\n
let default = 2;\nlet x: Result<u32, &str> = Ok(9);\nassert_eq!(x.unwrap_or(default), 9);\n\nlet x: Result<u32, &str> = Err(\"error\");\nassert_eq!(x.unwrap_or(default), default);
\n
1.0.0 · source

pub fn unwrap_or_else<F>(self, op: F) -> T
where\n F: FnOnce(E) -> T,

Returns the contained Ok value or computes it from a closure.

\n
Examples
\n
fn count(x: &str) -> usize { x.len() }\n\nassert_eq!(Ok(2).unwrap_or_else(count), 2);\nassert_eq!(Err(\"foo\").unwrap_or_else(count), 3);
\n
1.58.0 · source

pub unsafe fn unwrap_unchecked(self) -> T

Returns the contained Ok value, consuming the self value,\nwithout checking that the value is not an Err.

\n
Safety
\n

Calling this method on an Err is undefined behavior.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nassert_eq!(unsafe { x.unwrap_unchecked() }, 2);
\n\n
let x: Result<u32, &str> = Err(\"emergency failure\");\nunsafe { x.unwrap_unchecked(); } // Undefined behavior!
\n
1.58.0 · source

pub unsafe fn unwrap_err_unchecked(self) -> E

Returns the contained Err value, consuming the self value,\nwithout checking that the value is not an Ok.

\n
Safety
\n

Calling this method on an Ok is undefined behavior.

\n
Examples
\n
let x: Result<u32, &str> = Ok(2);\nunsafe { x.unwrap_err_unchecked() }; // Undefined behavior!
\n\n
let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(unsafe { x.unwrap_err_unchecked() }, \"emergency failure\");
\n
",0,"hotshot_query_service::QueryResult"],["
source§

impl<T, E> Result<&T, E>

1.59.0 · source

pub fn copied(self) -> Result<T, E>
where\n T: Copy,

Maps a Result<&T, E> to a Result<T, E> by copying the contents of the\nOk part.

\n
Examples
\n
let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
\n
1.59.0 · source

pub fn cloned(self) -> Result<T, E>
where\n T: Clone,

Maps a Result<&T, E> to a Result<T, E> by cloning the contents of the\nOk part.

\n
Examples
\n
let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
\n
",0,"hotshot_query_service::QueryResult"],["
source§

impl<T, E> Result<&mut T, E>

1.59.0 · source

pub fn copied(self) -> Result<T, E>
where\n T: Copy,

Maps a Result<&mut T, E> to a Result<T, E> by copying the contents of the\nOk part.

\n
Examples
\n
let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
\n
1.59.0 · source

pub fn cloned(self) -> Result<T, E>
where\n T: Clone,

Maps a Result<&mut T, E> to a Result<T, E> by cloning the contents of the\nOk part.

\n
Examples
\n
let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
\n
",0,"hotshot_query_service::QueryResult"],["
source§

impl<T, E> Result<Option<T>, E>

1.33.0 (const: unstable) · source

pub fn transpose(self) -> Option<Result<T, E>>

Transposes a Result of an Option into an Option of a Result.

\n

Ok(None) will be mapped to None.\nOk(Some(_)) and Err(_) will be mapped to Some(Ok(_)) and Some(Err(_)).

\n
Examples
\n
#[derive(Debug, Eq, PartialEq)]\nstruct SomeErr;\n\nlet x: Result<Option<i32>, SomeErr> = Ok(Some(5));\nlet y: Option<Result<i32, SomeErr>> = Some(Ok(5));\nassert_eq!(x.transpose(), y);
\n
",0,"hotshot_query_service::QueryResult"],["
source§

impl<T, E> Result<Result<T, E>, E>

source

pub fn flatten(self) -> Result<T, E>

🔬This is a nightly-only experimental API. (result_flattening)

Converts from Result<Result<T, E>, E> to Result<T, E>

\n
Examples
\n
#![feature(result_flattening)]\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Ok(\"hello\"));\nassert_eq!(Ok(\"hello\"), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Err(6));\nassert_eq!(Err(6), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Err(6);\nassert_eq!(Err(6), x.flatten());
\n

Flattening only removes one level of nesting at a time:

\n\n
#![feature(result_flattening)]\nlet x: Result<Result<Result<&'static str, u32>, u32>, u32> = Ok(Ok(Ok(\"hello\")));\nassert_eq!(Ok(Ok(\"hello\")), x.flatten());\nassert_eq!(Ok(\"hello\"), x.flatten().flatten());
\n
",0,"hotshot_query_service::QueryResult"],["
1.61.0 · source§

impl<T, E> Termination for Result<T, E>
where\n T: Termination,\n E: Debug,

source§

fn report(self) -> ExitCode

Is called to get the representation of the value as status code.\nThis status code is returned to the operating system.
","Termination","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> PartialOrd for Result<T, E>
where\n T: PartialOrd,\n E: PartialOrd,

source§

fn partial_cmp(&self, other: &Result<T, E>) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
","PartialOrd","hotshot_query_service::QueryResult"],["
1.16.0 · source§

impl<T, U, E> Product<Result<U, E>> for Result<T, E>
where\n T: Product<U>,

source§

fn product<I>(iter: I) -> Result<T, E>
where\n I: Iterator<Item = Result<U, E>>,

Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the product of all elements is returned.

\n
Examples
\n

This multiplies each number in a vector of strings,\nif a string could not be parsed the operation returns Err:

\n\n
let nums = vec![\"5\", \"10\", \"1\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert_eq!(total, Ok(100));\nlet nums = vec![\"5\", \"10\", \"one\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert!(total.is_err());
\n
","Product>","hotshot_query_service::QueryResult"],["
source§

impl<T, E, F> FromResidual<Result<Infallible, E>> for Result<T, F>
where\n F: From<E>,

source§

fn from_residual(residual: Result<Infallible, E>) -> Result<T, F>

🔬This is a nightly-only experimental API. (try_trait_v2)
Constructs the type from a compatible Residual type. Read more
","FromResidual>","hotshot_query_service::QueryResult"],["
source§

impl<T, E, F> FromResidual<Yeet<E>> for Result<T, F>
where\n F: From<E>,

source§

fn from_residual(_: Yeet<E>) -> Result<T, F>

🔬This is a nightly-only experimental API. (try_trait_v2)
Constructs the type from a compatible Residual type. Read more
","FromResidual>","hotshot_query_service::QueryResult"],["
source§

impl<T, E> Try for Result<T, E>

§

type Output = T

🔬This is a nightly-only experimental API. (try_trait_v2)
The type of the value produced by ? when not short-circuiting.
§

type Residual = Result<Infallible, E>

🔬This is a nightly-only experimental API. (try_trait_v2)
The type of the value passed to FromResidual::from_residual\nas part of ? when short-circuiting. Read more
source§

fn from_output(output: <Result<T, E> as Try>::Output) -> Result<T, E>

🔬This is a nightly-only experimental API. (try_trait_v2)
Constructs the type from its Output type. Read more
source§

fn branch(\n self\n) -> ControlFlow<<Result<T, E> as Try>::Residual, <Result<T, E> as Try>::Output>

🔬This is a nightly-only experimental API. (try_trait_v2)
Used in ? to decide whether the operator should produce a value\n(because this returned ControlFlow::Continue)\nor propagate a value back to the caller\n(because this returned ControlFlow::Break). Read more
","Try","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> Clone for Result<T, E>
where\n T: Clone,\n E: Clone,

source§

fn clone(&self) -> Result<T, E>

Returns a copy of the value. Read more
source§

fn clone_from(&mut self, source: &Result<T, E>)

Performs copy-assignment from source. Read more
","Clone","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<A, E, V> FromIterator<Result<A, E>> for Result<V, E>
where\n V: FromIterator<A>,

source§

fn from_iter<I>(iter: I) -> Result<V, E>
where\n I: IntoIterator<Item = Result<A, E>>,

Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur, a\ncontainer with the values of each Result is returned.

\n

Here is an example which increments every integer in a vector,\nchecking for overflow:

\n\n
let v = vec![1, 2];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_add(1).ok_or(\"Overflow!\")\n).collect();\nassert_eq!(res, Ok(vec![2, 3]));
\n

Here is another example that tries to subtract one from another list\nof integers, this time checking for underflow:

\n\n
let v = vec![1, 2, 0];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_sub(1).ok_or(\"Underflow!\")\n).collect();\nassert_eq!(res, Err(\"Underflow!\"));
\n

Here is a variation on the previous example, showing that no\nfurther elements are taken from iter after the first Err.

\n\n
let v = vec![3, 2, 1, 10];\nlet mut shared = 0;\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32| {\n    shared += x;\n    x.checked_sub(2).ok_or(\"Underflow!\")\n}).collect();\nassert_eq!(res, Err(\"Underflow!\"));\nassert_eq!(shared, 6);
\n

Since the third element caused an underflow, no further elements were taken,\nso the final value of shared is 6 (= 3 + 2 + 1), not 16.

\n
","FromIterator>","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> StructuralEq for Result<T, E>

","StructuralEq","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> Eq for Result<T, E>
where\n T: Eq,\n E: Eq,

","Eq","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> Hash for Result<T, E>
where\n T: Hash,\n E: Hash,

source§

fn hash<__H>(&self, state: &mut __H)
where\n __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where\n H: Hasher,\n Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
","Hash","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> Ord for Result<T, E>
where\n T: Ord,\n E: Ord,

source§

fn cmp(&self, other: &Result<T, E>) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where\n Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Self
where\n Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Self
where\n Self: Sized + PartialOrd,

Restrict a value to a certain interval. Read more
","Ord","hotshot_query_service::QueryResult"],["
source§

impl<T, E> Residual<T> for Result<Infallible, E>

§

type TryType = Result<T, E>

🔬This is a nightly-only experimental API. (try_trait_v2_residual)
The “return” type of this meta-function.
","Residual","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> PartialEq for Result<T, E>
where\n T: PartialEq,\n E: PartialEq,

source§

fn eq(&self, other: &Result<T, E>) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> IntoIterator for Result<T, E>

source§

fn into_iter(self) -> IntoIter<T>

Returns a consuming iterator over the possibly contained value.

\n

The iterator yields one value if the result is Result::Ok, otherwise none.

\n
Examples
\n
let x: Result<u32, &str> = Ok(5);\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, [5]);\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, []);
\n
§

type Item = T

The type of the elements being iterated over.
§

type IntoIter = IntoIter<T>

Which kind of iterator are we turning this into?
","IntoIterator","hotshot_query_service::QueryResult"],["
1.16.0 · source§

impl<T, U, E> Sum<Result<U, E>> for Result<T, E>
where\n T: Sum<U>,

source§

fn sum<I>(iter: I) -> Result<T, E>
where\n I: Iterator<Item = Result<U, E>>,

Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the sum of all elements is returned.

\n
Examples
\n

This sums up every integer in a vector, rejecting the sum if a negative\nelement is encountered:

\n\n
let f = |&x: &i32| if x < 0 { Err(\"Negative element found\") } else { Ok(x) };\nlet v = vec![1, 2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Ok(3));\nlet v = vec![1, -2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Err(\"Negative element found\"));
\n
","Sum>","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> StructuralPartialEq for Result<T, E>

","StructuralPartialEq","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> Debug for Result<T, E>
where\n T: Debug,\n E: Debug,

source§

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

Formats the value using the given formatter. Read more
","Debug","hotshot_query_service::QueryResult"],["
1.0.0 · source§

impl<T, E> Copy for Result<T, E>
where\n T: Copy,\n E: Copy,

","Copy","hotshot_query_service::QueryResult"],["
§

impl<T, U, E> Product<Result<U, E>> for Result<T, E>
where\n T: Product<U>,

§

fn product<'a, S>(stream: S) -> Pin<Box<dyn Future<Output = Result<T, E>> + 'a>>
where\n S: Stream<Item = Result<U, E>> + 'a,

Takes each element in the Stream: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur,\nthe product of all elements is returned.

\n
Examples
\n

This multiplies every integer in a vector, rejecting the product if a negative element is\nencountered:

\n\n
use async_std::prelude::*;\nuse async_std::stream;\n\nlet v = stream::from_iter(vec![1, 2, 4]);\nlet res: Result<i32, &'static str> = v.map(|x|\n    if x < 0 {\n        Err(\"Negative element found\")\n    } else {\n        Ok(x)\n    }).product().await;\nassert_eq!(res, Ok(8));
\n
","Product>","hotshot_query_service::QueryResult"],["
§

impl<T, U, E> Sum<Result<U, E>> for Result<T, E>
where\n T: Sum<U>,

§

fn sum<'a, S>(stream: S) -> Pin<Box<dyn Future<Output = Result<T, E>> + 'a>>
where\n S: Stream<Item = Result<U, E>> + 'a,

Takes each element in the Stream: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur,\nthe sum of all elements is returned.

\n
Examples
\n

This sums up every integer in a vector, rejecting the sum if a negative\nelement is encountered:

\n\n
use async_std::prelude::*;\nuse async_std::stream;\n\nlet v = stream::from_iter(vec![1, 2]);\nlet res: Result<i32, &'static str> = v.map(|x|\n    if x < 0 {\n        Err(\"Negative element found\")\n    } else {\n        Ok(x)\n    }).sum().await;\nassert_eq!(res, Ok(3));
\n
","Sum>","hotshot_query_service::QueryResult"],["
§

impl<T, E, V> FromStream<Result<T, E>> for Result<V, E>
where\n T: Send,\n E: Send,\n V: FromStream<T>,

§

fn from_stream<'a, S>(\n stream: S\n) -> Pin<Box<dyn Future<Output = Result<V, E>> + Send + 'a>>
where\n S: IntoStream<Item = Result<T, E>> + 'a,\n <S as IntoStream>::IntoStream: Send,

Takes each element in the stream: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, a container with the values of each Result is returned.

\n
Examples
\n
use async_std::prelude::*;\nuse async_std::stream;\n\nlet v = stream::from_iter(vec![1, 2]);\nlet res: Result<Vec<u32>, &'static str> = v.map(|x: u32|\n    x.checked_add(1).ok_or(\"Overflow!\")\n).collect().await;\nassert_eq!(res, Ok(vec![2, 3]));
\n
","FromStream>","hotshot_query_service::QueryResult"],["
source§

impl<T, E> Serialize for Result<T, E>
where\n T: Serialize,\n E: Serialize,

source§

fn serialize<S>(\n &self,\n serializer: S\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
where\n S: Serializer,

Serialize this value into the given Serde serializer. Read more
","Serialize","hotshot_query_service::QueryResult"],["
source§

impl<'de, T, E> Deserialize<'de> for Result<T, E>
where\n T: Deserialize<'de>,\n E: Deserialize<'de>,

source§

fn deserialize<D>(\n deserializer: D\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
where\n D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
","Deserialize<'de>","hotshot_query_service::QueryResult"],["
§

impl<T, E> ResultExt<T, E> for Result<T, E>

§

fn context<C, E2>(self, context: C) -> Result<T, E2>
where\n C: IntoError<E2, Source = E>,\n E2: Error + ErrorCompat,

Extend a Result’s error with additional context-sensitive information. Read more
§

fn with_context<F, C, E2>(self, context: F) -> Result<T, E2>
where\n F: FnOnce(&mut E) -> C,\n C: IntoError<E2, Source = E>,\n E2: Error + ErrorCompat,

Extend a Result’s error with lazily-generated context-sensitive information. Read more
§

fn whatever_context<S, E2>(self, context: S) -> Result<T, E2>
where\n S: Into<String>,\n E2: FromString,\n E: Into<<E2 as FromString>::Source>,

Extend a Result’s error with information from a string. Read more
§

fn with_whatever_context<F, S, E2>(self, context: F) -> Result<T, E2>
where\n F: FnOnce(&mut E) -> S,\n S: Into<String>,\n E2: FromString,\n E: Into<<E2 as FromString>::Source>,

Extend a Result’s error with information from a\nlazily-generated string. Read more
","ResultExt","hotshot_query_service::QueryResult"],["
§

impl<T, E> Status<T, E> for Result<T, E>
where\n E: Error + Send + Sync + 'static,

§

fn status<S>(self, status: S) -> Result<T, Error>
where\n S: TryInto<StatusCode>,\n <S as TryInto<StatusCode>>::Error: Debug,

Wrap the error value with an additional status code.

\n
Panics
\n

Panics if Status is not a valid StatusCode.

\n
§

fn with_status<S, F>(self, f: F) -> Result<T, Error>
where\n S: TryInto<StatusCode>,\n <S as TryInto<StatusCode>>::Error: Debug,\n F: FnOnce() -> S,

Wrap the error value with an additional status code that is evaluated\nlazily only once an error does occur.

\n
Panics
\n

Panics if Status is not a valid StatusCode.

\n
","Status","hotshot_query_service::QueryResult"],["
source§

impl<T, E> Context<T, E> for Result<T, E>
where\n E: StdError + Send + Sync + 'static,

source§

fn context<C>(self, context: C) -> Result<T, Error>
where\n C: Display + Send + Sync + 'static,

Wrap the error value with additional context.
source§

fn with_context<C, F>(self, context: F) -> Result<T, Error>
where\n C: Display + Send + Sync + 'static,\n F: FnOnce() -> C,

Wrap the error value with additional context that is evaluated lazily\nonly once an error does occur.
","Context","hotshot_query_service::QueryResult"],["
source§

impl<T, TAs, E, EAs> SerializeAs<Result<T, E>> for Result<TAs, EAs>
where\n TAs: SerializeAs<T>,\n EAs: SerializeAs<E>,

source§

fn serialize_as<S>(\n source: &Result<T, E>,\n serializer: S\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
where\n S: Serializer,

Serialize this value into the given Serde serializer.
","SerializeAs>","hotshot_query_service::QueryResult"],["
source§

impl<'de, T, TAs, E, EAs> DeserializeAs<'de, Result<T, E>> for Result<TAs, EAs>
where\n TAs: DeserializeAs<'de, T>,\n EAs: DeserializeAs<'de, E>,

source§

fn deserialize_as<D>(\n deserializer: D\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
where\n D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer.
","DeserializeAs<'de, Result>","hotshot_query_service::QueryResult"],["
§

impl<T, E> ResultExt<T, E> for Result<T, E>

§

fn context<C, E2>(self, context: C) -> Result<T, E2>
where\n C: IntoError<E2, Source = E>,\n E2: Error + ErrorCompat,

Extend a Result’s error with additional context-sensitive information. Read more
§

fn with_context<F, C, E2>(self, context: F) -> Result<T, E2>
where\n F: FnOnce(&mut E) -> C,\n C: IntoError<E2, Source = E>,\n E2: Error + ErrorCompat,

Extend a Result’s error with lazily-generated context-sensitive information. Read more
§

fn whatever_context<S, E2>(self, context: S) -> Result<T, E2>
where\n S: Into<String>,\n E2: FromString,\n E: Into<<E2 as FromString>::Source>,

Extend a Result’s error with information from a string. Read more
§

fn with_whatever_context<F, S, E2>(self, context: F) -> Result<T, E2>
where\n F: FnOnce(&mut E) -> S,\n S: Into<String>,\n E2: FromString,\n E: Into<<E2 as FromString>::Source>,

Extend a Result’s error with information from a\nlazily-generated string. Read more
§

fn boxed<'a>(self) -> Result<T, Box<dyn Error + Send + Sync + 'a>>
where\n E: Error + Send + Sync + 'a,

Convert a Result’s error into a boxed trait object\ncompatible with multiple threads. Read more
§

fn boxed_local<'a>(self) -> Result<T, Box<dyn Error + 'a>>
where\n E: Error + 'a,

Convert a Result’s error into a boxed trait object. Read more
","ResultExt","hotshot_query_service::QueryResult"],["
§

impl<T, E> NonBlockingResult for Result<T, E>
where\n E: NonBlockingError,

§

type Result = Result<Option<T>, E>

Type of the converted result: Result<Option<T>, E>
§

fn no_block(self) -> <Result<T, E> as NonBlockingResult>::Result

Perform the non-block conversion.
","NonBlockingResult","hotshot_query_service::QueryResult"],["
§

impl<'a, A, B> Arbitrary<'a> for Result<A, B>
where\n A: Arbitrary<'a>,\n B: Arbitrary<'a>,

§

fn arbitrary(u: &mut Unstructured<'a>) -> Result<Result<A, B>, Error>

Generate an arbitrary value of Self from the given unstructured data. Read more
§

fn size_hint(depth: usize) -> (usize, Option<usize>)

Get a size hint for how many bytes out of an Unstructured this type\nneeds to construct itself. Read more
§

fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>

Generate an arbitrary value of Self from the entirety of the given\nunstructured data. Read more
","Arbitrary<'a>","hotshot_query_service::QueryResult"],["
§

impl<T, E> TapFallible for Result<T, E>

§

type Ok = T

The interior type used to indicate a successful construction.
§

type Err = E

The interior type used to indicate a failed construction.
§

fn tap_ok(self, func: impl FnOnce(&T)) -> Result<T, E>

Immutably accesses an interior success value. Read more
§

fn tap_ok_mut(self, func: impl FnOnce(&mut T)) -> Result<T, E>

Mutably accesses an interior success value. Read more
§

fn tap_err(self, func: impl FnOnce(&E)) -> Result<T, E>

Immutably accesses an interior failure value. Read more
§

fn tap_err_mut(self, func: impl FnOnce(&mut E)) -> Result<T, E>

Mutably accesses an interior failure value. Read more
§

fn tap_ok_dbg(self, func: impl FnOnce(&Self::Ok)) -> Self

Calls .tap_ok() only in debug builds, and is erased in release builds.
§

fn tap_ok_mut_dbg(self, func: impl FnOnce(&mut Self::Ok)) -> Self

Calls .tap_ok_mut() only in debug builds, and is erased in release\nbuilds.
§

fn tap_err_dbg(self, func: impl FnOnce(&Self::Err)) -> Self

Calls .tap_err() only in debug builds, and is erased in release\nbuilds.
§

fn tap_err_mut_dbg(self, func: impl FnOnce(&mut Self::Err)) -> Self

Calls .tap_err_mut() only in debug builds, and is erased in release\nbuilds.
","TapFallible","hotshot_query_service::QueryResult"],["
§

impl<C, T, E> FromParallelIterator<Result<T, E>> for Result<C, E>
where\n C: FromParallelIterator<T>,\n T: Send,\n E: Send,

Collect an arbitrary Result-wrapped collection.

\n

If any item is Err, then all previous Ok items collected are\ndiscarded, and it returns that error. If there are multiple errors, the\none returned is not deterministic.

\n
§

fn from_par_iter<I>(par_iter: I) -> Result<C, E>
where\n I: IntoParallelIterator<Item = Result<T, E>>,

Creates an instance of the collection from the parallel iterator par_iter. Read more
","FromParallelIterator>","hotshot_query_service::QueryResult"],["
§

impl<T, E> IntoParallelIterator for Result<T, E>
where\n T: Send,

§

type Item = T

The type of item that the parallel iterator will produce.
§

type Iter = IntoIter<T>

The parallel iterator type that will be created.
§

fn into_par_iter(self) -> <Result<T, E> as IntoParallelIterator>::Iter

Converts self into a parallel iterator. Read more
","IntoParallelIterator","hotshot_query_service::QueryResult"],["
source§

impl<T, E> InstrumentResult<T> for Result<T, E>
where\n E: InstrumentError,

§

type Instrumented = <E as InstrumentError>::Instrumented

The type of the wrapped error after instrumentation
source§

fn in_current_span(\n self\n) -> Result<T, <Result<T, E> as InstrumentResult<T>>::Instrumented>

Instrument an Error by bundling it with a SpanTrace Read more
","InstrumentResult","hotshot_query_service::QueryResult"],["
source§

impl<T, E> Section for Result<T, E>
where\n E: Into<Report>,

§

type Return = Result<T, Report>

The return type of each method after adding context
source§

fn note<D>(self, note: D) -> <Result<T, E> as Section>::Return
where\n D: Display + Send + Sync + 'static,

Add a Note to an error report, to be displayed after the chain of errors. Read more
source§

fn with_note<D, F>(self, note: F) -> <Result<T, E> as Section>::Return
where\n D: Display + Send + Sync + 'static,\n F: FnOnce() -> D,

Add a Note to an error report, to be displayed after the chain of errors. The closure to\ncreate the Note is lazily evaluated only in the case of an error. Read more
source§

fn warning<D>(self, warning: D) -> <Result<T, E> as Section>::Return
where\n D: Display + Send + Sync + 'static,

Add a Warning to an error report, to be displayed after the chain of errors.
source§

fn with_warning<D, F>(self, warning: F) -> <Result<T, E> as Section>::Return
where\n D: Display + Send + Sync + 'static,\n F: FnOnce() -> D,

Add a Warning to an error report, to be displayed after the chain of errors. The closure to\ncreate the Warning is lazily evaluated only in the case of an error.
source§

fn suggestion<D>(self, suggestion: D) -> <Result<T, E> as Section>::Return
where\n D: Display + Send + Sync + 'static,

Add a Suggestion to an error report, to be displayed after the chain of errors.
source§

fn with_suggestion<D, F>(\n self,\n suggestion: F\n) -> <Result<T, E> as Section>::Return
where\n D: Display + Send + Sync + 'static,\n F: FnOnce() -> D,

Add a Suggestion to an error report, to be displayed after the chain of errors. The closure\nto create the Suggestion is lazily evaluated only in the case of an error.
source§

fn with_section<D, F>(self, section: F) -> <Result<T, E> as Section>::Return
where\n D: Display + Send + Sync + 'static,\n F: FnOnce() -> D,

Add a Section to an error report, to be displayed after the chain of errors. The closure to\ncreate the Section is lazily evaluated only in the case of an error. Read more
source§

fn section<D>(self, section: D) -> <Result<T, E> as Section>::Return
where\n D: Display + Send + Sync + 'static,

Add a section to an error report, to be displayed after the chain of errors. Read more
source§

fn error<E2>(self, error: E2) -> <Result<T, E> as Section>::Return
where\n E2: Error + Send + Sync + 'static,

Add an error section to an error report, to be displayed after the primary error message\nsection. Read more
source§

fn with_error<E2, F>(self, error: F) -> <Result<T, E> as Section>::Return
where\n F: FnOnce() -> E2,\n E2: Error + Send + Sync + 'static,

Add an error section to an error report, to be displayed after the primary error message\nsection. The closure to create the Section is lazily evaluated only in the case of an error. Read more
","Section","hotshot_query_service::QueryResult"],["
source§

impl<T, E> WrapErr<T, E> for Result<T, E>
where\n E: StdError + Send + Sync + 'static,

source§

fn wrap_err<D>(self, msg: D) -> Result<T, Report>
where\n D: Display + Send + Sync + 'static,

Wrap the error value with a new adhoc error
source§

fn wrap_err_with<D, F>(self, msg: F) -> Result<T, Report>
where\n D: Display + Send + Sync + 'static,\n F: FnOnce() -> D,

Wrap the error value with a new adhoc error that is evaluated lazily\nonly once an error does occur.
source§

fn context<D>(self, msg: D) -> Result<T, Report>
where\n D: Display + Send + Sync + 'static,

Compatibility re-export of wrap_err for interop with anyhow
source§

fn with_context<D, F>(self, msg: F) -> Result<T, Report>
where\n D: Display + Send + Sync + 'static,\n F: FnOnce() -> D,

Compatibility re-export of wrap_err_with for interop with anyhow
","WrapErr","hotshot_query_service::QueryResult"],["
§

impl<E> ResultVoidErrExt<E> for Result<Void, E>

§

fn void_unwrap_err(self) -> E

Get the error out of an always-err Result.

\n

Never panics, since it is statically known to be Err.

\n
","ResultVoidErrExt","hotshot_query_service::QueryResult"],["
§

impl<R, A> RestrictedMath for Result<R, A>
where\n R: RestrictedMath,\n A: 'static + Copy,

§

type Arg = <R as RestrictedMath>::Arg

Argument for the math operations
§

type Value = <R as RestrictedMath>::Value

Return value, generally the same as Arg
§

fn checked_add(\n &self,\n arg: <Result<R, A> as RestrictedMath>::Arg\n) -> Result<Restrict<<Result<R, A> as RestrictedMath>::Value>, <Result<R, A> as RestrictedMath>::Arg>

Checked addition, see usize::checked_add
§

fn checked_sub(\n &self,\n arg: <Result<R, A> as RestrictedMath>::Arg\n) -> Result<Restrict<<Result<R, A> as RestrictedMath>::Value>, <Result<R, A> as RestrictedMath>::Arg>

Checked subtraction, see usize::checked_sub
§

fn checked_mul(\n &self,\n arg: <Result<R, A> as RestrictedMath>::Arg\n) -> Result<Restrict<<Result<R, A> as RestrictedMath>::Value>, <Result<R, A> as RestrictedMath>::Arg>

Checked multiplication, see usize::checked_mul
","RestrictedMath","hotshot_query_service::QueryResult"],["
§

impl<T, E> ResultExt<T, E> for Result<T, E>

§

fn context<X>(self, x: X) -> Result<T, Context<X, E>>

The method is use to add context information to current operation Read more
","ResultExt","hotshot_query_service::QueryResult"],["
§

impl<T, E> Archive for Result<T, E>
where\n T: Archive,\n E: Archive,

§

type Archived = ArchivedResult<<T as Archive>::Archived, <E as Archive>::Archived>

The archived representation of this type. Read more
§

type Resolver = Result<<T as Archive>::Resolver, <E as Archive>::Resolver>

The resolver for this type. It must contain all the additional information from serializing\nneeded to make the archived type from the normal type.
§

unsafe fn resolve(\n &self,\n pos: usize,\n resolver: <Result<T, E> as Archive>::Resolver,\n out: *mut <Result<T, E> as Archive>::Archived\n)

Creates the archived version of this value at the given position and writes it to the given\noutput. Read more
","Archive","hotshot_query_service::QueryResult"],["
§

impl<T, U, E, F> PartialEq<ArchivedResult<T, E>> for Result<U, F>
where\n T: PartialEq<U>,\n E: PartialEq<F>,

§

fn eq(&self, other: &ArchivedResult<T, E>) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq>","hotshot_query_service::QueryResult"],["
§

impl<T, E, S> Serialize<S> for Result<T, E>
where\n T: Serialize<S>,\n E: Serialize<S>,\n S: Fallible + ?Sized,

§

fn serialize(\n &self,\n serializer: &mut S\n) -> Result<<Result<T, E> as Archive>::Resolver, <S as Fallible>::Error>

Writes the dependencies for the object and returns a resolver that can create the archived\ntype.
","Serialize","hotshot_query_service::QueryResult"],["
§

impl<T, E> TestTermination for Result<T, E>

§

fn is_success(&self) -> bool

","TestTermination","hotshot_query_service::QueryResult"],["
source§

impl<T, E> Reply for Result<T, E>
where\n T: Reply,\n E: Reply,

source§

fn into_response(self) -> Response<Body>

Converts the given value into a Response.
","Reply","hotshot_query_service::QueryResult"],["
§

impl<T, E> NonBlockingResult for Result<T, E>
where\n E: NonBlockingError,

§

type Result = Result<Option<T>, E>

Type of the converted result: Result<Option<T>, E>
§

fn no_block(self) -> <Result<T, E> as NonBlockingResult>::Result

Perform the non-block conversion.
","NonBlockingResult","hotshot_query_service::QueryResult"],["
§

impl<T, E> WrapMigrationError<T, E> for Result<T, E>
where\n E: Error + Send + Sync + 'static,

§

fn migration_err(\n self,\n msg: &str,\n applied_migrations: Option<&[Migration]>\n) -> Result<T, Error>

","WrapMigrationError","hotshot_query_service::QueryResult"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/hotshot/traits/election/static_committee/struct.GeneralStaticCommittee.js b/type.impl/hotshot/traits/election/static_committee/struct.GeneralStaticCommittee.js index 1c100a11d..1d7fb59bc 100644 --- a/type.impl/hotshot/traits/election/static_committee/struct.GeneralStaticCommittee.js +++ b/type.impl/hotshot/traits/election/static_committee/struct.GeneralStaticCommittee.js @@ -1,3 +1,3 @@ (function() {var type_impls = { -"hotshot_query_service":[["
§

impl<T, PUBKEY> GeneralStaticCommittee<T, PUBKEY>
where\n PUBKEY: SignatureKey,

pub fn new(\n _nodes: &[PUBKEY],\n nodes_with_stake: Vec<<PUBKEY as SignatureKey>::StakeTableEntry>,\n nodes_without_stake: Vec<PUBKEY>\n) -> GeneralStaticCommittee<T, PUBKEY>

Creates a new dummy elector

\n
",0,"hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<TYPES, PUBKEY> GeneralStaticCommittee<TYPES, PUBKEY>
where\n PUBKEY: SignatureKey + 'static,\n TYPES: NodeType<SignatureKey = PUBKEY, ElectionConfigType = StaticElectionConfig>,

pub fn non_staked_nodes_count(&self) -> usize

get the non-staked builder nodes

\n

pub fn get_non_staked_nodes(&self) -> Vec<PUBKEY>

get all the non-staked nodes

\n
",0,"hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<T, PUBKEY> Debug for GeneralStaticCommittee<T, PUBKEY>
where\n T: Debug,\n PUBKEY: Debug + SignatureKey,\n <PUBKEY as SignatureKey>::StakeTableEntry: Debug,

§

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

Formats the value using the given formatter. Read more
","Debug","hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<T, PUBKEY> PartialEq for GeneralStaticCommittee<T, PUBKEY>
where\n T: PartialEq,\n PUBKEY: PartialEq + SignatureKey,\n <PUBKEY as SignatureKey>::StakeTableEntry: PartialEq,

§

fn eq(&self, other: &GeneralStaticCommittee<T, PUBKEY>) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<T, PUBKEY> Eq for GeneralStaticCommittee<T, PUBKEY>
where\n T: Eq,\n PUBKEY: Eq + SignatureKey,\n <PUBKEY as SignatureKey>::StakeTableEntry: Eq,

","Eq","hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<T, PUBKEY> StructuralPartialEq for GeneralStaticCommittee<T, PUBKEY>
where\n PUBKEY: SignatureKey,

","StructuralPartialEq","hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<T, PUBKEY> Clone for GeneralStaticCommittee<T, PUBKEY>
where\n T: Clone,\n PUBKEY: Clone + SignatureKey,\n <PUBKEY as SignatureKey>::StakeTableEntry: Clone,

§

fn clone(&self) -> GeneralStaticCommittee<T, PUBKEY>

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
","Clone","hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<T, PUBKEY> Hash for GeneralStaticCommittee<T, PUBKEY>
where\n T: Hash,\n PUBKEY: Hash + SignatureKey,\n <PUBKEY as SignatureKey>::StakeTableEntry: Hash,

§

fn hash<__H>(&self, state: &mut __H)
where\n __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where\n H: Hasher,\n Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
","Hash","hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<TYPES, PUBKEY> Membership<TYPES> for GeneralStaticCommittee<TYPES, PUBKEY>
where\n PUBKEY: SignatureKey + 'static,\n TYPES: NodeType<SignatureKey = PUBKEY, ElectionConfigType = StaticElectionConfig>,

§

fn get_committee_qc_stake_table(\n &self\n) -> Vec<<PUBKEY as SignatureKey>::StakeTableEntry>

Clone the public key and corresponding stake table for current elected committee

\n
§

fn get_leader(&self, view_number: <TYPES as NodeType>::Time) -> PUBKEY

Index the vector of public keys with the current view number

\n
§

fn has_stake(&self, pub_key: &PUBKEY) -> bool

Check if a key has stake
§

fn get_stake(\n &self,\n pub_key: &<TYPES as NodeType>::SignatureKey\n) -> Option<<<TYPES as NodeType>::SignatureKey as SignatureKey>::StakeTableEntry>

Get the stake table entry for a public key, returns None if the\nkey is not in the table
§

fn default_election_config(\n num_nodes_with_stake: u64,\n num_nodes_without_stake: u64\n) -> <TYPES as NodeType>::ElectionConfigType

generate a default election configuration
§

fn create_election(\n entries: Vec<PeerConfig<PUBKEY>>,\n config: <TYPES as NodeType>::ElectionConfigType\n) -> GeneralStaticCommittee<TYPES, PUBKEY>

create an election\nTODO may want to move this to a testableelection trait
§

fn total_nodes(&self) -> usize

Returns the number of total nodes in the committee
§

fn success_threshold(&self) -> NonZeroU64

Returns the threshold for a specific Membership implementation
§

fn failure_threshold(&self) -> NonZeroU64

Returns the threshold for a specific Membership implementation
§

fn upgrade_threshold(&self) -> NonZeroU64

Returns the threshold required to upgrade the network protocol
§

fn get_staked_committee(\n &self,\n _view_number: <TYPES as NodeType>::Time\n) -> BTreeSet<<TYPES as NodeType>::SignatureKey>

The staked members of the committee for view view_number.
§

fn get_non_staked_committee(\n &self,\n _view_number: <TYPES as NodeType>::Time\n) -> BTreeSet<<TYPES as NodeType>::SignatureKey>

The non-staked members of the committee for view view_number.
§

fn get_whole_committee(\n &self,\n view_number: <TYPES as NodeType>::Time\n) -> BTreeSet<<TYPES as NodeType>::SignatureKey>

Get whole (staked + non-staked) committee for view view_number.
","Membership","hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<T, PUBKEY> StructuralEq for GeneralStaticCommittee<T, PUBKEY>
where\n PUBKEY: SignatureKey,

","StructuralEq","hotshot_query_service::testing::mocks::MockMembership"]] +"hotshot_query_service":[["
§

impl<T, PUBKEY> GeneralStaticCommittee<T, PUBKEY>
where\n PUBKEY: SignatureKey,

pub fn new(\n _nodes: &[PUBKEY],\n nodes_with_stake: Vec<<PUBKEY as SignatureKey>::StakeTableEntry>,\n nodes_without_stake: Vec<PUBKEY>\n) -> GeneralStaticCommittee<T, PUBKEY>

Creates a new dummy elector

\n
",0,"hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<TYPES, PUBKEY> GeneralStaticCommittee<TYPES, PUBKEY>
where\n PUBKEY: SignatureKey + 'static,\n TYPES: NodeType<SignatureKey = PUBKEY, ElectionConfigType = StaticElectionConfig>,

pub fn non_staked_nodes_count(&self) -> usize

get the non-staked builder nodes

\n

pub fn get_non_staked_nodes(&self) -> Vec<PUBKEY>

get all the non-staked nodes

\n
",0,"hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<T, PUBKEY> Debug for GeneralStaticCommittee<T, PUBKEY>
where\n T: Debug,\n PUBKEY: Debug + SignatureKey,\n <PUBKEY as SignatureKey>::StakeTableEntry: Debug,

§

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

Formats the value using the given formatter. Read more
","Debug","hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<TYPES, PUBKEY> Membership<TYPES> for GeneralStaticCommittee<TYPES, PUBKEY>
where\n PUBKEY: SignatureKey + 'static,\n TYPES: NodeType<SignatureKey = PUBKEY, ElectionConfigType = StaticElectionConfig>,

§

fn get_committee_qc_stake_table(\n &self\n) -> Vec<<PUBKEY as SignatureKey>::StakeTableEntry>

Clone the public key and corresponding stake table for current elected committee

\n
§

fn get_leader(&self, view_number: <TYPES as NodeType>::Time) -> PUBKEY

Index the vector of public keys with the current view number

\n
§

fn has_stake(&self, pub_key: &PUBKEY) -> bool

Check if a key has stake
§

fn get_stake(\n &self,\n pub_key: &<TYPES as NodeType>::SignatureKey\n) -> Option<<<TYPES as NodeType>::SignatureKey as SignatureKey>::StakeTableEntry>

Get the stake table entry for a public key, returns None if the\nkey is not in the table
§

fn default_election_config(\n num_nodes_with_stake: u64,\n num_nodes_without_stake: u64\n) -> <TYPES as NodeType>::ElectionConfigType

generate a default election configuration
§

fn create_election(\n entries: Vec<PeerConfig<PUBKEY>>,\n config: <TYPES as NodeType>::ElectionConfigType\n) -> GeneralStaticCommittee<TYPES, PUBKEY>

create an election\nTODO may want to move this to a testableelection trait
§

fn total_nodes(&self) -> usize

Returns the number of total nodes in the committee
§

fn success_threshold(&self) -> NonZeroU64

Returns the threshold for a specific Membership implementation
§

fn failure_threshold(&self) -> NonZeroU64

Returns the threshold for a specific Membership implementation
§

fn upgrade_threshold(&self) -> NonZeroU64

Returns the threshold required to upgrade the network protocol
§

fn get_staked_committee(\n &self,\n _view_number: <TYPES as NodeType>::Time\n) -> BTreeSet<<TYPES as NodeType>::SignatureKey>

The staked members of the committee for view view_number.
§

fn get_non_staked_committee(\n &self,\n _view_number: <TYPES as NodeType>::Time\n) -> BTreeSet<<TYPES as NodeType>::SignatureKey>

The non-staked members of the committee for view view_number.
§

fn get_whole_committee(\n &self,\n view_number: <TYPES as NodeType>::Time\n) -> BTreeSet<<TYPES as NodeType>::SignatureKey>

Get whole (staked + non-staked) committee for view view_number.
","Membership","hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<T, PUBKEY> PartialEq for GeneralStaticCommittee<T, PUBKEY>
where\n T: PartialEq,\n PUBKEY: PartialEq + SignatureKey,\n <PUBKEY as SignatureKey>::StakeTableEntry: PartialEq,

§

fn eq(&self, other: &GeneralStaticCommittee<T, PUBKEY>) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<T, PUBKEY> Eq for GeneralStaticCommittee<T, PUBKEY>
where\n T: Eq,\n PUBKEY: Eq + SignatureKey,\n <PUBKEY as SignatureKey>::StakeTableEntry: Eq,

","Eq","hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<T, PUBKEY> StructuralPartialEq for GeneralStaticCommittee<T, PUBKEY>
where\n PUBKEY: SignatureKey,

","StructuralPartialEq","hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<T, PUBKEY> Clone for GeneralStaticCommittee<T, PUBKEY>
where\n T: Clone,\n PUBKEY: Clone + SignatureKey,\n <PUBKEY as SignatureKey>::StakeTableEntry: Clone,

§

fn clone(&self) -> GeneralStaticCommittee<T, PUBKEY>

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
","Clone","hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<T, PUBKEY> Hash for GeneralStaticCommittee<T, PUBKEY>
where\n T: Hash,\n PUBKEY: Hash + SignatureKey,\n <PUBKEY as SignatureKey>::StakeTableEntry: Hash,

§

fn hash<__H>(&self, state: &mut __H)
where\n __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where\n H: Hasher,\n Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
","Hash","hotshot_query_service::testing::mocks::MockMembership"],["
§

impl<T, PUBKEY> StructuralEq for GeneralStaticCommittee<T, PUBKEY>
where\n PUBKEY: SignatureKey,

","StructuralEq","hotshot_query_service::testing::mocks::MockMembership"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/hotshot/traits/networking/memory_network/struct.MemoryNetwork.js b/type.impl/hotshot/traits/networking/memory_network/struct.MemoryNetwork.js index ac2a6c8a0..798cc342e 100644 --- a/type.impl/hotshot/traits/networking/memory_network/struct.MemoryNetwork.js +++ b/type.impl/hotshot/traits/networking/memory_network/struct.MemoryNetwork.js @@ -1,3 +1,3 @@ (function() {var type_impls = { -"hotshot_query_service":[["
§

impl<M, K> MemoryNetwork<M, K>
where\n M: NetworkMsg,\n K: SignatureKey,

pub fn new(\n pub_key: K,\n metrics: NetworkingMetricsValue,\n master_map: Arc<MasterMap<M, K>>,\n reliability_config: Option<Box<dyn NetworkReliability>>\n) -> MemoryNetwork<M, K>

Creates a new MemoryNetwork and hooks it up to the group through the provided MasterMap

\n
",0,"hotshot_query_service::testing::mocks::MockNetwork"],["
§

impl<M, K> Debug for MemoryNetwork<M, K>
where\n M: NetworkMsg,\n K: SignatureKey,

§

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

Formats the value using the given formatter. Read more
","Debug","hotshot_query_service::testing::mocks::MockNetwork"],["
§

impl<M, K> ConnectedNetwork<M, K> for MemoryNetwork<M, K>
where\n M: NetworkMsg,\n K: SignatureKey + 'static,

§

fn recv_msgs<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = Result<Vec<M>, NetworkError>> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n MemoryNetwork<M, K>: 'async_trait,

Receive one or many messages from the underlying network.

\n
Errors
\n

If the other side of the channel is closed

\n
§

fn wait_for_ready<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n MemoryNetwork<M, K>: 'async_trait,

Blocks until the network is successfully initialized
§

fn pause(&self)

Pauses the underlying network
§

fn resume(&self)

Resumes the underlying network
§

fn is_ready<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = bool> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n MemoryNetwork<M, K>: 'async_trait,

checks if the network is ready\nnonblocking
§

fn shut_down<'a, 'b>(\n &'a self\n) -> Pin<Box<dyn Future<Output = ()> + Send + Sync + 'b>>
where\n 'a: 'b,\n MemoryNetwork<M, K>: 'b,

Blocks until the network is shut down\nthen returns true
§

fn broadcast_message<'life0, 'async_trait>(\n &'life0 self,\n message: M,\n recipients: BTreeSet<K>\n) -> Pin<Box<dyn Future<Output = Result<(), NetworkError>> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n MemoryNetwork<M, K>: 'async_trait,

broadcast message to some subset of nodes\nblocking
§

fn da_broadcast_message<'life0, 'async_trait>(\n &'life0 self,\n message: M,\n recipients: BTreeSet<K>\n) -> Pin<Box<dyn Future<Output = Result<(), NetworkError>> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n MemoryNetwork<M, K>: 'async_trait,

broadcast a message only to a DA committee\nblocking
§

fn direct_message<'life0, 'async_trait>(\n &'life0 self,\n message: M,\n recipient: K\n) -> Pin<Box<dyn Future<Output = Result<(), NetworkError>> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n MemoryNetwork<M, K>: 'async_trait,

Sends a direct message to a specific node\nblocking
§

fn request_data<'life0, 'async_trait, TYPES>(\n &'life0 self,\n _request: M,\n _recipient: K\n) -> Pin<Box<dyn Future<Output = Result<ResponseMessage<TYPES>, NetworkError>> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n TYPES: 'async_trait + NodeType,\n Self: 'async_trait,

Ask request the network for some data. Returns the request ID for that data,\nThe ID returned can be used for cancelling the request
§

fn spawn_request_receiver_task<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = Option<Receiver<(M, ResponseChannel<M>)>>> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n Self: 'async_trait,

Spawn a request task in the given network layer. If it supports\nRequest and responses it will return the receiving end of a channel.\nRequests the network receives will be sent over this channel along\nwith a return channel to send the response back to. Read more
§

fn queue_node_lookup<'life0, 'async_trait>(\n &'life0 self,\n _view_number: ViewNumber,\n _pk: K\n) -> Pin<Box<dyn Future<Output = Result<(), SendError<Option<(ViewNumber, K)>>>> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n Self: 'async_trait,

queues lookup of a node
§

fn inject_consensus_info<'life0, 'async_trait>(\n &'life0 self,\n _event: ConsensusIntentEvent<K>\n) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n Self: 'async_trait,

Injects consensus data such as view number into the networking implementation\nblocking\nIdeally we would pass in the Time type, but that requires making the entire trait generic over NodeType
§

fn update_view(&self, _view: u64)

handles view update
","ConnectedNetwork","hotshot_query_service::testing::mocks::MockNetwork"],["
§

impl<TYPES> TestableNetworkingImplementation<TYPES> for MemoryNetwork<Message<TYPES>, <TYPES as NodeType>::SignatureKey>
where\n TYPES: NodeType,

§

fn generator(\n _expected_node_count: usize,\n _num_bootstrap: usize,\n _network_id: usize,\n _da_committee_size: usize,\n _is_da: bool,\n reliability_config: Option<Box<dyn NetworkReliability>>,\n _secondary_network_delay: Duration\n) -> Box<dyn Fn(u64) -> (Arc<MemoryNetwork<Message<TYPES>, <TYPES as NodeType>::SignatureKey>>, Arc<MemoryNetwork<Message<TYPES>, <TYPES as NodeType>::SignatureKey>>)>

generates a network given an expected node count
§

fn in_flight_message_count(&self) -> Option<usize>

Get the number of messages in-flight. Read more
","TestableNetworkingImplementation","hotshot_query_service::testing::mocks::MockNetwork"],["
§

impl<M, K> Clone for MemoryNetwork<M, K>
where\n M: Clone + NetworkMsg,\n K: Clone + SignatureKey,

§

fn clone(&self) -> MemoryNetwork<M, K>

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
","Clone","hotshot_query_service::testing::mocks::MockNetwork"]] +"hotshot_query_service":[["
§

impl<M, K> MemoryNetwork<M, K>
where\n M: NetworkMsg,\n K: SignatureKey,

pub fn new(\n pub_key: K,\n metrics: NetworkingMetricsValue,\n master_map: Arc<MasterMap<M, K>>,\n reliability_config: Option<Box<dyn NetworkReliability>>\n) -> MemoryNetwork<M, K>

Creates a new MemoryNetwork and hooks it up to the group through the provided MasterMap

\n
",0,"hotshot_query_service::testing::mocks::MockNetwork"],["
§

impl<TYPES> TestableNetworkingImplementation<TYPES> for MemoryNetwork<Message<TYPES>, <TYPES as NodeType>::SignatureKey>
where\n TYPES: NodeType,

§

fn generator(\n _expected_node_count: usize,\n _num_bootstrap: usize,\n _network_id: usize,\n _da_committee_size: usize,\n _is_da: bool,\n reliability_config: Option<Box<dyn NetworkReliability>>,\n _secondary_network_delay: Duration\n) -> Box<dyn Fn(u64) -> (Arc<MemoryNetwork<Message<TYPES>, <TYPES as NodeType>::SignatureKey>>, Arc<MemoryNetwork<Message<TYPES>, <TYPES as NodeType>::SignatureKey>>)>

generates a network given an expected node count
§

fn in_flight_message_count(&self) -> Option<usize>

Get the number of messages in-flight. Read more
","TestableNetworkingImplementation","hotshot_query_service::testing::mocks::MockNetwork"],["
§

impl<M, K> Debug for MemoryNetwork<M, K>
where\n M: NetworkMsg,\n K: SignatureKey,

§

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

Formats the value using the given formatter. Read more
","Debug","hotshot_query_service::testing::mocks::MockNetwork"],["
§

impl<M, K> Clone for MemoryNetwork<M, K>
where\n M: Clone + NetworkMsg,\n K: Clone + SignatureKey,

§

fn clone(&self) -> MemoryNetwork<M, K>

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
","Clone","hotshot_query_service::testing::mocks::MockNetwork"],["
§

impl<M, K> ConnectedNetwork<M, K> for MemoryNetwork<M, K>
where\n M: NetworkMsg,\n K: SignatureKey + 'static,

§

fn recv_msgs<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = Result<Vec<M>, NetworkError>> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n MemoryNetwork<M, K>: 'async_trait,

Receive one or many messages from the underlying network.

\n
Errors
\n

If the other side of the channel is closed

\n
§

fn wait_for_ready<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n MemoryNetwork<M, K>: 'async_trait,

Blocks until the network is successfully initialized
§

fn pause(&self)

Pauses the underlying network
§

fn resume(&self)

Resumes the underlying network
§

fn is_ready<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = bool> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n MemoryNetwork<M, K>: 'async_trait,

checks if the network is ready\nnonblocking
§

fn shut_down<'a, 'b>(\n &'a self\n) -> Pin<Box<dyn Future<Output = ()> + Send + Sync + 'b>>
where\n 'a: 'b,\n MemoryNetwork<M, K>: 'b,

Blocks until the network is shut down\nthen returns true
§

fn broadcast_message<'life0, 'async_trait, VER>(\n &'life0 self,\n message: M,\n recipients: BTreeSet<K>,\n __arg3: VER\n) -> Pin<Box<dyn Future<Output = Result<(), NetworkError>> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n VER: 'async_trait + 'static + StaticVersionType,\n MemoryNetwork<M, K>: 'async_trait,

broadcast message to some subset of nodes\nblocking
§

fn da_broadcast_message<'life0, 'async_trait, VER>(\n &'life0 self,\n message: M,\n recipients: BTreeSet<K>,\n bind_version: VER\n) -> Pin<Box<dyn Future<Output = Result<(), NetworkError>> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n VER: 'async_trait + 'static + StaticVersionType,\n MemoryNetwork<M, K>: 'async_trait,

broadcast a message only to a DA committee\nblocking
§

fn direct_message<'life0, 'async_trait, VER>(\n &'life0 self,\n message: M,\n recipient: K,\n __arg3: VER\n) -> Pin<Box<dyn Future<Output = Result<(), NetworkError>> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n VER: 'async_trait + 'static + StaticVersionType,\n MemoryNetwork<M, K>: 'async_trait,

Sends a direct message to a specific node\nblocking
§

fn request_data<'life0, 'async_trait, TYPES, VER>(\n &'life0 self,\n _request: M,\n _recipient: K,\n _bind_version: VER\n) -> Pin<Box<dyn Future<Output = Result<ResponseMessage<TYPES>, NetworkError>> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n TYPES: 'async_trait + NodeType,\n VER: 'async_trait + StaticVersionType + 'static,\n Self: 'async_trait,

Ask request the network for some data. Returns the request ID for that data,\nThe ID returned can be used for cancelling the request
§

fn spawn_request_receiver_task<'life0, 'async_trait, VER>(\n &'life0 self,\n _bind_version: VER\n) -> Pin<Box<dyn Future<Output = Option<Receiver<(M, ResponseChannel<M>)>>> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n VER: 'async_trait + StaticVersionType + 'static,\n Self: 'async_trait,

Spawn a request task in the given network layer. If it supports\nRequest and responses it will return the receiving end of a channel.\nRequests the network receives will be sent over this channel along\nwith a return channel to send the response back to. Read more
§

fn queue_node_lookup<'life0, 'async_trait>(\n &'life0 self,\n _view_number: ViewNumber,\n _pk: K\n) -> Pin<Box<dyn Future<Output = Result<(), SendError<Option<(ViewNumber, K)>>>> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n Self: 'async_trait,

queues lookup of a node
§

fn inject_consensus_info<'life0, 'async_trait>(\n &'life0 self,\n _event: ConsensusIntentEvent<K>\n) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n Self: 'async_trait,

Injects consensus data such as view number into the networking implementation\nblocking\nIdeally we would pass in the Time type, but that requires making the entire trait generic over NodeType
§

fn update_view(&self, _view: u64)

handles view update
","ConnectedNetwork","hotshot_query_service::testing::mocks::MockNetwork"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/hotshot_example_types/block_types/struct.TestBlockHeader.js b/type.impl/hotshot_example_types/block_types/struct.TestBlockHeader.js index 89ee5e22b..180e95dde 100644 --- a/type.impl/hotshot_example_types/block_types/struct.TestBlockHeader.js +++ b/type.impl/hotshot_example_types/block_types/struct.TestBlockHeader.js @@ -1,3 +1,3 @@ (function() {var type_impls = { -"hotshot_query_service":[["
§

impl Committable for TestBlockHeader

§

fn commit(&self) -> Commitment<TestBlockHeader>

Create a binding commitment to self.
§

fn tag() -> String

Tag that should be used when serializing commitments to this type. Read more
","Committable","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl Eq for TestBlockHeader

","Eq","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl Clone for TestBlockHeader

§

fn clone(&self) -> TestBlockHeader

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
","Clone","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl StructuralPartialEq for TestBlockHeader

","StructuralPartialEq","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl Hash for TestBlockHeader

§

fn hash<__H>(&self, state: &mut __H)
where\n __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where\n H: Hasher,\n Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
","Hash","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl<TYPES> BlockHeader<TYPES> for TestBlockHeader
where\n TYPES: NodeType<BlockHeader = TestBlockHeader, BlockPayload = TestBlockPayload>,

§

async fn new(\n _parent_state: &<TYPES as NodeType>::ValidatedState,\n _instance_state: &<<TYPES as NodeType>::ValidatedState as ValidatedState<TYPES>>::Instance,\n parent_leaf: &Leaf<TYPES>,\n payload_commitment: <VidSchemeType as VidScheme>::Commit,\n _metadata: <<TYPES as NodeType>::BlockPayload as BlockPayload>::Metadata\n) -> TestBlockHeader

Build a header with the parent validate state, instance-level state, parent leaf, payload\ncommitment, and metadata.
§

fn genesis(\n _instance_state: &<<TYPES as NodeType>::ValidatedState as ValidatedState<TYPES>>::Instance,\n payload_commitment: <VidSchemeType as VidScheme>::Commit,\n _metadata: <<TYPES as NodeType>::BlockPayload as BlockPayload>::Metadata\n) -> TestBlockHeader

Build the genesis header, payload, and metadata.
§

fn block_number(&self) -> u64

Get the block number.
§

fn payload_commitment(&self) -> <VidSchemeType as VidScheme>::Commit

Get the payload commitment.
§

fn metadata(\n &self\n) -> &<<TYPES as NodeType>::BlockPayload as BlockPayload>::Metadata

Get the metadata.
","BlockHeader","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl Debug for TestBlockHeader

§

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

Formats the value using the given formatter. Read more
","Debug","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl<'de> Deserialize<'de> for TestBlockHeader

§

fn deserialize<__D>(\n __deserializer: __D\n) -> Result<TestBlockHeader, <__D as Deserializer<'de>>::Error>
where\n __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
","Deserialize<'de>","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl StructuralEq for TestBlockHeader

","StructuralEq","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl Serialize for TestBlockHeader

§

fn serialize<__S>(\n &self,\n __serializer: __S\n) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
where\n __S: Serializer,

Serialize this value into the given Serde serializer. Read more
","Serialize","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl PartialEq for TestBlockHeader

§

fn eq(&self, other: &TestBlockHeader) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","hotshot_query_service::testing::mocks::MockHeader"]] +"hotshot_query_service":[["
§

impl Committable for TestBlockHeader

§

fn commit(&self) -> Commitment<TestBlockHeader>

Create a binding commitment to self.
§

fn tag() -> String

Tag that should be used when serializing commitments to this type. Read more
","Committable","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl Clone for TestBlockHeader

§

fn clone(&self) -> TestBlockHeader

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
","Clone","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl Hash for TestBlockHeader

§

fn hash<__H>(&self, state: &mut __H)
where\n __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where\n H: Hasher,\n Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
","Hash","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl Debug for TestBlockHeader

§

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

Formats the value using the given formatter. Read more
","Debug","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl<'de> Deserialize<'de> for TestBlockHeader

§

fn deserialize<__D>(\n __deserializer: __D\n) -> Result<TestBlockHeader, <__D as Deserializer<'de>>::Error>
where\n __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
","Deserialize<'de>","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl<TYPES> BlockHeader<TYPES> for TestBlockHeader
where\n TYPES: NodeType<BlockHeader = TestBlockHeader, BlockPayload = TestBlockPayload>,

§

async fn new(\n _parent_state: &<TYPES as NodeType>::ValidatedState,\n _instance_state: &<<TYPES as NodeType>::ValidatedState as ValidatedState<TYPES>>::Instance,\n parent_leaf: &Leaf<TYPES>,\n payload_commitment: <VidSchemeType as VidScheme>::Commit,\n _metadata: <<TYPES as NodeType>::BlockPayload as BlockPayload>::Metadata\n) -> TestBlockHeader

Build a header with the parent validate state, instance-level state, parent leaf, payload\ncommitment, and metadata.
§

fn genesis(\n _instance_state: &<<TYPES as NodeType>::ValidatedState as ValidatedState<TYPES>>::Instance,\n payload_commitment: <VidSchemeType as VidScheme>::Commit,\n _metadata: <<TYPES as NodeType>::BlockPayload as BlockPayload>::Metadata\n) -> TestBlockHeader

Build the genesis header, payload, and metadata.
§

fn block_number(&self) -> u64

Get the block number.
§

fn payload_commitment(&self) -> <VidSchemeType as VidScheme>::Commit

Get the payload commitment.
§

fn metadata(\n &self\n) -> &<<TYPES as NodeType>::BlockPayload as BlockPayload>::Metadata

Get the metadata.
","BlockHeader","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl StructuralEq for TestBlockHeader

","StructuralEq","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl Serialize for TestBlockHeader

§

fn serialize<__S>(\n &self,\n __serializer: __S\n) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
where\n __S: Serializer,

Serialize this value into the given Serde serializer. Read more
","Serialize","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl StructuralPartialEq for TestBlockHeader

","StructuralPartialEq","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl PartialEq for TestBlockHeader

§

fn eq(&self, other: &TestBlockHeader) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","hotshot_query_service::testing::mocks::MockHeader"],["
§

impl Eq for TestBlockHeader

","Eq","hotshot_query_service::testing::mocks::MockHeader"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/hotshot_example_types/block_types/struct.TestBlockPayload.js b/type.impl/hotshot_example_types/block_types/struct.TestBlockPayload.js index e1513573a..e2888de88 100644 --- a/type.impl/hotshot_example_types/block_types/struct.TestBlockPayload.js +++ b/type.impl/hotshot_example_types/block_types/struct.TestBlockPayload.js @@ -1,3 +1,3 @@ (function() {var type_impls = { -"hotshot_query_service":[["
§

impl TestBlockPayload

pub fn genesis() -> TestBlockPayload

Create a genesis block payload with bytes vec![0], to be used for\nconsensus task initiation.

\n
Panics
\n

If the VidScheme construction fails.

\n
",0,"hotshot_query_service::testing::mocks::MockPayload"],["
§

impl Eq for TestBlockPayload

","Eq","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl Clone for TestBlockPayload

§

fn clone(&self) -> TestBlockPayload

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
","Clone","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl TestableBlock for TestBlockPayload

§

fn genesis() -> TestBlockPayload

generate a genesis block
§

fn txn_count(&self) -> u64

the number of transactions in this block
","TestableBlock","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl StructuralPartialEq for TestBlockPayload

","StructuralPartialEq","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl Hash for TestBlockPayload

§

fn hash<__H>(&self, state: &mut __H)
where\n __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where\n H: Hasher,\n Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
","Hash","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl Debug for TestBlockPayload

§

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

Formats the value using the given formatter. Read more
","Debug","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl<'de> Deserialize<'de> for TestBlockPayload

§

fn deserialize<__D>(\n __deserializer: __D\n) -> Result<TestBlockPayload, <__D as Deserializer<'de>>::Error>
where\n __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
","Deserialize<'de>","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl StructuralEq for TestBlockPayload

","StructuralEq","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl Serialize for TestBlockPayload

§

fn serialize<__S>(\n &self,\n __serializer: __S\n) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
where\n __S: Serializer,

Serialize this value into the given Serde serializer. Read more
","Serialize","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl Display for TestBlockPayload

§

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

Formats the value using the given formatter. Read more
","Display","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl PartialEq for TestBlockPayload

§

fn eq(&self, other: &TestBlockPayload) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl BlockPayload for TestBlockPayload

§

type Error = BlockError

The error type for this type of block
§

type Transaction = TestTransaction

The type of the transitions we are applying
§

type Metadata = ()

Data created during block building which feeds into the block header
§

type Encode<'a> = <Vec<u8> as IntoIterator>::IntoIter

Encoded payload.
§

fn from_transactions(\n transactions: impl IntoIterator<Item = <TestBlockPayload as BlockPayload>::Transaction>\n) -> Result<(TestBlockPayload, <TestBlockPayload as BlockPayload>::Metadata), <TestBlockPayload as BlockPayload>::Error>

Build a payload and associated metadata with the transactions. Read more
§

fn from_bytes<E>(\n encoded_transactions: E,\n _metadata: &<TestBlockPayload as BlockPayload>::Metadata\n) -> TestBlockPayload
where\n E: Iterator<Item = u8>,

Build a payload with the encoded transaction bytes, metadata,\nand the associated number of VID storage nodes Read more
§

fn genesis() -> (TestBlockPayload, <TestBlockPayload as BlockPayload>::Metadata)

Build the genesis payload and metadata.
§

fn encode(\n &self\n) -> Result<<TestBlockPayload as BlockPayload>::Encode<'_>, <TestBlockPayload as BlockPayload>::Error>

Encode the payload Read more
§

fn transaction_commitments(\n &self,\n _metadata: &<TestBlockPayload as BlockPayload>::Metadata\n) -> Vec<Commitment<<TestBlockPayload as BlockPayload>::Transaction>>

List of transaction commitments.
§

fn builder_commitment(\n &self,\n _metadata: &<TestBlockPayload as BlockPayload>::Metadata\n) -> BuilderCommitment

Generate commitment that builders use to sign block options.
§

fn get_transactions(\n &self,\n _metadata: &<TestBlockPayload as BlockPayload>::Metadata\n) -> &Vec<<TestBlockPayload as BlockPayload>::Transaction>

Get the transactions in the payload.
","BlockPayload","hotshot_query_service::testing::mocks::MockPayload"]] +"hotshot_query_service":[["
§

impl TestBlockPayload

pub fn genesis() -> TestBlockPayload

Create a genesis block payload with bytes vec![0], to be used for\nconsensus task initiation.

\n
Panics
\n

If the VidScheme construction fails.

\n
",0,"hotshot_query_service::testing::mocks::MockPayload"],["
§

impl Clone for TestBlockPayload

§

fn clone(&self) -> TestBlockPayload

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
","Clone","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl Hash for TestBlockPayload

§

fn hash<__H>(&self, state: &mut __H)
where\n __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where\n H: Hasher,\n Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
","Hash","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl Debug for TestBlockPayload

§

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

Formats the value using the given formatter. Read more
","Debug","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl<'de> Deserialize<'de> for TestBlockPayload

§

fn deserialize<__D>(\n __deserializer: __D\n) -> Result<TestBlockPayload, <__D as Deserializer<'de>>::Error>
where\n __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
","Deserialize<'de>","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl StructuralEq for TestBlockPayload

","StructuralEq","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl BlockPayload for TestBlockPayload

§

type Error = BlockError

The error type for this type of block
§

type Transaction = TestTransaction

The type of the transitions we are applying
§

type Metadata = ()

Data created during block building which feeds into the block header
§

type Encode<'a> = <Vec<u8> as IntoIterator>::IntoIter

Encoded payload.
§

fn from_transactions(\n transactions: impl IntoIterator<Item = <TestBlockPayload as BlockPayload>::Transaction>\n) -> Result<(TestBlockPayload, <TestBlockPayload as BlockPayload>::Metadata), <TestBlockPayload as BlockPayload>::Error>

Build a payload and associated metadata with the transactions. Read more
§

fn from_bytes<E>(\n encoded_transactions: E,\n _metadata: &<TestBlockPayload as BlockPayload>::Metadata\n) -> TestBlockPayload
where\n E: Iterator<Item = u8>,

Build a payload with the encoded transaction bytes, metadata,\nand the associated number of VID storage nodes Read more
§

fn genesis() -> (TestBlockPayload, <TestBlockPayload as BlockPayload>::Metadata)

Build the genesis payload and metadata.
§

fn encode(\n &self\n) -> Result<<TestBlockPayload as BlockPayload>::Encode<'_>, <TestBlockPayload as BlockPayload>::Error>

Encode the payload Read more
§

fn transaction_commitments(\n &self,\n _metadata: &<TestBlockPayload as BlockPayload>::Metadata\n) -> Vec<Commitment<<TestBlockPayload as BlockPayload>::Transaction>>

List of transaction commitments.
§

fn builder_commitment(\n &self,\n _metadata: &<TestBlockPayload as BlockPayload>::Metadata\n) -> BuilderCommitment

Generate commitment that builders use to sign block options.
§

fn get_transactions(\n &self,\n _metadata: &<TestBlockPayload as BlockPayload>::Metadata\n) -> &Vec<<TestBlockPayload as BlockPayload>::Transaction>

Get the transactions in the payload.
","BlockPayload","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl Serialize for TestBlockPayload

§

fn serialize<__S>(\n &self,\n __serializer: __S\n) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
where\n __S: Serializer,

Serialize this value into the given Serde serializer. Read more
","Serialize","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl Display for TestBlockPayload

§

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

Formats the value using the given formatter. Read more
","Display","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl TestableBlock for TestBlockPayload

§

fn genesis() -> TestBlockPayload

generate a genesis block
§

fn txn_count(&self) -> u64

the number of transactions in this block
","TestableBlock","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl StructuralPartialEq for TestBlockPayload

","StructuralPartialEq","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl PartialEq for TestBlockPayload

§

fn eq(&self, other: &TestBlockPayload) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","hotshot_query_service::testing::mocks::MockPayload"],["
§

impl Eq for TestBlockPayload

","Eq","hotshot_query_service::testing::mocks::MockPayload"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/hotshot_example_types/block_types/struct.TestTransaction.js b/type.impl/hotshot_example_types/block_types/struct.TestTransaction.js index ad4fb5601..9e7cb1301 100644 --- a/type.impl/hotshot_example_types/block_types/struct.TestTransaction.js +++ b/type.impl/hotshot_example_types/block_types/struct.TestTransaction.js @@ -1,3 +1,3 @@ (function() {var type_impls = { -"hotshot_query_service":[["
§

impl TestTransaction

pub fn encode(transactions: Vec<TestTransaction>) -> Result<Vec<u8>, BlockError>

Encode a list of transactions into bytes.

\n
Errors
\n

If the transaction length conversion fails.

\n
",0,"hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl Committable for TestTransaction

§

fn commit(&self) -> Commitment<TestTransaction>

Create a binding commitment to self.
§

fn tag() -> String

Tag that should be used when serializing commitments to this type. Read more
","Committable","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl Eq for TestTransaction

","Eq","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl Clone for TestTransaction

§

fn clone(&self) -> TestTransaction

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
","Clone","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl StructuralPartialEq for TestTransaction

","StructuralPartialEq","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl Hash for TestTransaction

§

fn hash<__H>(&self, state: &mut __H)
where\n __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where\n H: Hasher,\n Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
","Hash","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl Transaction for TestTransaction

","Transaction","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl Debug for TestTransaction

§

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

Formats the value using the given formatter. Read more
","Debug","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl<'de> Deserialize<'de> for TestTransaction

§

fn deserialize<__D>(\n __deserializer: __D\n) -> Result<TestTransaction, <__D as Deserializer<'de>>::Error>
where\n __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
","Deserialize<'de>","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl StructuralEq for TestTransaction

","StructuralEq","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl Default for TestTransaction

§

fn default() -> TestTransaction

Returns the “default value” for a type. Read more
","Default","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl Serialize for TestTransaction

§

fn serialize<__S>(\n &self,\n __serializer: __S\n) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
where\n __S: Serializer,

Serialize this value into the given Serde serializer. Read more
","Serialize","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl PartialEq for TestTransaction

§

fn eq(&self, other: &TestTransaction) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","hotshot_query_service::testing::mocks::MockTransaction"]] +"hotshot_query_service":[["
§

impl TestTransaction

pub fn encode(transactions: Vec<TestTransaction>) -> Result<Vec<u8>, BlockError>

Encode a list of transactions into bytes.

\n
Errors
\n

If the transaction length conversion fails.

\n
",0,"hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl Committable for TestTransaction

§

fn commit(&self) -> Commitment<TestTransaction>

Create a binding commitment to self.
§

fn tag() -> String

Tag that should be used when serializing commitments to this type. Read more
","Committable","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl Transaction for TestTransaction

","Transaction","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl Clone for TestTransaction

§

fn clone(&self) -> TestTransaction

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
","Clone","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl Hash for TestTransaction

§

fn hash<__H>(&self, state: &mut __H)
where\n __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where\n H: Hasher,\n Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
","Hash","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl Debug for TestTransaction

§

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

Formats the value using the given formatter. Read more
","Debug","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl<'de> Deserialize<'de> for TestTransaction

§

fn deserialize<__D>(\n __deserializer: __D\n) -> Result<TestTransaction, <__D as Deserializer<'de>>::Error>
where\n __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
","Deserialize<'de>","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl StructuralEq for TestTransaction

","StructuralEq","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl Default for TestTransaction

§

fn default() -> TestTransaction

Returns the “default value” for a type. Read more
","Default","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl Serialize for TestTransaction

§

fn serialize<__S>(\n &self,\n __serializer: __S\n) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
where\n __S: Serializer,

Serialize this value into the given Serde serializer. Read more
","Serialize","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl StructuralPartialEq for TestTransaction

","StructuralPartialEq","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl PartialEq for TestTransaction

§

fn eq(&self, other: &TestTransaction) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","hotshot_query_service::testing::mocks::MockTransaction"],["
§

impl Eq for TestTransaction

","Eq","hotshot_query_service::testing::mocks::MockTransaction"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/hotshot_example_types/storage_types/struct.TestStorage.js b/type.impl/hotshot_example_types/storage_types/struct.TestStorage.js new file mode 100644 index 000000000..cedde59e5 --- /dev/null +++ b/type.impl/hotshot_example_types/storage_types/struct.TestStorage.js @@ -0,0 +1,3 @@ +(function() {var type_impls = { +"hotshot_query_service":[["
§

impl<TYPES> Storage<TYPES> for TestStorage<TYPES>
where\n TYPES: NodeType,

§

fn append_vid<'life0, 'life1, 'async_trait>(\n &'life0 self,\n proposal: &'life1 Proposal<TYPES, VidDisperse<TYPES>>\n) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n 'life1: 'async_trait,\n TestStorage<TYPES>: 'async_trait,

§

fn append_da<'life0, 'life1, 'async_trait>(\n &'life0 self,\n proposal: &'life1 Proposal<TYPES, DAProposal<TYPES>>\n) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where\n 'life0: 'async_trait,\n 'life1: 'async_trait,\n TestStorage<TYPES>: 'async_trait,

","Storage","hotshot_query_service::testing::mocks::MockStorage"],["
§

impl<TYPES> Clone for TestStorage<TYPES>
where\n TYPES: Clone + NodeType,

§

fn clone(&self) -> TestStorage<TYPES>

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
","Clone","hotshot_query_service::testing::mocks::MockStorage"],["
§

impl<TYPES> Debug for TestStorage<TYPES>
where\n TYPES: Debug + NodeType,

§

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

Formats the value using the given formatter. Read more
","Debug","hotshot_query_service::testing::mocks::MockStorage"],["
§

impl<TYPES> Default for TestStorage<TYPES>
where\n TYPES: NodeType,

§

fn default() -> TestStorage<TYPES>

Returns the “default value” for a type. Read more
","Default","hotshot_query_service::testing::mocks::MockStorage"]] +};if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/hotshot_query_service/data_source/fetching/struct.FetchingDataSource.js b/type.impl/hotshot_query_service/data_source/fetching/struct.FetchingDataSource.js index f9f7c633f..92aee883b 100644 --- a/type.impl/hotshot_query_service/data_source/fetching/struct.FetchingDataSource.js +++ b/type.impl/hotshot_query_service/data_source/fetching/struct.FetchingDataSource.js @@ -1,3 +1,3 @@ (function() {var type_impls = { -"hotshot_query_service":[["
source§

impl<Types, S, P> FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n Payload<Types>: QueryablePayload,\n Header<Types>: QueryableHeader<Types>,\n S: NodeDataSource<Types> + AvailabilityStorage<Types> + 'static,\n P: AvailabilityProvider<Types>,

source

pub fn builder(storage: S, provider: P) -> Builder<Types, S, P>

Build a FetchingDataSource with the given storage and provider.

\n
",0,"hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, P> FetchingDataSource<Types, S, P>
where\n Types: NodeType,

source

pub async fn storage(&self) -> StorageReadGuard<'_, Types, S>

Obtain direct, read-only access to the underlying local storage.

\n
source

pub async fn storage_mut(&self) -> StorageWriteGuard<'_, Types, S>

Obtain direct, mutable access the underlying local storage.

\n
",0,"hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, P> StatusDataSource for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n S: NodeDataSource<Types> + Send + Sync,\n P: Send + Sync,

source§

fn block_height<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = QueryResult<usize>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn metrics(&self) -> &PrometheusMetrics

source§

fn consensus_metrics(&self) -> QueryResult<PrometheusMetrics>

source§

fn elapsed_time_since_last_decide<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = QueryResult<u64>> + Send + 'async_trait>>
where\n Self: Sync + 'async_trait,\n 'life0: 'async_trait,

source§

fn mempool_info<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = QueryResult<MempoolQueryData>> + Send + 'async_trait>>
where\n Self: Sync + 'async_trait,\n 'life0: 'async_trait,

source§

fn success_rate<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = QueryResult<f64>> + Send + 'async_trait>>
where\n Self: Sync + 'async_trait,\n 'life0: 'async_trait,

","StatusDataSource","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, State, P> MerklizedStateDataSource<Types, State> for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n S: MerklizedStateDataSource<Types, State> + Send + Sync + 'static,\n P: AvailabilityProvider<Types>,\n State: MerklizedState<Types> + 'static,\n <State as MerkleTreeScheme>::Commitment: Send,

source§

fn get_path<'life0, 'async_trait>(\n &'life0 self,\n snapshot: Snapshot<Types, State>,\n key: State::Key\n) -> Pin<Box<dyn Future<Output = QueryResult<MerklePath<State::Entry, State::Key, State::T>>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

","MerklizedStateDataSource","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, P> Clone for FetchingDataSource<Types, S, P>
where\n Types: NodeType,

source§

fn clone(&self) -> Self

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
","Clone","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, P> VersionedDataSource for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n S: VersionedDataSource + Send + Sync,\n P: Send + Sync,

§

type Error = <S as VersionedDataSource>::Error

source§

fn commit<'life0, 'async_trait>(\n &'life0 mut self\n) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

Atomically commit to all outstanding modifications to the data. Read more
source§

fn revert<'life0, 'async_trait>(\n &'life0 mut self\n) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

Erase all oustanding modifications to the data. Read more
","VersionedDataSource","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, P> AvailabilityDataSource<Types> for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n Payload<Types>: QueryablePayload,\n S: AvailabilityStorage<Types> + 'static,\n P: AvailabilityProvider<Types>,

§

type LeafRange<R> = Pin<Box<dyn Stream<Item = Fetch<LeafQueryData<Types>>> + Send>>\nwhere\n R: RangeBounds<usize> + Send

§

type BlockRange<R> = Pin<Box<dyn Stream<Item = Fetch<BlockQueryData<Types>>> + Send>>\nwhere\n R: RangeBounds<usize> + Send

§

type PayloadRange<R> = Pin<Box<dyn Stream<Item = Fetch<PayloadQueryData<Types>>> + Send>>\nwhere\n R: RangeBounds<usize> + Send

§

type VidCommonRange<R> = Pin<Box<dyn Stream<Item = Fetch<VidCommonQueryData<Types>>> + Send>>\nwhere\n R: RangeBounds<usize> + Send

source§

fn get_leaf<'life0, 'async_trait, ID>(\n &'life0 self,\n id: ID\n) -> Pin<Box<dyn Future<Output = Fetch<LeafQueryData<Types>>> + Send + 'async_trait>>
where\n ID: Into<LeafId<Types>> + Send + Sync + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_block<'life0, 'async_trait, ID>(\n &'life0 self,\n id: ID\n) -> Pin<Box<dyn Future<Output = Fetch<BlockQueryData<Types>>> + Send + 'async_trait>>
where\n ID: Into<BlockId<Types>> + Send + Sync + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_payload<'life0, 'async_trait, ID>(\n &'life0 self,\n id: ID\n) -> Pin<Box<dyn Future<Output = Fetch<PayloadQueryData<Types>>> + Send + 'async_trait>>
where\n ID: Into<BlockId<Types>> + Send + Sync + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_vid_common<'life0, 'async_trait, ID>(\n &'life0 self,\n id: ID\n) -> Pin<Box<dyn Future<Output = Fetch<VidCommonQueryData<Types>>> + Send + 'async_trait>>
where\n ID: Into<BlockId<Types>> + Send + Sync + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_leaf_range<'life0, 'async_trait, R>(\n &'life0 self,\n range: R\n) -> Pin<Box<dyn Future<Output = Self::LeafRange<R>> + Send + 'async_trait>>
where\n R: RangeBounds<usize> + Send + 'static + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_block_range<'life0, 'async_trait, R>(\n &'life0 self,\n range: R\n) -> Pin<Box<dyn Future<Output = Self::BlockRange<R>> + Send + 'async_trait>>
where\n R: RangeBounds<usize> + Send + 'static + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_payload_range<'life0, 'async_trait, R>(\n &'life0 self,\n range: R\n) -> Pin<Box<dyn Future<Output = Self::PayloadRange<R>> + Send + 'async_trait>>
where\n R: RangeBounds<usize> + Send + 'static + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_vid_common_range<'life0, 'async_trait, R>(\n &'life0 self,\n range: R\n) -> Pin<Box<dyn Future<Output = Self::VidCommonRange<R>> + Send + 'async_trait>>
where\n R: RangeBounds<usize> + Send + 'static + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_block_with_transaction<'life0, 'async_trait>(\n &'life0 self,\n hash: TransactionHash<Types>\n) -> Pin<Box<dyn Future<Output = Fetch<(BlockQueryData<Types>, TransactionIndex<Types>)>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

Returns the block containing a transaction with the given hash and the transaction’s\nposition in the block.
source§

fn subscribe_blocks<'life0, 'async_trait>(\n &'life0 self,\n from: usize\n) -> Pin<Box<dyn Future<Output = BoxStream<'static, BlockQueryData<Types>>> + Send + 'async_trait>>
where\n Self: Sync + 'async_trait,\n 'life0: 'async_trait,

source§

fn subscribe_payloads<'life0, 'async_trait>(\n &'life0 self,\n from: usize\n) -> Pin<Box<dyn Future<Output = BoxStream<'static, PayloadQueryData<Types>>> + Send + 'async_trait>>
where\n Self: Sync + 'async_trait,\n 'life0: 'async_trait,

source§

fn subscribe_leaves<'life0, 'async_trait>(\n &'life0 self,\n from: usize\n) -> Pin<Box<dyn Future<Output = BoxStream<'static, LeafQueryData<Types>>> + Send + 'async_trait>>
where\n Self: Sync + 'async_trait,\n 'life0: 'async_trait,

source§

fn subscribe_vid_common<'life0, 'async_trait>(\n &'life0 self,\n from: usize\n) -> Pin<Box<dyn Future<Output = BoxStream<'static, VidCommonQueryData<Types>>> + Send + 'async_trait>>
where\n Self: Sync + 'async_trait,\n 'life0: 'async_trait,

","AvailabilityDataSource","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, P> NodeDataSource<Types> for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n S: NodeDataSource<Types> + Send + Sync,\n P: Send + Sync,

source§

fn block_height<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = QueryResult<usize>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn count_transactions<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = QueryResult<usize>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn payload_size<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = QueryResult<usize>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn vid_share<'life0, 'async_trait, ID>(\n &'life0 self,\n id: ID\n) -> Pin<Box<dyn Future<Output = QueryResult<VidShare>> + Send + 'async_trait>>
where\n ID: Into<BlockId<Types>> + Send + Sync + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn sync_status<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = QueryResult<SyncStatus>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_header_window<'life0, 'async_trait>(\n &'life0 self,\n start: impl 'async_trait + Into<WindowStart<Types>> + Send + Sync,\n end: u64\n) -> Pin<Box<dyn Future<Output = QueryResult<TimeWindowQueryData<Header<Types>>>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

","NodeDataSource","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, P> UpdateAvailabilityData<Types> for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n Payload<Types>: QueryablePayload,\n S: UpdateAvailabilityData<Types> + Send + Sync,\n P: Send + Sync,

§

type Error = <S as UpdateAvailabilityData<Types>>::Error

source§

fn insert_leaf<'life0, 'async_trait>(\n &'life0 mut self,\n leaf: LeafQueryData<Types>\n) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn insert_block<'life0, 'async_trait>(\n &'life0 mut self,\n block: BlockQueryData<Types>\n) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn insert_vid<'life0, 'async_trait>(\n &'life0 mut self,\n common: VidCommonQueryData<Types>,\n share: Option<VidShare>\n) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

","UpdateAvailabilityData","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, P> Debug for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n S: Debug,\n P: Debug,

source§

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

Formats the value using the given formatter. Read more
","Debug","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, State, S, P> UpdateStateData<Types, State> for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n State: MerklizedState<Types>,\n S: UpdateStateData<Types, State> + Send + Sync + 'static,\n P: AvailabilityProvider<Types>,

source§

fn insert_merkle_nodes<'life0, 'async_trait>(\n &'life0 mut self,\n path: MerklePath<State::Entry, State::Key, State::T>,\n traversal_path: Vec<usize>,\n block_number: u64\n) -> Pin<Box<dyn Future<Output = QueryResult<()>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

","UpdateStateData","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"]] +"hotshot_query_service":[["
source§

impl<Types, S, P> FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n Payload<Types>: QueryablePayload,\n Header<Types>: QueryableHeader<Types>,\n S: NodeDataSource<Types> + AvailabilityStorage<Types> + 'static,\n P: AvailabilityProvider<Types>,

source

pub fn builder(storage: S, provider: P) -> Builder<Types, S, P>

Build a FetchingDataSource with the given storage and provider.

\n
",0,"hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, P> FetchingDataSource<Types, S, P>
where\n Types: NodeType,

source

pub async fn storage(&self) -> StorageReadGuard<'_, Types, S>

Obtain direct, read-only access to the underlying local storage.

\n
source

pub async fn storage_mut(&self) -> StorageWriteGuard<'_, Types, S>

Obtain direct, mutable access the underlying local storage.

\n
",0,"hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, P> AvailabilityDataSource<Types> for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n Payload<Types>: QueryablePayload,\n S: AvailabilityStorage<Types> + 'static,\n P: AvailabilityProvider<Types>,

§

type LeafRange<R> = Pin<Box<dyn Stream<Item = Fetch<LeafQueryData<Types>>> + Send>>\nwhere\n R: RangeBounds<usize> + Send

§

type BlockRange<R> = Pin<Box<dyn Stream<Item = Fetch<BlockQueryData<Types>>> + Send>>\nwhere\n R: RangeBounds<usize> + Send

§

type PayloadRange<R> = Pin<Box<dyn Stream<Item = Fetch<PayloadQueryData<Types>>> + Send>>\nwhere\n R: RangeBounds<usize> + Send

§

type VidCommonRange<R> = Pin<Box<dyn Stream<Item = Fetch<VidCommonQueryData<Types>>> + Send>>\nwhere\n R: RangeBounds<usize> + Send

source§

fn get_leaf<'life0, 'async_trait, ID>(\n &'life0 self,\n id: ID\n) -> Pin<Box<dyn Future<Output = Fetch<LeafQueryData<Types>>> + Send + 'async_trait>>
where\n ID: Into<LeafId<Types>> + Send + Sync + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_block<'life0, 'async_trait, ID>(\n &'life0 self,\n id: ID\n) -> Pin<Box<dyn Future<Output = Fetch<BlockQueryData<Types>>> + Send + 'async_trait>>
where\n ID: Into<BlockId<Types>> + Send + Sync + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_payload<'life0, 'async_trait, ID>(\n &'life0 self,\n id: ID\n) -> Pin<Box<dyn Future<Output = Fetch<PayloadQueryData<Types>>> + Send + 'async_trait>>
where\n ID: Into<BlockId<Types>> + Send + Sync + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_vid_common<'life0, 'async_trait, ID>(\n &'life0 self,\n id: ID\n) -> Pin<Box<dyn Future<Output = Fetch<VidCommonQueryData<Types>>> + Send + 'async_trait>>
where\n ID: Into<BlockId<Types>> + Send + Sync + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_leaf_range<'life0, 'async_trait, R>(\n &'life0 self,\n range: R\n) -> Pin<Box<dyn Future<Output = Self::LeafRange<R>> + Send + 'async_trait>>
where\n R: RangeBounds<usize> + Send + 'static + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_block_range<'life0, 'async_trait, R>(\n &'life0 self,\n range: R\n) -> Pin<Box<dyn Future<Output = Self::BlockRange<R>> + Send + 'async_trait>>
where\n R: RangeBounds<usize> + Send + 'static + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_payload_range<'life0, 'async_trait, R>(\n &'life0 self,\n range: R\n) -> Pin<Box<dyn Future<Output = Self::PayloadRange<R>> + Send + 'async_trait>>
where\n R: RangeBounds<usize> + Send + 'static + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_vid_common_range<'life0, 'async_trait, R>(\n &'life0 self,\n range: R\n) -> Pin<Box<dyn Future<Output = Self::VidCommonRange<R>> + Send + 'async_trait>>
where\n R: RangeBounds<usize> + Send + 'static + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_block_with_transaction<'life0, 'async_trait>(\n &'life0 self,\n hash: TransactionHash<Types>\n) -> Pin<Box<dyn Future<Output = Fetch<(BlockQueryData<Types>, TransactionIndex<Types>)>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

Returns the block containing a transaction with the given hash and the transaction’s\nposition in the block.
source§

fn subscribe_blocks<'life0, 'async_trait>(\n &'life0 self,\n from: usize\n) -> Pin<Box<dyn Future<Output = BoxStream<'static, BlockQueryData<Types>>> + Send + 'async_trait>>
where\n Self: Sync + 'async_trait,\n 'life0: 'async_trait,

source§

fn subscribe_payloads<'life0, 'async_trait>(\n &'life0 self,\n from: usize\n) -> Pin<Box<dyn Future<Output = BoxStream<'static, PayloadQueryData<Types>>> + Send + 'async_trait>>
where\n Self: Sync + 'async_trait,\n 'life0: 'async_trait,

source§

fn subscribe_leaves<'life0, 'async_trait>(\n &'life0 self,\n from: usize\n) -> Pin<Box<dyn Future<Output = BoxStream<'static, LeafQueryData<Types>>> + Send + 'async_trait>>
where\n Self: Sync + 'async_trait,\n 'life0: 'async_trait,

source§

fn subscribe_vid_common<'life0, 'async_trait>(\n &'life0 self,\n from: usize\n) -> Pin<Box<dyn Future<Output = BoxStream<'static, VidCommonQueryData<Types>>> + Send + 'async_trait>>
where\n Self: Sync + 'async_trait,\n 'life0: 'async_trait,

","AvailabilityDataSource","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, P> NodeDataSource<Types> for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n S: NodeDataSource<Types> + Send + Sync,\n P: Send + Sync,

source§

fn block_height<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = QueryResult<usize>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn count_transactions<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = QueryResult<usize>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn payload_size<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = QueryResult<usize>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn vid_share<'life0, 'async_trait, ID>(\n &'life0 self,\n id: ID\n) -> Pin<Box<dyn Future<Output = QueryResult<VidShare>> + Send + 'async_trait>>
where\n ID: Into<BlockId<Types>> + Send + Sync + 'async_trait,\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn sync_status<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = QueryResult<SyncStatus>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn get_header_window<'life0, 'async_trait>(\n &'life0 self,\n start: impl 'async_trait + Into<WindowStart<Types>> + Send + Sync,\n end: u64\n) -> Pin<Box<dyn Future<Output = QueryResult<TimeWindowQueryData<Header<Types>>>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

","NodeDataSource","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, P> VersionedDataSource for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n S: VersionedDataSource + Send + Sync,\n P: Send + Sync,

§

type Error = <S as VersionedDataSource>::Error

source§

fn commit<'life0, 'async_trait>(\n &'life0 mut self\n) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

Atomically commit to all outstanding modifications to the data. Read more
source§

fn revert<'life0, 'async_trait>(\n &'life0 mut self\n) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

Erase all oustanding modifications to the data. Read more
","VersionedDataSource","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, P> Debug for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n S: Debug,\n P: Debug,

source§

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

Formats the value using the given formatter. Read more
","Debug","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, State, S, P> UpdateStateData<Types, State> for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n State: MerklizedState<Types>,\n S: UpdateStateData<Types, State> + Send + Sync + 'static,\n P: AvailabilityProvider<Types>,

source§

fn insert_merkle_nodes<'life0, 'async_trait>(\n &'life0 mut self,\n path: MerklePath<State::Entry, State::Key, State::T>,\n traversal_path: Vec<usize>,\n block_number: u64\n) -> Pin<Box<dyn Future<Output = QueryResult<()>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

","UpdateStateData","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, State, P> MerklizedStateDataSource<Types, State> for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n S: MerklizedStateDataSource<Types, State> + Send + Sync + 'static,\n P: AvailabilityProvider<Types>,\n State: MerklizedState<Types> + 'static,\n <State as MerkleTreeScheme>::Commitment: Send,

source§

fn get_path<'life0, 'async_trait>(\n &'life0 self,\n snapshot: Snapshot<Types, State>,\n key: State::Key\n) -> Pin<Box<dyn Future<Output = QueryResult<MerklePath<State::Entry, State::Key, State::T>>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

","MerklizedStateDataSource","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, P> UpdateAvailabilityData<Types> for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n Payload<Types>: QueryablePayload,\n S: UpdateAvailabilityData<Types> + Send + Sync,\n P: Send + Sync,

§

type Error = <S as UpdateAvailabilityData<Types>>::Error

source§

fn insert_leaf<'life0, 'async_trait>(\n &'life0 mut self,\n leaf: LeafQueryData<Types>\n) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn insert_block<'life0, 'async_trait>(\n &'life0 mut self,\n block: BlockQueryData<Types>\n) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn insert_vid<'life0, 'async_trait>(\n &'life0 mut self,\n common: VidCommonQueryData<Types>,\n share: Option<VidShare>\n) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

","UpdateAvailabilityData","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, P> StatusDataSource for FetchingDataSource<Types, S, P>
where\n Types: NodeType,\n S: NodeDataSource<Types> + Send + Sync,\n P: Send + Sync,

source§

fn block_height<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = QueryResult<usize>> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn metrics(&self) -> &PrometheusMetrics

source§

fn consensus_metrics(&self) -> QueryResult<PrometheusMetrics>

source§

fn elapsed_time_since_last_decide<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = QueryResult<u64>> + Send + 'async_trait>>
where\n Self: Sync + 'async_trait,\n 'life0: 'async_trait,

source§

fn mempool_info<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = QueryResult<MempoolQueryData>> + Send + 'async_trait>>
where\n Self: Sync + 'async_trait,\n 'life0: 'async_trait,

source§

fn success_rate<'life0, 'async_trait>(\n &'life0 self\n) -> Pin<Box<dyn Future<Output = QueryResult<f64>> + Send + 'async_trait>>
where\n Self: Sync + 'async_trait,\n 'life0: 'async_trait,

","StatusDataSource","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"],["
source§

impl<Types, S, P> Clone for FetchingDataSource<Types, S, P>
where\n Types: NodeType,

source§

fn clone(&self) -> Self

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
","Clone","hotshot_query_service::data_source::fs::FileSystemDataSource","hotshot_query_service::data_source::sql::SqlDataSource"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/hotshot_query_service/data_source/type.FileSystemDataSource.js b/type.impl/hotshot_query_service/data_source/type.FileSystemDataSource.js index ac27108f6..fb8ed055f 100644 --- a/type.impl/hotshot_query_service/data_source/type.FileSystemDataSource.js +++ b/type.impl/hotshot_query_service/data_source/type.FileSystemDataSource.js @@ -1,3 +1,3 @@ (function() {var type_impls = { -"hotshot_query_service":[["
source§

impl<Types: NodeType, P> FileSystemDataSource<Types, P>
where\n Payload<Types>: QueryablePayload,\n Header<Types>: QueryableHeader<Types>,\n P: AvailabilityProvider<Types>,

source

pub async fn create(path: &Path, provider: P) -> Result<Self>

Create a new FileSystemDataSource with storage at path.

\n

If there is already data at path, it will be archived.

\n

The FileSystemDataSource will manage its own persistence synchronization.

\n
source

pub async fn open(path: &Path, provider: P) -> Result<Self>

Open an existing FileSystemDataSource from storage at path.

\n

If there is no data at path, a new store will be created.

\n

The FileSystemDataSource will manage its own persistence synchronization.

\n
source

pub async fn create_with_store(\n loader: &mut AtomicStoreLoader,\n provider: P\n) -> Result<Self>

Create a new FileSystemDataSource using a persistent storage loader.

\n

If there is existing data corresponding to the FileSystemDataSource data structures, it\nwill be archived.

\n

The FileSystemDataSource will register its persistent data structures with loader. The\ncaller is responsible for creating an AtomicStore from loader\nand managing synchronization of the store.

\n
source

pub async fn open_with_store(\n loader: &mut AtomicStoreLoader,\n provider: P\n) -> Result<Self>

Open an existing FileSystemDataSource using a persistent storage loader.

\n

If there is no existing data corresponding to the FileSystemDataSource data structures, a\nnew store will be created.

\n

The FileSystemDataSource will register its persistent data structures with loader. The\ncaller is responsible for creating an AtomicStore from loader\nand managing synchronization of the store.

\n
source

pub async fn skip_version(&mut self) -> Result<()>

Advance the version of the persistent store without committing changes to persistent state.

\n

This function is useful when the AtomicStore synchronizing\nstorage for this FileSystemDataSource is being managed by the caller. The caller may want\nto persist some changes to other modules whose state is managed by the same\nAtomicStore. In order to call\nAtomicStore::commit_version, the version of\nthis FileSystemDataSource must be advanced, either by\ncommit or, if there are no outstanding changes,\nskip_version.

\n
",0,"hotshot_query_service::testing::consensus::MockDataSource"],["
source§

impl<P: AvailabilityProvider<MockTypes> + Default> DataSourceLifeCycle for FileSystemDataSource<MockTypes, P>

§

type Storage = TempDir

Backing storage for the data source. Read more
source§

fn create<'async_trait>(\n node_id: usize\n) -> Pin<Box<dyn Future<Output = Self::Storage> + Send + 'async_trait>>
where\n Self: 'async_trait,

source§

fn connect<'life0, 'async_trait>(\n storage: &'life0 Self::Storage\n) -> Pin<Box<dyn Future<Output = Self> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn reset<'life0, 'async_trait>(\n storage: &'life0 Self::Storage\n) -> Pin<Box<dyn Future<Output = Self> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn handle_event<'life0, 'life1, 'async_trait>(\n &'life0 mut self,\n event: &'life1 Event<MockTypes>\n) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,\n 'life1: 'async_trait,

source§

fn setup<'life0, 'async_trait>(\n _network: &'life0 mut MockNetwork<Self>\n) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

Setup runs after setting up the network but before starting a test.
","DataSourceLifeCycle","hotshot_query_service::testing::consensus::MockDataSource"]] +"hotshot_query_service":[["
source§

impl<Types: NodeType, P> FileSystemDataSource<Types, P>
where\n Payload<Types>: QueryablePayload,\n Header<Types>: QueryableHeader<Types>,\n P: AvailabilityProvider<Types>,

source

pub async fn create(path: &Path, provider: P) -> Result<Self>

Create a new FileSystemDataSource with storage at path.

\n

If there is already data at path, it will be archived.

\n

The FileSystemDataSource will manage its own persistence synchronization.

\n
source

pub async fn open(path: &Path, provider: P) -> Result<Self>

Open an existing FileSystemDataSource from storage at path.

\n

If there is no data at path, a new store will be created.

\n

The FileSystemDataSource will manage its own persistence synchronization.

\n
source

pub async fn create_with_store(\n loader: &mut AtomicStoreLoader,\n provider: P\n) -> Result<Self>

Create a new FileSystemDataSource using a persistent storage loader.

\n

If there is existing data corresponding to the FileSystemDataSource data structures, it\nwill be archived.

\n

The FileSystemDataSource will register its persistent data structures with loader. The\ncaller is responsible for creating an AtomicStore from loader\nand managing synchronization of the store.

\n
source

pub async fn open_with_store(\n loader: &mut AtomicStoreLoader,\n provider: P\n) -> Result<Self>

Open an existing FileSystemDataSource using a persistent storage loader.

\n

If there is no existing data corresponding to the FileSystemDataSource data structures, a\nnew store will be created.

\n

The FileSystemDataSource will register its persistent data structures with loader. The\ncaller is responsible for creating an AtomicStore from loader\nand managing synchronization of the store.

\n
source

pub async fn skip_version(&mut self) -> Result<()>

Advance the version of the persistent store without committing changes to persistent state.

\n

This function is useful when the AtomicStore synchronizing\nstorage for this FileSystemDataSource is being managed by the caller. The caller may want\nto persist some changes to other modules whose state is managed by the same\nAtomicStore. In order to call\nAtomicStore::commit_version, the version of\nthis FileSystemDataSource must be advanced, either by\ncommit or, if there are no outstanding changes,\nskip_version.

\n
",0,"hotshot_query_service::testing::consensus::MockDataSource"],["
source§

impl<P: AvailabilityProvider<MockTypes> + Default> DataSourceLifeCycle for FileSystemDataSource<MockTypes, P>

§

type Storage = TempDir

Backing storage for the data source. Read more
source§

fn create<'async_trait>(\n node_id: usize\n) -> Pin<Box<dyn Future<Output = Self::Storage> + Send + 'async_trait>>
where\n Self: 'async_trait,

source§

fn connect<'life0, 'async_trait>(\n storage: &'life0 Self::Storage\n) -> Pin<Box<dyn Future<Output = Self> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn reset<'life0, 'async_trait>(\n storage: &'life0 Self::Storage\n) -> Pin<Box<dyn Future<Output = Self> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

source§

fn handle_event<'life0, 'life1, 'async_trait>(\n &'life0 mut self,\n event: &'life1 Event<MockTypes>\n) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,\n 'life1: 'async_trait,

source§

fn setup<'life0, 'async_trait>(\n _network: &'life0 mut MockNetwork<Self>\n) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where\n Self: 'async_trait,\n 'life0: 'async_trait,

Setup runs after setting up the network but before starting a test.
","DataSourceLifeCycle","hotshot_query_service::testing::consensus::MockDataSource"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/hotshot_types/data/struct.QuorumProposal.js b/type.impl/hotshot_types/data/struct.QuorumProposal.js index 97a60c7af..bec155bb8 100644 --- a/type.impl/hotshot_types/data/struct.QuorumProposal.js +++ b/type.impl/hotshot_types/data/struct.QuorumProposal.js @@ -1,3 +1,3 @@ (function() {var type_impls = { -"hotshot_query_service":[["
§

impl<'de, TYPES> Deserialize<'de> for QuorumProposal<TYPES>
where\n TYPES: NodeType,

§

fn deserialize<__D>(\n __deserializer: __D\n) -> Result<QuorumProposal<TYPES>, <__D as Deserializer<'de>>::Error>
where\n __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
","Deserialize<'de>","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<TYPES> Debug for QuorumProposal<TYPES>
where\n TYPES: NodeType,\n <TYPES as NodeType>::BlockHeader: Debug,\n <TYPES as NodeType>::Time: Debug,\n SimpleCertificate<TYPES, QuorumData<TYPES>, SuccessThreshold>: Debug,\n Option<SimpleCertificate<TYPES, TimeoutData<TYPES>, SuccessThreshold>>: Debug,\n Option<SimpleCertificate<TYPES, UpgradeProposalData<TYPES>, UpgradeThreshold>>: Debug,\n Option<SimpleCertificate<TYPES, ViewSyncFinalizeData<TYPES>, SuccessThreshold>>: Debug,\n <TYPES as NodeType>::SignatureKey: Debug,

§

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

Formats the value using the given formatter. Read more
","Debug","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<TYPES> Eq for QuorumProposal<TYPES>
where\n TYPES: Eq + NodeType,\n <TYPES as NodeType>::BlockHeader: Eq,\n <TYPES as NodeType>::Time: Eq,\n <TYPES as NodeType>::SignatureKey: Eq,

","Eq","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<TYPES> Clone for QuorumProposal<TYPES>
where\n TYPES: Clone + NodeType,\n <TYPES as NodeType>::BlockHeader: Clone,\n <TYPES as NodeType>::Time: Clone,\n <TYPES as NodeType>::SignatureKey: Clone,

§

fn clone(&self) -> QuorumProposal<TYPES>

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
","Clone","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<TYPES> Hash for QuorumProposal<TYPES>
where\n TYPES: Hash + NodeType,\n <TYPES as NodeType>::BlockHeader: Hash,\n <TYPES as NodeType>::Time: Hash,\n <TYPES as NodeType>::SignatureKey: Hash,

§

fn hash<__H>(&self, state: &mut __H)
where\n __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where\n H: Hasher,\n Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
","Hash","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<TYPES> HasViewNumber<TYPES> for QuorumProposal<TYPES>
where\n TYPES: NodeType,

§

fn get_view_number(&self) -> <TYPES as NodeType>::Time

Returns the view number the type refers to.
","HasViewNumber","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<TYPES> Serialize for QuorumProposal<TYPES>
where\n TYPES: NodeType + Serialize,\n <TYPES as NodeType>::BlockHeader: Serialize,\n <TYPES as NodeType>::Time: Serialize,\n <TYPES as NodeType>::SignatureKey: Serialize,

§

fn serialize<__S>(\n &self,\n __serializer: __S\n) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
where\n __S: Serializer,

Serialize this value into the given Serde serializer. Read more
","Serialize","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<TYPES> StructuralPartialEq for QuorumProposal<TYPES>
where\n TYPES: NodeType,

","StructuralPartialEq","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<TYPES> PartialEq for QuorumProposal<TYPES>
where\n TYPES: PartialEq + NodeType,\n <TYPES as NodeType>::BlockHeader: PartialEq,\n <TYPES as NodeType>::Time: PartialEq,\n <TYPES as NodeType>::SignatureKey: PartialEq,

§

fn eq(&self, other: &QuorumProposal<TYPES>) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<TYPES> StructuralEq for QuorumProposal<TYPES>
where\n TYPES: NodeType,

","StructuralEq","hotshot_query_service::testing::mocks::MockQuorumProposal"]] +"hotshot_query_service":[["
§

impl<TYPES> Debug for QuorumProposal<TYPES>
where\n TYPES: NodeType,\n <TYPES as NodeType>::BlockHeader: Debug,\n <TYPES as NodeType>::Time: Debug,\n SimpleCertificate<TYPES, QuorumData<TYPES>, SuccessThreshold>: Debug,\n Option<SimpleCertificate<TYPES, TimeoutData<TYPES>, SuccessThreshold>>: Debug,\n Option<SimpleCertificate<TYPES, UpgradeProposalData<TYPES>, UpgradeThreshold>>: Debug,\n Option<SimpleCertificate<TYPES, ViewSyncFinalizeData<TYPES>, SuccessThreshold>>: Debug,\n <TYPES as NodeType>::SignatureKey: Debug,

§

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

Formats the value using the given formatter. Read more
","Debug","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<'de, TYPES> Deserialize<'de> for QuorumProposal<TYPES>
where\n TYPES: NodeType,

§

fn deserialize<__D>(\n __deserializer: __D\n) -> Result<QuorumProposal<TYPES>, <__D as Deserializer<'de>>::Error>
where\n __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
","Deserialize<'de>","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<TYPES> Eq for QuorumProposal<TYPES>
where\n TYPES: Eq + NodeType,\n <TYPES as NodeType>::BlockHeader: Eq,\n <TYPES as NodeType>::Time: Eq,\n <TYPES as NodeType>::SignatureKey: Eq,

","Eq","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<TYPES> Clone for QuorumProposal<TYPES>
where\n TYPES: Clone + NodeType,\n <TYPES as NodeType>::BlockHeader: Clone,\n <TYPES as NodeType>::Time: Clone,\n <TYPES as NodeType>::SignatureKey: Clone,

§

fn clone(&self) -> QuorumProposal<TYPES>

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
","Clone","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<TYPES> Hash for QuorumProposal<TYPES>
where\n TYPES: Hash + NodeType,\n <TYPES as NodeType>::BlockHeader: Hash,\n <TYPES as NodeType>::Time: Hash,\n <TYPES as NodeType>::SignatureKey: Hash,

§

fn hash<__H>(&self, state: &mut __H)
where\n __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where\n H: Hasher,\n Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
","Hash","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<TYPES> Serialize for QuorumProposal<TYPES>
where\n TYPES: NodeType + Serialize,\n <TYPES as NodeType>::BlockHeader: Serialize,\n <TYPES as NodeType>::Time: Serialize,\n <TYPES as NodeType>::SignatureKey: Serialize,

§

fn serialize<__S>(\n &self,\n __serializer: __S\n) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
where\n __S: Serializer,

Serialize this value into the given Serde serializer. Read more
","Serialize","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<TYPES> PartialEq for QuorumProposal<TYPES>
where\n TYPES: PartialEq + NodeType,\n <TYPES as NodeType>::BlockHeader: PartialEq,\n <TYPES as NodeType>::Time: PartialEq,\n <TYPES as NodeType>::SignatureKey: PartialEq,

§

fn eq(&self, other: &QuorumProposal<TYPES>) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<TYPES> StructuralPartialEq for QuorumProposal<TYPES>
where\n TYPES: NodeType,

","StructuralPartialEq","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<TYPES> HasViewNumber<TYPES> for QuorumProposal<TYPES>
where\n TYPES: NodeType,

§

fn get_view_number(&self) -> <TYPES as NodeType>::Time

Returns the view number the type refers to.
","HasViewNumber","hotshot_query_service::testing::mocks::MockQuorumProposal"],["
§

impl<TYPES> StructuralEq for QuorumProposal<TYPES>
where\n TYPES: NodeType,

","StructuralEq","hotshot_query_service::testing::mocks::MockQuorumProposal"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/hotshot_types/vid/struct.VidSchemeType.js b/type.impl/hotshot_types/vid/struct.VidSchemeType.js index e5d1a5912..184a3904b 100644 --- a/type.impl/hotshot_types/vid/struct.VidSchemeType.js +++ b/type.impl/hotshot_types/vid/struct.VidSchemeType.js @@ -1,3 +1,3 @@ (function() {var type_impls = { -"hotshot_query_service":[["
§

impl VidScheme for VidSchemeType

§

type Commit = <Advz<Bls12<Config>, CoreWrapper<CtVariableCoreWrapper<Sha256VarCore, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, OidSha256>>> as VidScheme>::Commit

Payload commitment.
§

type Share = <Advz<Bls12<Config>, CoreWrapper<CtVariableCoreWrapper<Sha256VarCore, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, OidSha256>>> as VidScheme>::Share

Share-specific data sent to a storage node.
§

type Common = <Advz<Bls12<Config>, CoreWrapper<CtVariableCoreWrapper<Sha256VarCore, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, OidSha256>>> as VidScheme>::Common

Common data sent to all storage nodes.
§

fn commit_only<B>(\n &self,\n payload: B\n) -> Result<<VidSchemeType as VidScheme>::Commit, VidError>
where\n B: AsRef<[u8]>,

Compute a payload commitment
§

fn disperse<B>(\n &self,\n payload: B\n) -> Result<VidDisperse<VidSchemeType>, VidError>
where\n B: AsRef<[u8]>,

Compute shares to send to the storage nodes
§

fn verify_share(\n &self,\n share: &<VidSchemeType as VidScheme>::Share,\n common: &<VidSchemeType as VidScheme>::Common,\n commit: &<VidSchemeType as VidScheme>::Commit\n) -> Result<Result<(), ()>, VidError>

Verify a share. Used by both storage node and retrieval client.\nWhy is return type a nested Result? See https://sled.rs/errors\nReturns: Read more
§

fn recover_payload(\n &self,\n shares: &[<VidSchemeType as VidScheme>::Share],\n common: &<VidSchemeType as VidScheme>::Common\n) -> Result<Vec<u8>, VidError>

Recover payload from shares.\nDo not verify shares or check recovered payload against anything.
§

fn is_consistent(\n commit: &<VidSchemeType as VidScheme>::Commit,\n common: &<VidSchemeType as VidScheme>::Common\n) -> Result<(), VidError>

Check that a [VidScheme::Common] is consistent with a\n[VidScheme::Commit]. Read more
§

fn get_payload_byte_len(common: &<VidSchemeType as VidScheme>::Common) -> usize

Extract the payload byte length data from a [VidScheme::Common].
§

fn get_num_storage_nodes(common: &<VidSchemeType as VidScheme>::Common) -> usize

Extract the number of storage nodes from a [VidScheme::Common].
§

fn get_multiplicity(common: &<VidSchemeType as VidScheme>::Common) -> usize

Extract the number of poly evals per share [VidScheme::Common].
","VidScheme","hotshot_query_service::VidCommitment","hotshot_query_service::VidCommon","hotshot_query_service::VidShare"],["
§

impl PayloadProver<LargeRangeProofType> for VidSchemeType

§

fn payload_proof<B>(\n &self,\n payload: B,\n range: Range<usize>\n) -> Result<LargeRangeProofType, VidError>
where\n B: AsRef<[u8]>,

Compute a proof for a subslice of payload data. Read more
§

fn payload_verify(\n &self,\n stmt: Statement<'_, VidSchemeType>,\n proof: &LargeRangeProofType\n) -> Result<Result<(), ()>, VidError>

Verify a proof made by [PayloadProver::payload_proof]. Read more
","PayloadProver","hotshot_query_service::VidCommitment","hotshot_query_service::VidCommon","hotshot_query_service::VidShare"],["
§

impl PayloadProver<SmallRangeProofType> for VidSchemeType

§

fn payload_proof<B>(\n &self,\n payload: B,\n range: Range<usize>\n) -> Result<SmallRangeProofType, VidError>
where\n B: AsRef<[u8]>,

Compute a proof for a subslice of payload data. Read more
§

fn payload_verify(\n &self,\n stmt: Statement<'_, VidSchemeType>,\n proof: &SmallRangeProofType\n) -> Result<Result<(), ()>, VidError>

Verify a proof made by [PayloadProver::payload_proof]. Read more
","PayloadProver","hotshot_query_service::VidCommitment","hotshot_query_service::VidCommon","hotshot_query_service::VidShare"],["
§

impl Precomputable for VidSchemeType

§

type PrecomputeData = <Advz<Bls12<Config>, CoreWrapper<CtVariableCoreWrapper<Sha256VarCore, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, OidSha256>>> as Precomputable>::PrecomputeData

Precomputed data that can be (re-)used during disperse computation
§

fn commit_only_precompute<B>(\n &self,\n payload: B\n) -> Result<(<VidSchemeType as VidScheme>::Commit, <VidSchemeType as Precomputable>::PrecomputeData), VidError>
where\n B: AsRef<[u8]>,

Similar to [VidScheme::commit_only] but returns additional data that\ncan be used as input to disperse_precompute for faster dispersal.
§

fn disperse_precompute<B>(\n &self,\n payload: B,\n data: &<VidSchemeType as Precomputable>::PrecomputeData\n) -> Result<VidDisperse<VidSchemeType>, VidError>
where\n B: AsRef<[u8]>,

Similar to [VidScheme::disperse] but takes as input additional\ndata for more efficient computation and faster disersal.
","Precomputable","hotshot_query_service::VidCommitment","hotshot_query_service::VidCommon","hotshot_query_service::VidShare"]] +"hotshot_query_service":[["
§

impl VidScheme for VidSchemeType

§

type Commit = <AdvzInternal<Bn<Config>, CoreWrapper<CtVariableCoreWrapper<Sha256VarCore, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, OidSha256>>, ()> as VidScheme>::Commit

Payload commitment.
§

type Share = <AdvzInternal<Bn<Config>, CoreWrapper<CtVariableCoreWrapper<Sha256VarCore, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, OidSha256>>, ()> as VidScheme>::Share

Share-specific data sent to a storage node.
§

type Common = <AdvzInternal<Bn<Config>, CoreWrapper<CtVariableCoreWrapper<Sha256VarCore, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, OidSha256>>, ()> as VidScheme>::Common

Common data sent to all storage nodes.
§

fn commit_only<B>(\n &mut self,\n payload: B\n) -> Result<<VidSchemeType as VidScheme>::Commit, VidError>
where\n B: AsRef<[u8]>,

Compute a payload commitment
§

fn disperse<B>(\n &mut self,\n payload: B\n) -> Result<VidDisperse<VidSchemeType>, VidError>
where\n B: AsRef<[u8]>,

Compute shares to send to the storage nodes
§

fn verify_share(\n &self,\n share: &<VidSchemeType as VidScheme>::Share,\n common: &<VidSchemeType as VidScheme>::Common,\n commit: &<VidSchemeType as VidScheme>::Commit\n) -> Result<Result<(), ()>, VidError>

Verify a share. Used by both storage node and retrieval client.\nWhy is return type a nested Result? See https://sled.rs/errors\nReturns: Read more
§

fn recover_payload(\n &self,\n shares: &[<VidSchemeType as VidScheme>::Share],\n common: &<VidSchemeType as VidScheme>::Common\n) -> Result<Vec<u8>, VidError>

Recover payload from shares.\nDo not verify shares or check recovered payload against anything.
§

fn is_consistent(\n commit: &<VidSchemeType as VidScheme>::Commit,\n common: &<VidSchemeType as VidScheme>::Common\n) -> Result<(), VidError>

Check that a [VidScheme::Common] is consistent with a\n[VidScheme::Commit]. Read more
§

fn get_payload_byte_len(common: &<VidSchemeType as VidScheme>::Common) -> usize

Extract the payload byte length data from a [VidScheme::Common].
§

fn get_num_storage_nodes(common: &<VidSchemeType as VidScheme>::Common) -> usize

Extract the number of storage nodes from a [VidScheme::Common].
§

fn get_multiplicity(common: &<VidSchemeType as VidScheme>::Common) -> usize

Extract the number of poly evals per share [VidScheme::Common].
","VidScheme","hotshot_query_service::VidCommitment","hotshot_query_service::VidCommon","hotshot_query_service::VidShare"],["
§

impl PayloadProver<LargeRangeProofType> for VidSchemeType

§

fn payload_proof<B>(\n &self,\n payload: B,\n range: Range<usize>\n) -> Result<LargeRangeProofType, VidError>
where\n B: AsRef<[u8]>,

Compute a proof for a subslice of payload data. Read more
§

fn payload_verify(\n &self,\n stmt: Statement<'_, VidSchemeType>,\n proof: &LargeRangeProofType\n) -> Result<Result<(), ()>, VidError>

Verify a proof made by [PayloadProver::payload_proof]. Read more
","PayloadProver","hotshot_query_service::VidCommitment","hotshot_query_service::VidCommon","hotshot_query_service::VidShare"],["
§

impl PayloadProver<SmallRangeProofType> for VidSchemeType

§

fn payload_proof<B>(\n &self,\n payload: B,\n range: Range<usize>\n) -> Result<SmallRangeProofType, VidError>
where\n B: AsRef<[u8]>,

Compute a proof for a subslice of payload data. Read more
§

fn payload_verify(\n &self,\n stmt: Statement<'_, VidSchemeType>,\n proof: &SmallRangeProofType\n) -> Result<Result<(), ()>, VidError>

Verify a proof made by [PayloadProver::payload_proof]. Read more
","PayloadProver","hotshot_query_service::VidCommitment","hotshot_query_service::VidCommon","hotshot_query_service::VidShare"],["
§

impl Precomputable for VidSchemeType

§

type PrecomputeData = <AdvzInternal<Bn<Config>, CoreWrapper<CtVariableCoreWrapper<Sha256VarCore, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, OidSha256>>, ()> as Precomputable>::PrecomputeData

Precomputed data that can be (re-)used during disperse computation
§

fn commit_only_precompute<B>(\n &self,\n payload: B\n) -> Result<(<VidSchemeType as VidScheme>::Commit, <VidSchemeType as Precomputable>::PrecomputeData), VidError>
where\n B: AsRef<[u8]>,

Similar to [VidScheme::commit_only] but returns additional data that\ncan be used as input to disperse_precompute for faster dispersal.
§

fn disperse_precompute<B>(\n &self,\n payload: B,\n data: &<VidSchemeType as Precomputable>::PrecomputeData\n) -> Result<VidDisperse<VidSchemeType>, VidError>
where\n B: AsRef<[u8]>,

Similar to [VidScheme::disperse] but takes as input additional\ndata for more efficient computation and faster disersal.
","Precomputable","hotshot_query_service::VidCommitment","hotshot_query_service::VidCommon","hotshot_query_service::VidShare"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file