OASIS
Open Algebra Software
Loading...
Searching...
No Matches
Oasis::TypedVisitor< T > Class Template Referenceabstract

#include <Oasis/Visit.hpp>

Inheritance diagram for Oasis::TypedVisitor< T >:
[legend]
Collaboration diagram for Oasis::TypedVisitor< T >:
[legend]

Public Types

using RetT = T
 

Public Member Functions

auto Visit (const Real &real) -> any final
 
auto Visit (const Imaginary &imaginary) -> any final
 
auto Visit (const Matrix &matrix) -> any final
 
auto Visit (const Variable &variable) -> any final
 
auto Visit (const Undefined &undefined) -> any final
 
auto Visit (const EulerNumber &e) -> any final
 
auto Visit (const Pi &pi) -> any final
 
auto Visit (const Add< Expression, Expression > &add) -> any final
 
auto Visit (const Subtract< Expression, Expression > &subtract) -> any final
 
auto Visit (const Multiply< Expression, Expression > &multiply) -> any final
 
auto Visit (const Divide< Expression, Expression > &divide) -> any final
 
auto Visit (const Exponent< Expression, Expression > &exponent) -> any final
 
auto Visit (const Log< Expression, Expression > &log) -> any final
 
auto Visit (const Negate< Expression > &negate) -> any final
 
auto Visit (const Magnitude< Expression > &magnitude) -> any final
 
auto Visit (const Derivative< Expression, Expression > &derivative) -> any final
 
auto Visit (const Integral< Expression, Expression > &integral) -> any final
 
- Public Member Functions inherited from Oasis::Visitor
virtual ~Visitor ()=default
 

Protected Member Functions

virtual auto TypedVisit (const Real &real) -> RetT=0
 
virtual auto TypedVisit (const Imaginary &imaginary) -> RetT=0
 
virtual auto TypedVisit (const Matrix &matrix) -> RetT=0
 
virtual auto TypedVisit (const Variable &variable) -> RetT=0
 
virtual auto TypedVisit (const Undefined &undefined) -> RetT=0
 
virtual auto TypedVisit (const EulerNumber &) -> RetT=0
 
virtual auto TypedVisit (const Pi &) -> RetT=0
 
virtual auto TypedVisit (const Add< Expression, Expression > &add) -> RetT=0
 
virtual auto TypedVisit (const Subtract< Expression, Expression > &subtract) -> RetT=0
 
virtual auto TypedVisit (const Multiply< Expression, Expression > &multiply) -> RetT=0
 
virtual auto TypedVisit (const Divide< Expression, Expression > &divide) -> RetT=0
 
virtual auto TypedVisit (const Exponent< Expression, Expression > &exponent) -> RetT=0
 
virtual auto TypedVisit (const Log< Expression, Expression > &log) -> RetT=0
 
virtual auto TypedVisit (const Negate< Expression > &negate) -> RetT=0
 
virtual auto TypedVisit (const Magnitude< Expression > &magnitude) -> RetT=0
 
virtual auto TypedVisit (const Derivative< Expression, Expression > &derivative) -> RetT=0
 
virtual auto TypedVisit (const Integral< Expression, Expression > &integral) -> RetT=0
 

Member Typedef Documentation

◆ RetT

template<typename T >
using Oasis::TypedVisitor< T >::RetT = T

Member Function Documentation

◆ TypedVisit() [1/17]

template<typename T >
virtual auto Oasis::TypedVisitor< T >::TypedVisit ( const Add< Expression, Expression > & add) -> RetT
protectedpure virtual

◆ TypedVisit() [2/17]

template<typename T >
virtual auto Oasis::TypedVisitor< T >::TypedVisit ( const Derivative< Expression, Expression > & derivative) -> RetT
protectedpure virtual

◆ TypedVisit() [3/17]

template<typename T >
virtual auto Oasis::TypedVisitor< T >::TypedVisit ( const Divide< Expression, Expression > & divide) -> RetT
protectedpure virtual

◆ TypedVisit() [4/17]

template<typename T >
virtual auto Oasis::TypedVisitor< T >::TypedVisit ( const EulerNumber & ) -> RetT
protectedpure virtual

◆ TypedVisit() [5/17]

template<typename T >
virtual auto Oasis::TypedVisitor< T >::TypedVisit ( const Exponent< Expression, Expression > & exponent) -> RetT
protectedpure virtual

◆ TypedVisit() [6/17]

template<typename T >
virtual auto Oasis::TypedVisitor< T >::TypedVisit ( const Imaginary & imaginary) -> RetT
protectedpure virtual

◆ TypedVisit() [7/17]

template<typename T >
virtual auto Oasis::TypedVisitor< T >::TypedVisit ( const Integral< Expression, Expression > & integral) -> RetT
protectedpure virtual

◆ TypedVisit() [8/17]

template<typename T >
virtual auto Oasis::TypedVisitor< T >::TypedVisit ( const Log< Expression, Expression > & log) -> RetT
protectedpure virtual

◆ TypedVisit() [9/17]

template<typename T >
virtual auto Oasis::TypedVisitor< T >::TypedVisit ( const Magnitude< Expression > & magnitude) -> RetT
protectedpure virtual

◆ TypedVisit() [10/17]

