Enum hermes_ipfs::Ipld
pub enum Ipld {
Null,
Bool(bool),
Integer(i128),
Float(f64),
String(String),
Bytes(Vec<u8>),
List(Vec<Ipld>),
Map(BTreeMap<String, Ipld>),
Link(Cid<64>),
}
Expand description
IPLD Ipld
Variants§
Null
Represents the absence of a value or the value undefined.
Bool(bool)
Represents a boolean value.
Integer(i128)
Represents an integer.
Float(f64)
Represents a floating point value.
String(String)
Represents an UTF-8 string.
Bytes(Vec<u8>)
Represents a sequence of bytes.
List(Vec<Ipld>)
Represents a list.
Map(BTreeMap<String, Ipld>)
Represents a map of strings.
Link(Cid<64>)
Represents a map of integers.
Implementations§
§impl Ipld
impl Ipld
pub fn take<'a, T>(self, index: T) -> Result<Ipld, TypeError>where
T: Into<IpldIndex<'a>>,
pub fn take<'a, T>(self, index: T) -> Result<Ipld, TypeError>where
T: Into<IpldIndex<'a>>,
Destructs an ipld list or map
pub fn get<'a, T>(&self, index: T) -> Result<&Ipld, TypeError>where
T: Into<IpldIndex<'a>>,
pub fn get<'a, T>(&self, index: T) -> Result<&Ipld, TypeError>where
T: Into<IpldIndex<'a>>,
Indexes into an ipld list or map.
pub fn iter(&self) -> IpldIter<'_>
pub fn iter(&self) -> IpldIter<'_>
Returns an iterator.
pub fn references<E>(&self, set: &mut E)where
E: Extend<Cid<64>>,
pub fn references<E>(&self, set: &mut E)where
E: Extend<Cid<64>>,
Returns the references to other blocks.
Trait Implementations§
§impl<'de> Deserialize<'de> for Ipld
impl<'de> Deserialize<'de> for Ipld
§fn deserialize<D>(
deserializer: D,
) -> Result<Ipld, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D,
) -> Result<Ipld, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
§impl<'de> Deserializer<'de> for Ipld
impl<'de> Deserializer<'de> for Ipld
Deserialize from an Ipld
enum into a Rust type.
The deserialization will return an error if you try to deserialize into an integer type that
would be too small to hold the value stored in Ipld::Integer
.
[Ipld::Floats
] can be converted to f32
if there is no of precision, else it will error.
§type Error = SerdeError
type Error = SerdeError
The error type that can be returned if some error occurs during
deserialization.
§fn deserialize_any<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_any<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Require the
Deserializer
to figure out how to drive the visitor based
on what data type is in the input. Read more§fn deserialize_unit<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_unit<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a unit value.§fn deserialize_bool<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_bool<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a bool
value.§fn deserialize_i8<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_i8<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting an i8
value.§fn deserialize_i16<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_i16<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting an i16
value.§fn deserialize_i32<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_i32<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting an i32
value.§fn deserialize_i64<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_i64<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting an i64
value.§fn deserialize_u8<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_u8<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a u8
value.§fn deserialize_u16<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_u16<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a u16
value.§fn deserialize_u32<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_u32<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a u32
value.§fn deserialize_u64<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_u64<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a u64
value.§fn deserialize_f32<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_f32<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a f32
value.§fn deserialize_f64<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_f64<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a f64
value.§fn deserialize_char<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_char<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a char
value.§fn deserialize_str<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_str<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a string value and does
not benefit from taking ownership of buffered data owned by the
Deserializer
. Read more§fn deserialize_string<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_string<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a string value and would
benefit from taking ownership of buffered data owned by the
Deserializer
. Read more§fn deserialize_bytes<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_bytes<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a byte array and does not
benefit from taking ownership of buffered data owned by the
Deserializer
. Read more§fn deserialize_byte_buf<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_byte_buf<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a byte array and would
benefit from taking ownership of buffered data owned by the
Deserializer
. Read more§fn deserialize_seq<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_seq<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a sequence of values.§fn deserialize_tuple<V>(
self,
len: usize,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_tuple<V>(
self,
len: usize,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a sequence of values and
knows how many values there are without looking at the serialized data.§fn deserialize_tuple_struct<V>(
self,
_name: &str,
len: usize,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_tuple_struct<V>(
self,
_name: &str,
len: usize,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a tuple struct with a
particular name and number of fields.§fn deserialize_map<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_map<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a map of key-value pairs.§fn deserialize_identifier<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_identifier<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting the name of a struct
field or the discriminant of an enum variant.§fn deserialize_struct<V>(
self,
_name: &str,
_fields: &[&str],
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_struct<V>(
self,
_name: &str,
_fields: &[&str],
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a struct with a particular
name and fields.§fn deserialize_unit_struct<V>(
self,
_name: &str,
_visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_unit_struct<V>(
self,
_name: &str,
_visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a unit struct with a
particular name.§fn deserialize_newtype_struct<V>(
self,
name: &str,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_newtype_struct<V>(
self,
name: &str,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting a newtype struct with a
particular name.§fn deserialize_enum<V>(
self,
_name: &str,
_variants: &[&str],
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_enum<V>(
self,
_name: &str,
_variants: &[&str],
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting an enum value with a
particular name and possible variants.§fn deserialize_ignored_any<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_ignored_any<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type needs to deserialize a value whose type
doesn’t matter because it is ignored. Read more§fn deserialize_option<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_option<V>(
self,
visitor: V,
) -> Result<<V as Visitor<'de>>::Value, <Ipld as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Hint that the
Deserialize
type is expecting an optional value. Read more§fn is_human_readable(&self) -> bool
fn is_human_readable(&self) -> bool
Determine whether
Deserialize
implementations should expect to
deserialize their human-readable form. Read more§impl Serialize for Ipld
impl Serialize for Ipld
§fn serialize<S>(
&self,
serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
fn serialize<S>(
&self,
serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl StructuralPartialEq for Ipld
Auto Trait Implementations§
impl Freeze for Ipld
impl RefUnwindSafe for Ipld
impl Send for Ipld
impl Sync for Ipld
impl Unpin for Ipld
impl UnwindSafe for Ipld
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more