CoDiPack  3.1.3
A Code Differentiation Package
SciComp TU Kaiserslautern
Loading...
Searching...
No Matches
codi::MathStatementGenLogic< Identifier > Struct Template Reference

Creates a math representation from a given rhs in the form of a string. More...

#include <mathStatementGenLogic.hpp>

Inheritance diagram for codi::MathStatementGenLogic< Identifier >:

Public Member Functions

template<typename Node>
inlinevoid eval (NodeInterface< Node > const &node, std::string &mathRep)
 Produces a math representation string for a given statement.
 MathStatementGenLogic (Identifier passiveThreshold=0)
 Constructor.
Public Member Functions inherited from codi::ForEachLeafLogic< MathStatementGenLogic< Identifier > >
void handleActive (Node const &node, Args &&... args)
 Called for leaf nodes which implement LhsExpressionInterface.
void handleConstant (Node const &node, Args &&... args)
 Called for leaf nodes which implement ConstantExpression.
void handleEmpty (Node const &node, Args &&... args)
 Called for leaf nodes which have an EmptyOperation..
inlineExpressionTraits::EnableIfLhsExpression< Node > leaf (Node const &node, Args &&... args)
 Called for all leaf nodes in the expression.
Public Member Functions inherited from codi::TraversalLogic< MathStatementGenLogic< Identifier > >
inlineImpl & cast ()
 Cast to the implementation.
inlinevoid eval (NodeInterface< Node > const &node, Args &&... args)
 Start the evaluation of the logic on the given expression.
inlinevoid node (Node const &node, Args &&... args)
 Called for each node in the expression.
inlinevoid leaf (Node const &node, Args &&... args)
 Called for all leaf nodes in the expression.
inlinevoid link (Child const &child, Root const &root, Args &&... args)
 Called for all links in the expression.

Public Attributes

Identifier passiveThreshold
 The identifiers that are allocated for passive values.

Overwrites from TraversalLogic

template<typename Node>
inlinevoid node (Node const &node, std::vector< std::string > &nodeRep)
 Links two nodes with a math operation.
template<typename Node>
void handleActive (Node const &node, std::vector< std::string > &linkRep)
 Called for leaf nodes which implement LhsExpressionInterface.
template<typename Node>
void handleConstant (Node const &node, std::vector< std::string > &linkRep)
 Called for leaf nodes which implement ConstantExpression.
template<typename Node>
void handleEmpty (Node const &node, std::vector< std::string > &linkRep)
 Called for leaf nodes which have an EmptyOperation.

Additional Inherited Members

Public Types inherited from codi::ForEachLeafLogic< MathStatementGenLogic< Identifier > >
using Impl
 See ForEachLeafLogic.
Public Types inherited from codi::TraversalLogic< MathStatementGenLogic< Identifier > >
using Impl
 See TraversalLogic.
Protected Member Functions inherited from codi::TraversalLogic< MathStatementGenLogic< Identifier > >
inlinevoid toLinks (Node const &node, Args &&... args)
 Helper method which calls link for each child.
inlinevoid toNode (Node const &node, Args &&... args)
 Helper method to distinguish between leaf nodes and normal nodes.

Detailed Description

template<typename Identifier>
struct codi::MathStatementGenLogic< Identifier >

Creates a math representation from a given rhs in the form of a string.

Template Parameters
IdentifierThe Codi identifier type for internal management, e.g. int.

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