CoDiPack  3.0.0
A Code Differentiation Package
SciComp TU Kaiserslautern
Loading...
Searching...
No Matches
codi::InnerStatementEvaluator Struct Reference

Expression evaluation in the inner function. Data loading in the compilation context of the tape. Storing in static context. More...

#include <innerStatementEvaluator.hpp>

Inheritance diagram for codi::InnerStatementEvaluator:

StatementEvaluatorInterface implementation

using Handle = InnerPrimalTapeStatementData const*
 Pointer to static storage location.
 
template<StatementCall type, typename Tape, typename... Args>
static void call (Handle const &h, Args &&... args)
 
template<typename Tape, typename Generator, typename Stmt>
static Handle createHandle ()
 

Additional Inherited Members

using Handle = int
 Type of the handle.
 
template<StatementCall type, typename Tape, typename... Args>
static void call (Handle const &h, Args &&... args)
 
template<typename Tape, typename Generator, typename Expr>
static Handle createHandle ()
 

Detailed Description

Expression evaluation in the inner function. Data loading in the compilation context of the tape. Storing in static context.

Data loading is performed in the compilation context of the tape. The tape will then call the handle for the evaluation of the expression after the data is loaded. This evaluator stores expression specific data and the inner function handles.

See StatementEvaluatorInterface for details.

Member Function Documentation

◆ call()

template<StatementCall type, typename Tape, typename... Args>
static void codi::InnerStatementEvaluator::call ( Handle const & h,
Args &&... args )
inlinestatic

Template Parameters
TapeHas to implement StatementEvaluatorTapeInterface or StatementEvaluatorInnerTapeInterface, depending on the interface the implementation uses.

◆ createHandle()

template<typename Tape, typename Generator, typename Stmt>
static Handle codi::InnerStatementEvaluator::createHandle ( )
inlinestatic

Template Parameters
TapeUsually not required. Access tape specific configurations.
GeneratorHas to implement the StatementEvaluatorTapeInterface or StatementEvaluatorInnerTapeInterface. Usually the same as Tape.
ExprInstance of ExpressionInterface.

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