pub trait Term {
type Type: Var;
// Required methods
fn sort_idx(&self) -> u8;
fn is_definition(&self) -> bool;
fn binders(&self) -> Range<usize>;
fn return_type(&self) -> &Self::Type;
fn command_stream(&self) -> Range<usize>;
}Expand description
A handle to a term.
Required Associated Types§
Required Methods§
Sourcefn is_definition(&self) -> bool
fn is_definition(&self) -> bool
Returns true if this term is a definition, and false otherwise.
Definitions are always conservative and can be unfolded in a proof.
Sourcefn binders(&self) -> Range<usize>
fn binders(&self) -> Range<usize>
Returns the range of the binders (arguments) of the term.
The range can be queried in the Table to get the binders themselves.
Sourcefn return_type(&self) -> &Self::Type
fn return_type(&self) -> &Self::Type
Returns the type of the expression.
Sourcefn command_stream(&self) -> Range<usize>
fn command_stream(&self) -> Range<usize>
Returns the unification command stream if this term is a definition.