Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Attributes | List of all members
numeric::expression_parser::ITEExpression Class Reference

#include <Arithmetic.hh>

Inheritance diagram for numeric::expression_parser::ITEExpression:
Inheritance graph
[legend]

Public Member Functions

 ITEExpression (ExpressionCOP condition, ExpressionCOP then_clause, ExpressionCOP else_clause)
 
numeric::Real operator() () const override
 
ExpressionCOP differentiate (std::string const &varname) const override
 Returns the expression for the partial derivative of this expression by the variable named varname. If the partial derivative is always zero with respect to varname, returns null. More...
 
ExpressionCOP condition () const
 
ExpressionCOP then_expression () const
 
ExpressionCOP else_expression () const
 
std::list< std::string > active_variables () const override
 
- Public Member Functions inherited from numeric::expression_parser::Expression
 ~Expression () override
 Automatically generated virtual destructor for class deriving directly from VirtualBase. More...
 
- Public Member Functions inherited from utility::VirtualBase
 VirtualBase ()=default
 Default constructor. More...
 
virtual ~VirtualBase ()=default
 The virtual destructor is one of the main reasons for the VirtualBase class. More...
 
 VirtualBase (VirtualBase const &)=default
 
 VirtualBase (VirtualBase &&)=default
 
VirtualBaseoperator= (VirtualBase const &)=default
 
VirtualBaseoperator= (VirtualBase &&)=default
 

Private Attributes

ExpressionCOP condition_
 
ExpressionCOP then_expression_
 
ExpressionCOP else_expression_
 

Constructor & Destructor Documentation

numeric::expression_parser::ITEExpression::ITEExpression ( ExpressionCOP  condition,
ExpressionCOP  then_clause,
ExpressionCOP  else_clause 
)

Member Function Documentation

std::list< std::string > numeric::expression_parser::ITEExpression::active_variables ( ) const
overridevirtual
ExpressionCOP numeric::expression_parser::ITEExpression::condition ( ) const

References condition_.

ExpressionCOP numeric::expression_parser::ITEExpression::differentiate ( std::string const &  varname) const
overridevirtual

Returns the expression for the partial derivative of this expression by the variable named varname. If the partial derivative is always zero with respect to varname, returns null.

Implements numeric::expression_parser::Expression.

ExpressionCOP numeric::expression_parser::ITEExpression::else_expression ( ) const

References else_expression_.

numeric::Real numeric::expression_parser::ITEExpression::operator() ( ) const
overridevirtual
ExpressionCOP numeric::expression_parser::ITEExpression::then_expression ( ) const

References then_expression_.

Member Data Documentation

ExpressionCOP numeric::expression_parser::ITEExpression::condition_
private

Referenced by condition().

ExpressionCOP numeric::expression_parser::ITEExpression::else_expression_
private
ExpressionCOP numeric::expression_parser::ITEExpression::then_expression_
private

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