Enum reform::structure::Element[][src]

pub enum Element<ID: Id = VarName> {
    VariableArgument(ID),
    Wildcard(ID, Vec<Element<ID>>),
    FnWildcard(ID, Box<(Vec<Element<ID>>, Vec<Element<ID>>)>),
    Dollar(ID, Vec<Element<ID>>),
    Var(ID, Number),
    Pow(boolBox<(Element<ID>, Element<ID>)>),
    NumberRange(NumberOrdering),
    Comparison(boolBox<(Element<ID>, Element<ID>)>, Ordering),
    Fn(bool, ID, Vec<Element<ID>>),
    Term(boolVec<Element<ID>>),
    SubExpr(boolVec<Element<ID>>),
    Num(boolNumber),
    RationalPolynomialCoefficient(boolBox<(Polynomial, Polynomial)>),
}

Variants

Methods

impl Element
[src]

A custom partial order that is used to normalize a term. TODO: check consistency with partial_cmp!

A custom partial order that ignores coefficients for the ground level, i.e., x and x*2 are considered equal.

impl Element
[src]

impl Element<String>
[src]

Replaces string names by numerical IDs.

impl Element
[src]

impl Element
[src]

Expands products and positive powers in the element (non-iteratively).

impl Element
[src]

impl Element
[src]

impl Element
[src]

Apply builtin-functions, such as delta_ and nargs_. This function should be called during normalization.

Normalize an element in-place. Returns true if element changed.

impl Element
[src]

Compare normalized elements in serialized form.

Serialize any element to a term. Extra information is stored to quickly jump to the coefficient in the case serialized terms have to be merged.

Add two serialized terms which are identical in all but the coefficient. The result will be written in b1. Returns true if the result is 0.

Trait Implementations

impl<ID: Debug + Id> Debug for Element<ID>
[src]

Formats the value using the given formatter. Read more

impl<ID: Clone + Id> Clone for Element<ID>
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<ID: Hash + Id> Hash for Element<ID>
[src]

Feeds this value into the given [Hasher]. Read more

Feeds a slice of this type into the given [Hasher]. Read more

impl<ID: PartialEq + Id> PartialEq for Element<ID>
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl<ID: Eq + Id> Eq for Element<ID>
[src]

impl<ID: Id> Default for Element<ID>
[src]

Returns the "default value" for a type. Read more

impl Display for Element
[src]

Formats the value using the given formatter. Read more

impl FromStr for Element<String>
[src]

The associated error which can be returned from parsing.

Parses a string s to return a value of this type. Read more

Auto Trait Implementations

impl<ID> Send for Element<ID> where
    ID: Send

impl<ID> Sync for Element<ID> where
    ID: Sync