15#include "arcane/utils/ArcanePrecomp.h"
17#include "arcane/datatype/ArrayVariant.h"
19#include "arcane/expr/ArrayExpressionImpl.h"
20#include "arcane/expr/OperatorMng.h"
21#include "arcane/expr/BadOperationException.h"
23#include "arcane/MathUtils.h"
59 Integer size =
res->size();
69 for( Integer i=0 ; i<size ; ++i)
77 Integer size =
res->size();
78 Integer vsize =
var->size();
79 cerr <<
"** SIZE res=" << size <<
" var=" << vsize <<
" res=" <<
res <<
'\n';
80 Integer max_size = math::min(size,vsize);
85 VariantBase::eType type =
var->type();
96 for( Integer i=0 ; i<max_size ; ++i)
111 case VariantBase::TReal:
124~ArrayExpressionImpl()
134void ArrayExpressionImpl::
135assign(IExpressionImpl* expr)
137 ExpressionResult result(m_variant);
138 expr->apply(&result);
144void ArrayExpressionImpl::
145assign(IExpressionImpl* expr,ConstArrayView<Integer> indices)
147 ExpressionResult result(indices);
148 result.allocate(m_variant->type());
149 expr->apply(&result);
150 m_op->assign(&result, m_variant);
156void ArrayExpressionImpl::
157apply(ExpressionResult* result)
159 m_op->evaluate(result, m_variant);
168 return m_variant->size();
virtual Integer vectorSize() const
Nombre d'éléments du vecteur.
Operateur binaire generique pour les expressions.
Type de base polymorphe pour les tableaux (dimension 1).
Exception sur une opération des expressions.
Classe de base de l'implémentation d'une expression.
Type de base polymorphe d'une expression.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Vue constante d'un tableau de type T.