Inherits ltl::_et_parse_base.
This class represents a unary operation in the parse tree of an expression. It captures the operrand of the operation (of type ExprNode<>
) and the operation itself, which is a functor that encapsulates the operation for the element type of the arrays/expressions involved.
Like all parse tree elements, this class implements the iterator interface. It forwards all iterator movements to the operand, and when dereferenced, evaluates the operation passing the operand as the parameter.
typedef Op::value_type ltl::ExprUnopNode< A, Op, N >::value_type |
the result data type is the value_type
of the operation
anonymous enum |
anonymous enum |
ltl::ExprUnopNode< A, Op, N >::ExprUnopNode | ( | const A & | a | ) | [inline] |
Constructor.
void ltl::ExprUnopNode< A, Op, N >::operator++ | ( | ) | [inline] |
Implement the iterator interface forwarding all operations to the operand.
void ltl::ExprUnopNode< A, Op, N >::advance | ( | ) | [inline] |
void ltl::ExprUnopNode< A, Op, N >::advanceN | ( | const int | i | ) | [inline] |
void ltl::ExprUnopNode< A, Op, N >::advanceN | ( | const int | i, | |
const int | dim | |||
) | [inline] |
void ltl::ExprUnopNode< A, Op, N >::advanceWithStride1 | ( | ) | [inline] |
void ltl::ExprUnopNode< A, Op, N >::advanceDim | ( | ) | [inline] |
void ltl::ExprUnopNode< A, Op, N >::advanceDim | ( | const int | cutDim | ) | [inline] |
value_type ltl::ExprUnopNode< A, Op, N >::operator * | ( | ) | const [inline] |
Evaluate by passing the values of the operand to the operation.
value_type ltl::ExprUnopNode< A, Op, N >::readWithoutStride | ( | const int | i | ) | const [inline] |
value_type ltl::ExprUnopNode< A, Op, N >::readWithStride | ( | const int | i | ) | const [inline] |
value_type ltl::ExprUnopNode< A, Op, N >::readWithStride | ( | const int | i, | |
const int | dim | |||
) | const [inline] |
bool ltl::ExprUnopNode< A, Op, N >::isStorageContiguous | ( | ) | const [inline] |
bool ltl::ExprUnopNode< A, Op, N >::isStride1 | ( | ) | const [inline] |
bool ltl::ExprUnopNode< A, Op, N >::isConformable | ( | const Shape< N > & | other | ) | const [inline] |
void ltl::ExprUnopNode< A, Op, N >::reset | ( | ) | [inline] |
const Shape<N>* ltl::ExprUnopNode< A, Op, N >::shape | ( | ) | const [inline] |
Return a shape
object from the operand parse tree.