Reflected value; Gives a syntax for inductive data type
Constr), named articulations (
Art) and primitive
Data). All values in the engine (including the values of
nodes, and the values stored on edges) are represented with this
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.
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
A list of values (like a tuple, but parsed and printed
differently). Can be seen as a special case of
Constructor with a sequence of fields (name-value pairs) as parameters.
Named articulation, and its content (an
Art is either a named value, or a named computation).
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.
fn hash_slice<H>(data: &[Self], state: &mut H) where1.3.0[src]
impl StructuralEq for Val[src]
impl StructuralPartialEq for Val[src]
impl !RefUnwindSafe for Val
impl !UnwindSafe for Val
type Owned = T
The resulting type after obtaining ownership.
fn clone_into(&self, target: &mut T)[src]
type Error = Infallible
The type returned in the event of a conversion error.