Construct an ad-hoc error from a string or existing non-anyhow
error
value.
Return early with an error.
Returns an iterator over chunk_size
elements of the slice at a
time.
Finds the first element that satisfies the predicate function
Applies a function and returns the first value that is not None
Creates parallel iterator if parallel
feature is enabled.
Creates parallel iterator over refs if parallel
feature is enabled.
Creates parallel iterator over mut refs if parallel
feature is enabled.
Turns a collection into an iterator.
Applies the reduce operation over an iterator.
Turns a collection into an iterator.
Return early with an error if a condition is not satisfied.
Takes as input a sequence of objects, and converts them to a series of little-endian bits.
All traits that implement ToBits
can be automatically converted to bits in this manner.
The addition operator +
.
The addition assignment operator +=
.
Affine representation of an elliptic curve point guaranteed to be
in the correct prime order subgroup.
A generic interface for casting between machine scalars with the
as
operator, which admits narrowing and precision loss.
Implementers of this trait AsPrimitive
should behave like a primitive
numeric type (e.g. a newtype around another primitive), and the
intended conversion must never fail.
The bitwise AND operator &
.
The bitwise AND assignment operator &=
.
The bitwise OR operator |
.
The bitwise OR assignment operator |=
.
The bitwise XOR operator ^
.
The bitwise XOR assignment operator ^=
.
A marker trait used to indicate that an
RngCore
or
BlockRngCore
implementation is supposed to be cryptographically secure.
?
formatting.
Used for immutable dereferencing operations, like *v
.
Used for mutable dereferencing operations, like in *v = 1;
.
A data structure that can be deserialized from any data format supported
by Serde.
A helper trait used to simplify value extraction.
A data structure that can be deserialized without borrowing any data from
the deserializer.
A data format that can deserialize any data structure supported by
Serde.
Format trait for an empty format, {}
.
Types (distributions) that can be used to create a random instance of T
.
The division operator /
.
The division assignment operator /=
.
Provides a Visitor
access to the data of an enum in the input.
Parse/convert base32 slice to Self
. It is the reciprocal of
ToBase32
.
Parse a value from a string
An
Iterator
blanket implementation that provides extra adaptors and
methods.
Provides a Visitor
access to each entry of a map in the input.
The multiplication operator *
.
The multiplication assignment operator *=
.
The unary negation operator -
.
The unary logical negation operator !
.
Defines a multiplicative identity element for Self
.
A trait to unwrap a Result
or Halt
.
Binary operator for raising a value to a power.
Trait to represent types that can be created by multiplying elements of an
iterator.
Projective representation of an elliptic curve point guaranteed to be in the prime order subgroup.
The Read
trait allows for reading bytes from a source.
The remainder operator %
.
The remainder assignment operator %=
.
An automatically-implemented extension trait on
RngCore
providing high-level
generic methods for sampling values and other convenience methods.
Provides a Visitor
access to each element of a sequence in the input.
A data structure that can be serialized into any data format supported
by Serde.
Returned from Serializer::serialize_seq
.
Returned from Serializer::serialize_struct
.
A data format that can serialize any data structure supported by Serde.
The left shift operator <<
. Note that because this trait is implemented
for all integer types with multiple right-hand-side types, Rust’s type
checker has special handling for _ << _
, setting the result type for
integer operations to the type of the left-hand-side operand. This means
that though a << b
and a.shl(b)
are one and the same from an evaluation
standpoint, they are different when it comes to type inference.
The left shift assignment operator <<=
.
The right shift operator >>
. Note that because this trait is implemented
for all integer types with multiple right-hand-side types, Rust’s type
checker has special handling for _ >> _
, setting the result type for
integer operations to the type of the left-hand-side operand. This means
that though a >> b
and a.shr(b)
are one and the same from an evaluation
standpoint, they are different when it comes to type inference.
The right shift assignment operator >>=
.
The subtraction operator -
.
The subtraction assignment operator -=
.
Trait to represent types that can be created by summing up an iterator.
A trait for converting a value to a type T
that represents a u5
slice.
A trait for a uniform random number generator.
VariantAccess
is a visitor that is created by the Deserializer
and
passed to the Deserialize
to deserialize the content of a particular enum
variant.
This trait represents a visitor that walks through a deserializer.
A trait for objects which are byte-oriented sinks.
Defines an additive identity element for Self
.
Recognizes one or more lowercase and uppercase ASCII alphabetic characters: a-z, A-Z
Recognizes one or more ASCII numerical and alphabetic characters: 0-9, a-z, A-Z
Tests a list of parsers one by one until one succeeds.
Recognizes one character.
Transforms Incomplete into Error
.
Runs the embedded parser count
times, gathering the results in a Vec
A parser which always fails.
Returns true if the given iterator has duplicate elements.
Creates an error from the input position and an
ErrorKindRepeats the embedded parser, gathering the results in a Vec
.
Repeats the embedded parser, counting the results
Runs the embedded parser, gathering the results in a Vec
.
Maps a function on the result of a parser.
Applies a function returning a Result
over the result of a parser.
Recognizes one of the provided characters.
Gets an object from the first parser,
then gets another object from the second parser.
Decode the value of a variable length integer.
https://en.bitcoin.it/wiki/Protocol_documentation#Variable_length_integer
If the child parser was successful, return the consumed input as produced value.
Alternates between two parsers to produce a list of elements.
Alternates between two parsers to produce a list of elements until
Err::Error
.
Recognizes a pattern
Returns an input slice containing the first N input elements (Input[..N]).
Gets an object from the first parser,
then matches an object from the second parser and discards it.
Returns the variable length integer of the given value.
https://en.bitcoin.it/wiki/Protocol_documentation#Variable_length_integer