14#include "arcane/utils/ArcanePrecomp.h"
16#include "arcane/expr/UnaryExpressionImpl.h"
17#include "arcane/expr/OperatorMng.h"
18#include "arcane/expr/BadOperationException.h"
33, m_operation(operation)
40String UnaryExpressionImpl::
41operationName(eOperationType type)
45 return "UnarySubstract";
88void UnaryExpressionImpl::
89apply(ExpressionResult* result)
97 ExpressionResult first_op(result->indices());
98 m_first->apply(&first_op);
101 VariantBase::eType type = first_op.data()->type();
102 UnaryOperator* op = m_op_mng->find(
this, type, m_operation);
104 throw BadOperationException(
"UnaryExpressionImpl::apply", operationName(), type);
106 op->evaluate(result, first_op.data());
Base class for the expression implementation.
Interface for the different implementations of an expression.
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --