|
TRIQS/nda 1.3.0
Multi-dimensional array library for C++
|
A generic nda::clef::eval function which forwards the evaluation to specialized evaluators.
Classes | |
| struct | nda::clef::evaluator< T, Pairs > |
| Generic evaluator for types which do not have a specialized evaluator. More... | |
| struct | nda::clef::evaluator< expr< Tag, Childs... >, Pairs... > |
| Specialization of nda::clef::evaluator for nda::clef::expr types. More... | |
| struct | nda::clef::evaluator< make_fun_impl< T, Is... >, Pairs... > |
| Specialization of nda::clef::evaluator for nda::clef::make_fun_impl types. More... | |
| struct | nda::clef::evaluator< placeholder< N >, pair< Is, Ts >... > |
| Specialization of nda::clef::evaluator for nda::clef::placeholder types. More... | |
| struct | nda::clef::evaluator< std::reference_wrapper< T >, Pairs... > |
| Specialization of nda::clef::evaluator for std::reference_wrapper types. More... | |
Functions | |
| template<typename T, typename... Pairs> | |
| __inline__ decltype(auto) | nda::clef::eval (T const &obj, Pairs &&...pairs) |
| Generic function to evaluate expressions and other types. | |
| __inline__ decltype(auto) nda::clef::eval | ( | T const & | obj, |
| Pairs &&... | pairs ) |
#include <nda/clef/eval.hpp>
Generic function to evaluate expressions and other types.
Calls the correct nda::clef::evaluator for the given expression/type.
Here, ex is a binary expression with the + tag and the placeholder i_ and j_ as its child nodes. The eval function calls the correct evaluator for the given expression and the given pairs.
| T | Type of the expression/object. |
| Pairs | Types of the nda::clef::pair objects. |
| obj | Expression/object to be evaluated. |
| pairs | nda::clef::pair objects to be applied to the expression. |