SMT-RAT  24.02
Toolbox for Strategic and Parallel Satisfiability-Modulo-Theories Solving
smtrat::expression::ExpressionVisitor Class Reference

#include <ExpressionVisitor.h>

Inheritance diagram for smtrat::expression::ExpressionVisitor:
Collaboration diagram for smtrat::expression::ExpressionVisitor:

Public Types

typedef std::function< void(const Expression &)> VisitorFunction
 

Public Member Functions

void setPre (const VisitorFunction &f)
 
void setPost (const VisitorFunction &f)
 
void visit (const Expression &expression)
 
void operator() (carl::Variable::Arg)
 
void operator() (const ITEExpression &expr)
 
void operator() (const QuantifierExpression &expr)
 
void operator() (const UnaryExpression &expr)
 
void operator() (const BinaryExpression &expr)
 
void operator() (const NaryExpression &expr)
 

Private Attributes

std::optional< VisitorFunctionmPre
 
std::optional< VisitorFunctionmPost
 

Detailed Description

Definition at line 15 of file ExpressionVisitor.h.

Member Typedef Documentation

◆ VisitorFunction

Definition at line 17 of file ExpressionVisitor.h.

Member Function Documentation

◆ operator()() [1/6]

void smtrat::expression::ExpressionVisitor::operator() ( carl::Variable::Arg  )
inline

Definition at line 35 of file ExpressionVisitor.h.

◆ operator()() [2/6]

void smtrat::expression::ExpressionVisitor::operator() ( const BinaryExpression expr)
inline

Definition at line 48 of file ExpressionVisitor.h.

Here is the call graph for this function:

◆ operator()() [3/6]

void smtrat::expression::ExpressionVisitor::operator() ( const ITEExpression expr)
inline

Definition at line 37 of file ExpressionVisitor.h.

Here is the call graph for this function:

◆ operator()() [4/6]

void smtrat::expression::ExpressionVisitor::operator() ( const NaryExpression expr)
inline

Definition at line 52 of file ExpressionVisitor.h.

Here is the call graph for this function:

◆ operator()() [5/6]

void smtrat::expression::ExpressionVisitor::operator() ( const QuantifierExpression expr)
inline

Definition at line 42 of file ExpressionVisitor.h.

Here is the call graph for this function:

◆ operator()() [6/6]

void smtrat::expression::ExpressionVisitor::operator() ( const UnaryExpression expr)
inline

Definition at line 45 of file ExpressionVisitor.h.

Here is the call graph for this function:

◆ setPost()

void smtrat::expression::ExpressionVisitor::setPost ( const VisitorFunction f)
inline

Definition at line 25 of file ExpressionVisitor.h.

◆ setPre()

void smtrat::expression::ExpressionVisitor::setPre ( const VisitorFunction f)
inline

Definition at line 22 of file ExpressionVisitor.h.

◆ visit()

void smtrat::expression::ExpressionVisitor::visit ( const Expression expression)
inline

Definition at line 29 of file ExpressionVisitor.h.

Here is the call graph for this function:
Here is the caller graph for this function:

Field Documentation

◆ mPost

std::optional<VisitorFunction> smtrat::expression::ExpressionVisitor::mPost
private

Definition at line 20 of file ExpressionVisitor.h.

◆ mPre

std::optional<VisitorFunction> smtrat::expression::ExpressionVisitor::mPre
private

Definition at line 19 of file ExpressionVisitor.h.


The documentation for this class was generated from the following file: