pub trait ApplicationExpression<H: HostTypes>: TermExpression<H> {
type Operation: Operation<H>;
type TermExpression: TermExpression<H>;
// Required methods
fn expression_operator(&self) -> &Self::Operation;
fn arguments(&self) -> &[Self::TermExpression];
}Expand description
An AST node representing operator application: an operator applied to an argument list (e.g., add(x, y)).
Required Associated Types§
Sourcetype TermExpression: TermExpression<H>
type TermExpression: TermExpression<H>
Associated type for TermExpression.
Required Methods§
Sourcefn expression_operator(&self) -> &Self::Operation
fn expression_operator(&self) -> &Self::Operation
The operator in an application expression (e.g., op:add, op:neg).
Sourcefn arguments(&self) -> &[Self::TermExpression]
fn arguments(&self) -> &[Self::TermExpression]
The argument list of an application expression. Non-functional: an application may take multiple arguments.