stator
A math, geometry, and utility library
Public Member Functions | List of all members
sym::detail::VisitorInterface Struct Referenceabstract

Abstract interface class for the visitor programming pattern for Expr types. More...

#include <runtime.hpp>

Inheritance diagram for sym::detail::VisitorInterface:
sym::detail::VisitorHelper< Derived > sym::detail::VisitorHelper< BPVisitor > sym::detail::VisitorHelper< CompareConstantsVisitor< LHS_t > > sym::detail::VisitorHelper< DerivativeRT > sym::detail::VisitorHelper< DoubleDispatch1< Visitor, Op > > sym::detail::VisitorHelper< DoubleDispatch2< Visitor, LHS_t, Op > > sym::detail::VisitorHelper< FastSubRT > sym::detail::VisitorHelper< IsConstantVisitor > sym::detail::VisitorHelper< ReprVisitor< Config > > sym::detail::VisitorHelper< SimplifyRT > sym::detail::VisitorHelper< SubstituteRT > sym::detail::VisitorHelper< UnaryEval< Op > > sym::detail::VisitorHelper< Visitor >

Public Member Functions

virtual Expr visit (const double &)=0
 
virtual Expr visit (const VarRT &)=0
 
virtual Expr visit (const UnaryOp< Expr, detail::Sine > &)=0
 
virtual Expr visit (const UnaryOp< Expr, detail::Cosine > &)=0
 
virtual Expr visit (const UnaryOp< Expr, detail::Log > &)=0
 
virtual Expr visit (const UnaryOp< Expr, detail::Exp > &)=0
 
virtual Expr visit (const UnaryOp< Expr, detail::Absolute > &)=0
 
virtual Expr visit (const UnaryOp< Expr, detail::Arbsign > &)=0
 
virtual Expr visit (const BinaryOp< Expr, detail::Add, Expr > &)=0
 
virtual Expr visit (const BinaryOp< Expr, detail::Subtract, Expr > &)=0
 
virtual Expr visit (const BinaryOp< Expr, detail::Multiply, Expr > &)=0
 
virtual Expr visit (const BinaryOp< Expr, detail::Divide, Expr > &)=0
 
virtual Expr visit (const BinaryOp< Expr, detail::Power, Expr > &)=0
 

Detailed Description

This class describes the visitor pattern interface used for all transformations (and evaluations) of runtime Expr (AST).

Definition at line 110 of file runtime.hpp.

Member Function Documentation

◆ visit() [1/13]

virtual Expr sym::detail::VisitorInterface::visit ( const double &  )
pure virtual

◆ visit() [2/13]

virtual Expr sym::detail::VisitorInterface::visit ( const VarRT )
pure virtual

◆ visit() [3/13]

virtual Expr sym::detail::VisitorInterface::visit ( const UnaryOp< Expr, detail::Sine > &  )
pure virtual

◆ visit() [4/13]

virtual Expr sym::detail::VisitorInterface::visit ( const UnaryOp< Expr, detail::Cosine > &  )
pure virtual

◆ visit() [5/13]

virtual Expr sym::detail::VisitorInterface::visit ( const UnaryOp< Expr, detail::Log > &  )
pure virtual

◆ visit() [6/13]

virtual Expr sym::detail::VisitorInterface::visit ( const UnaryOp< Expr, detail::Exp > &  )
pure virtual

◆ visit() [7/13]

virtual Expr sym::detail::VisitorInterface::visit ( const UnaryOp< Expr, detail::Absolute > &  )
pure virtual

◆ visit() [8/13]

virtual Expr sym::detail::VisitorInterface::visit ( const UnaryOp< Expr, detail::Arbsign > &  )
pure virtual

◆ visit() [9/13]

virtual Expr sym::detail::VisitorInterface::visit ( const BinaryOp< Expr, detail::Add, Expr > &  )
pure virtual

◆ visit() [10/13]

virtual Expr sym::detail::VisitorInterface::visit ( const BinaryOp< Expr, detail::Subtract, Expr > &  )
pure virtual

◆ visit() [11/13]

virtual Expr sym::detail::VisitorInterface::visit ( const BinaryOp< Expr, detail::Multiply, Expr > &  )
pure virtual

◆ visit() [12/13]

virtual Expr sym::detail::VisitorInterface::visit ( const BinaryOp< Expr, detail::Divide, Expr > &  )
pure virtual

◆ visit() [13/13]

virtual Expr sym::detail::VisitorInterface::visit ( const BinaryOp< Expr, detail::Power, Expr > &  )
pure virtual

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