Enum oftlisp_anf::Expr [] [src]

pub enum Expr {
    Call(Gc<Prim>, Vec<Gc<Prim>>),
    If(Gc<Prim>, Gc<Expr>, Gc<Expr>),
    Let(Option<Symbol>, Gc<Expr>, Gc<Expr>),
    Prim(Gc<Prim>),
}

A complex expression, i.e. one that can fail to normalize.

Variants

A function call.

A conditional expression.

A let binding.

A primitive expression.

Methods

impl Expr
[src]

[src]

Returns the free variables of the expression.

Trait Implementations

impl Clone for Expr
[src]

[src]

Returns a copy of the value. Read more

1.0.0
[src]

Performs copy-assignment from source. Read more

impl Debug for Expr
[src]

[src]

Formats the value using the given formatter.

impl Finalize for Expr
[src]

[src]

impl PartialEq for Expr
[src]

[src]

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

[src]

This method tests for !=.

impl Trace for Expr
[src]

[src]

Marks all contained Gcs.

[src]

Increments the root-count of all contained Gcs.

[src]

Decrements the root-count of all contained Gcs.

[src]

Runs Finalize::finalize() on this object and all contained subobjects Read more

impl Drop for Expr
[src]

[src]

Executes the destructor for this type. Read more

impl Display for Expr
[src]

[src]

Formats the value using the given formatter. Read more