[−][src]Enum adapton::reflect::Val
Reflected value; Gives a syntax for inductive data type
constructors (Constr
), named articulations (Art
) and primitive
data (Data
). All values in the engine (including the values of
nodes, and the values stored on edges) are represented with this
reflected Val
type. Primarily, this distinction between actual
Rust values and this type is what makes the DCG engine "reflected"
by the definitions in this module, and not identical to them.
Variants
Constructor, with a sequence of value parameters.
A tuple of values (like a constructor, but without a constructor
name). Can be seen as a special case of Constr
.
A list of values (like a tuple, but parsed and printed
differently). Can be seen as a special case of Constr
.
Constructor with a sequence of fields (name-value pairs) as parameters.
Art(Loc, ArtContent)
Named articulation, and its content (an Art
is either a named value, or a named computation).
Name(Name)
First-class Name
value.
Const(Const)
Primitive, immutable data.
Temporary; for marking places in code where we should produce a value, but don't yet have a good way to do so.
Trait Implementations
impl Clone for Val
[src]
impl Debug for Val
[src]
impl Eq for Val
[src]
impl Hash for Val
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl PartialEq<Val> for Val
[src]
impl StructuralEq for Val
[src]
impl StructuralPartialEq for Val
[src]
Auto Trait Implementations
impl !RefUnwindSafe for Val
impl !Send for Val
impl !Sync for Val
impl Unpin for Val
impl !UnwindSafe for Val
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,