template<typename T >
virtual auto Oasis::TypedVisitor< T >::TypedVisit ( const Matrix & matrix) -> RetT
protectedpure virtual

◆ TypedVisit() [11/17]

template<typename T >
virtual auto Oasis::TypedVisitor< T >::TypedVisit ( const Multiply< Expression, Expression > & multiply) -> RetT
protectedpure virtual

◆ TypedVisit() [12/17]

template<typename T >
virtual auto Oasis::TypedVisitor< T >::TypedVisit ( const Negate< Expression > & negate) -> RetT
protectedpure virtual

◆ TypedVisit() [13/17]

template<typename T >
virtual auto Oasis::TypedVisitor< T >::TypedVisit ( const Pi & ) -> RetT
protectedpure virtual

◆ TypedVisit() [14/17]

template<typename T >
virtual auto Oasis::TypedVisitor< T >::TypedVisit ( const Real & real) -> RetT
protectedpure virtual

◆ TypedVisit() [15/17]

template<typename T >
virtual auto Oasis::TypedVisitor< T >::TypedVisit ( const Subtract< Expression, Expression > & subtract) -> RetT
protectedpure virtual

◆ TypedVisit() [16/17]

template<typename T >
virtual auto Oasis::TypedVisitor< T >::TypedVisit ( const Undefined & undefined) -> RetT
protectedpure virtual

◆ TypedVisit() [17/17]

template<typename T >
virtual auto Oasis::TypedVisitor< T >::TypedVisit ( const Variable & variable) -> RetT
protectedpure virtual

◆ Visit() [1/17]

template<typename T >
auto Oasis::TypedVisitor< T >::Visit ( const Add< Expression, Expression > & add) -> any
inlinefinalvirtual

Implements Oasis::Visitor.

◆ Visit() [2/17]

template<typename T >
auto Oasis::TypedVisitor< T >::Visit ( const Derivative< Expression, Expression > & derivative) -> any
inlinefinalvirtual

Implements Oasis::Visitor.

◆ Visit() [3/17]

template<typename T >
auto Oasis::TypedVisitor< T >::Visit ( const Divide< Expression, Expression > & divide) -> any
inlinefinalvirtual

Implements Oasis::Visitor.

◆ Visit() [4/17]

template<typename T >
auto Oasis::TypedVisitor< T >::Visit ( const EulerNumber & e) -> any
inlinefinalvirtual

Implements Oasis::Visitor.

◆ Visit() [5/17]

template<typename T >
auto Oasis::TypedVisitor< T >::Visit ( const Exponent< Expression, Expression > & exponent) -> any
inlinefinalvirtual

Implements Oasis::Visitor.

◆ Visit() [6/17]

template<typename T >
auto Oasis::TypedVisitor< T >::Visit ( const Imaginary & imaginary) -> any
inlinefinalvirtual

Implements Oasis::Visitor.

◆ Visit() [7/17]

template<typename T >
auto Oasis::TypedVisitor< T >::Visit ( const Integral< Expression, Expression > & integral) -> any
inlinefinalvirtual

Implements Oasis::Visitor.

◆ Visit() [8/17]

template<typename T >
auto Oasis::TypedVisitor< T >::Visit ( const Log< Expression, Expression > & log) -> any
inlinefinalvirtual

Implements Oasis::Visitor.

◆ Visit() [9/17]

template<typename T >
auto Oasis::TypedVisitor< T >::Visit ( const Magnitude< Expression > & magnitude) -> any
inlinefinalvirtual

Implements Oasis::Visitor.

◆ Visit() [10/17]

template<typename T >
auto Oasis::TypedVisitor< T >::Visit ( const Matrix & matrix) -> any
inlinefinalvirtual

Implements Oasis::Visitor.

◆ Visit() [11/17]

template<typename T >
auto Oasis::TypedVisitor< T >::Visit ( const Multiply< Expression, Expression > & multiply) -> any
inlinefinalvirtual

Implements Oasis::Visitor.

◆ Visit() [12/17]

template<typename T >
auto Oasis::TypedVisitor< T >::Visit ( const Negate< Expression > & negate) -> any
inlinefinalvirtual

Implements Oasis::Visitor.

◆ Visit() [13/17]

template<typename T >
auto Oasis::TypedVisitor< T >::Visit ( const Pi & pi) -> any
inlinefinalvirtual

Implements Oasis::Visitor.

◆ Visit() [14/17]

template<typename T >
auto Oasis::TypedVisitor< T >::Visit ( const Real & real) -> any
inlinefinalvirtual

Implements Oasis::Visitor.

◆ Visit() [15/17]

template<typename T >
auto Oasis::TypedVisitor< T >::Visit ( const Subtract< Expression, Expression > & subtract) -> any
inlinefinalvirtual

Implements Oasis::Visitor.

◆ Visit() [16/17]

template<typename T >
auto Oasis::TypedVisitor< T >::Visit ( const Undefined & undefined) -> any
inlinefinalvirtual

Implements Oasis::Visitor.

◆ Visit() [17/17]

template<typename T >
auto Oasis::TypedVisitor< T >::Visit ( const Variable & variable) -> any
inlinefinalvirtual

Implements Oasis::Visitor.


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