pub enum Distributed {
Null,
Bool(bool),
I64(Le<i64>),
U64(Le<u64>),
F64(Le<f64>),
String(Point<String>),
Array(Point<Vec<Self>>),
Object(Point<BTreeMap<LpString, Self>>),
}Available on crate feature
distributed only.Variants§
Null
Bool(bool)
I64(Le<i64>)
U64(Le<u64>)
F64(Le<f64>)
String(Point<String>)
Array(Point<Vec<Self>>)
Object(Point<BTreeMap<LpString, Self>>)
Implementations§
Trait Implementations§
Source§impl Clone for Distributed
impl Clone for Distributed
Source§fn clone(&self) -> Distributed
fn clone(&self) -> Distributed
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Default for Distributed
impl Default for Distributed
Source§fn default() -> Distributed
fn default() -> Distributed
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for Distributed
impl<'de> Deserialize<'de> for Distributed
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
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 Enum for Distributed
impl Enum for Distributed
Source§impl<__I: PointInput<Extra: Send + Sync + Clone>> EnumParse<__I> for Distributed
impl<__I: PointInput<Extra: Send + Sync + Clone>> EnumParse<__I> for Distributed
Source§fn parse_as_enum(input: I) -> Result<Self, Error>
fn parse_as_enum(input: I) -> Result<Self, Error>
For implementing
Parse::parse.Source§impl<__I: PointInput<Extra: Send + Sync>> EnumParseInline<__I> for Distributedwhere
bool: ParseInline<__I> + Inline<__I::Extra>,
Le<i64>: ParseInline<__I> + Inline<__I::Extra>,
Le<u64>: ParseInline<__I> + Inline<__I::Extra>,
Le<f64>: ParseInline<__I> + Inline<__I::Extra>,
Point<String>: ParseInline<__I> + Inline<__I::Extra>,
impl<__I: PointInput<Extra: Send + Sync>> EnumParseInline<__I> for Distributedwhere
bool: ParseInline<__I> + Inline<__I::Extra>,
Le<i64>: ParseInline<__I> + Inline<__I::Extra>,
Le<u64>: ParseInline<__I> + Inline<__I::Extra>,
Le<f64>: ParseInline<__I> + Inline<__I::Extra>,
Point<String>: ParseInline<__I> + Inline<__I::Extra>,
Source§fn parse_as_inline_enum(input: &mut I) -> Result<Self, Error>
fn parse_as_inline_enum(input: &mut I) -> Result<Self, Error>
For implementing
ParseInline::parse_inline.Source§impl InlineOutput for Distributedwhere
bool: InlineOutput,
Le<i64>: InlineOutput,
Le<u64>: InlineOutput,
Le<f64>: InlineOutput,
Point<String>: InlineOutput,
Point<Vec<Self>>: InlineOutput,
Point<BTreeMap<LpString, Self>>: InlineOutput,
impl InlineOutput for Distributedwhere
bool: InlineOutput,
Le<i64>: InlineOutput,
Le<u64>: InlineOutput,
Le<f64>: InlineOutput,
Point<String>: InlineOutput,
Point<Vec<Self>>: InlineOutput,
Point<BTreeMap<LpString, Self>>: InlineOutput,
Source§impl ListHashes for Distributed
impl ListHashes for Distributed
Source§fn list_hashes(&self, visitor: &mut (impl ?Sized + FnMut(Hash)))
fn list_hashes(&self, visitor: &mut (impl ?Sized + FnMut(Hash)))
[
Hash]-only part of Topological::traverse.Source§fn topology_hash(&self) -> Hash
fn topology_hash(&self) -> Hash
[
Hash] of all [Hash]es the object refers to other objects by.Source§fn point_count(&self) -> usize
fn point_count(&self) -> usize
How many others this object refers to.
Source§impl MaybeHasNiche for Distributed
impl MaybeHasNiche for Distributed
Source§type MnArray = <<Distributed as Enum>::Kind as MaybeHasNiche>::MnArray
type MnArray = <<Distributed as Enum>::Kind as MaybeHasNiche>::MnArray
Should implement
MnArray. Not constraint explicitly, because that breaks things.Source§impl<__I: PointInput<Extra: Send + Sync + Clone>> Parse<__I> for Distributed
impl<__I: PointInput<Extra: Send + Sync + Clone>> Parse<__I> for Distributed
Source§impl<__I: PointInput<Extra: Send + Sync>> ParseInline<__I> for Distributedwhere
bool: ParseInline<__I> + Inline<__I::Extra>,
Le<i64>: ParseInline<__I> + Inline<__I::Extra>,
Le<u64>: ParseInline<__I> + Inline<__I::Extra>,
Le<f64>: ParseInline<__I> + Inline<__I::Extra>,
Point<String>: ParseInline<__I> + Inline<__I::Extra>,
impl<__I: PointInput<Extra: Send + Sync>> ParseInline<__I> for Distributedwhere
bool: ParseInline<__I> + Inline<__I::Extra>,
Le<i64>: ParseInline<__I> + Inline<__I::Extra>,
Le<u64>: ParseInline<__I> + Inline<__I::Extra>,
Le<f64>: ParseInline<__I> + Inline<__I::Extra>,
Point<String>: ParseInline<__I> + Inline<__I::Extra>,
Source§fn parse_inline(input: &mut __I) -> Result<Self>
fn parse_inline(input: &mut __I) -> Result<Self>
Parse without consuming the whole stream. Errors on unexpected EOF.
Source§fn parse_as_inline(input: I) -> Result<Self, Error>
fn parse_as_inline(input: I) -> Result<Self, Error>
For implementing
Parse::parse.Source§fn parse_vec(input: I) -> Result<Vec<Self>, Error>
fn parse_vec(input: I) -> Result<Vec<Self>, Error>
Parse a
Vec of Self. Customisable for optimisations.Source§fn parse_vec_n(input: &mut I, n: usize) -> Result<Vec<Self>, Error>
fn parse_vec_n(input: &mut I, n: usize) -> Result<Vec<Self>, Error>
Parse a
Vec of Self of length n. Customisable for optimisations.Source§fn parse_array<const N: usize>(input: &mut I) -> Result<[Self; N], Error>
fn parse_array<const N: usize>(input: &mut I) -> Result<[Self; N], Error>
Parse an array of
Self. Customisable for optimisations.Source§fn parse_generic_array<N>(input: &mut I) -> Result<GenericArray<Self, N>, Error>where
N: ArrayLength,
fn parse_generic_array<N>(input: &mut I) -> Result<GenericArray<Self, N>, Error>where
N: ArrayLength,
Parse a
GenericArray of Self. Customisable for optimisations.Source§impl Serialize for Distributed
impl Serialize for Distributed
Source§impl ToOutput for Distributed
impl ToOutput for Distributed
Source§fn to_output(&self, output: &mut (impl ?Sized + Output))
fn to_output(&self, output: &mut (impl ?Sized + Output))
Provide object’s byte representation to an
Output.Source§fn mangle_hash(&self) -> Hash
fn mangle_hash(&self) -> Hash
“Mangle hash” of the object. This is used to introduce runtime distinction between
data-identical objects similarly to compile-time
Tagged::HASH.Source§impl Topological for Distributed
impl Topological for Distributed
Source§fn traverse(&self, visitor: &mut (impl ?Sized + PointVisitor))
fn traverse(&self, visitor: &mut (impl ?Sized + PointVisitor))
List what objects this one refers to. Read more
Source§fn topology(&self) -> Vec<Arc<dyn Singular>>
fn topology(&self) -> Vec<Arc<dyn Singular>>
Collect references into a dynamically-typed list.
Source§fn byte_node(&self) -> (Vec<u8>, Arc<dyn Resolve>)where
Self: ToOutput,
fn byte_node(&self) -> (Vec<u8>, Arc<dyn Resolve>)where
Self: ToOutput,
Useful in
Resolve::resolve and FetchBytes::fetch_bytes.Source§fn to_resolve(&self) -> Arc<dyn Resolve> ⓘ
fn to_resolve(&self) -> Arc<dyn Resolve> ⓘ
Reconstruct a
Resolve usable for Parse::parseing this object based on references.Auto Trait Implementations§
impl !RefUnwindSafe for Distributed
impl !UnwindSafe for Distributed
impl Freeze for Distributed
impl Send for Distributed
impl Sync for Distributed
impl Unpin for Distributed
impl UnsafeUnpin for Distributed
Blanket Implementations§
Source§impl<T> AsAny for T
impl<T> AsAny for T
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,
impl<T> Component for T
Source§impl<T> DefaultHash for T
impl<T> DefaultHash for T
fn default_hash() -> Hash
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T, U> EquivalentFor<U> for Twhere
U: Equivalent<T>,
impl<T, U> EquivalentFor<U> for Twhere
U: Equivalent<T>,
fn equivalent_for(self) -> U
Source§impl<T, E> ExtraNoneOutput<E> for Twhere
T: OptionOutput,
impl<T, E> ExtraNoneOutput<E> for Twhere
T: OptionOutput,
fn extra_some_output(&self, output: &mut (impl Output + ?Sized))
fn extra_none_output(_: &E, output: &mut (impl Output + ?Sized))
fn extra_option_output( option: &ExtraOption<T, E>, output: &mut (impl Output + ?Sized), )
impl<T, Extra> Inline<Extra> for T
Source§impl<T> IntoPoint for Twhere
T: Traversible,
impl<T> IntoPoint for Twhere
T: Traversible,
impl<T, Extra> Object<Extra> for T
Source§impl<T> OptionOutput for Twhere
T: ToOutput + TaggedOption,
impl<T> OptionOutput for Twhere
T: ToOutput + TaggedOption,
Source§fn to_option_output(option: Option<&T>, output: &mut (impl Output + ?Sized))
fn to_option_output(option: Option<&T>, output: &mut (impl Output + ?Sized))
Provide
ToOutput::to_output for Option<Self>.Source§impl<T, B, I> OptionParse<I> for Twhere
T: Parse<I> + MaybeHasNiche,
<T as MaybeHasNiche>::MnArray: MnArray,
<<T as MaybeHasNiche>::MnArray as MnArray>::MaybeNiche: Niche<NeedsTag = B>,
B: OptionParseBit<T, I>,
I: ParseInput,
impl<T, B, I> OptionParse<I> for Twhere
T: Parse<I> + MaybeHasNiche,
<T as MaybeHasNiche>::MnArray: MnArray,
<<T as MaybeHasNiche>::MnArray as MnArray>::MaybeNiche: Niche<NeedsTag = B>,
B: OptionParseBit<T, I>,
I: ParseInput,
Source§fn parse_option(input: I) -> Result<Option<T>, Error>
fn parse_option(input: I) -> Result<Option<T>, Error>
Provide
Parse::parse for Option<Self>.Source§impl<T, B, I> OptionParseInline<I> for Twhere
T: ParseInline<I> + MaybeHasNiche,
<T as MaybeHasNiche>::MnArray: MnArray,
<<T as MaybeHasNiche>::MnArray as MnArray>::MaybeNiche: Niche<NeedsTag = B>,
B: OptionParseBitInline<T, I>,
I: ParseInput,
impl<T, B, I> OptionParseInline<I> for Twhere
T: ParseInline<I> + MaybeHasNiche,
<T as MaybeHasNiche>::MnArray: MnArray,
<<T as MaybeHasNiche>::MnArray as MnArray>::MaybeNiche: Niche<NeedsTag = B>,
B: OptionParseBitInline<T, I>,
I: ParseInput,
Source§fn parse_option_inline(input: &mut I) -> Result<Option<T>, Error>
fn parse_option_inline(input: &mut I) -> Result<Option<T>, Error>
Provide
ParseInline::parse_inline for Option<Self>.