template<typename Derived_T, int N_Dims>
struct ltl::ExprBase< Derived_T, N_Dims >
Base class for all operands in expression templates. Both nodes and leafs of expressions inherit from this type.
This class uses the Curiously Recurring Template Pattern (CRTP) to implement "compile-time polymorphism" by taking the derived type as a template parameter and providing a method derived()
to cast itself to the derived type.
The rank of the expression operand is made explicit through the second template parameter N_Dims
to allow strict type checking on the rank in functions that accept ExprBase
objects as parameters (e.g. make sure that parameters have the same rank, or some predetermined rank).