Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::IExpressionImpl Class Referenceabstract

Interface for the different implementations of an expression. More...

#include <arcane/core/expr/IExpressionImpl.h>

Inheritance diagram for Arcane::IExpressionImpl:
Collaboration diagram for Arcane::IExpressionImpl:

Public Member Functions

virtual void assign (IExpressionImpl *expr)=0
virtual void assign (IExpressionImpl *expr, IntegerConstArrayView indices)=0
virtual Integer vectorSize () const =0
 Number of elements in the vector.
virtual void dumpIf (IExpressionImpl *test_expr, Array< Expression > &exprs)=0
virtual void apply (ExpressionResult *result)=0
virtual void addRef ()=0
virtual void removeRef ()=0
virtual void setTrace (bool v)=0

Protected Member Functions

virtual ~IExpressionImpl ()
 Releases resources. Only called by a removeRef().

Detailed Description

Interface for the different implementations of an expression.

Definition at line 37 of file IExpressionImpl.h.

Constructor & Destructor Documentation

◆ ~IExpressionImpl()

virtual Arcane::IExpressionImpl::~IExpressionImpl ( )
inlineprotectedvirtual

Releases resources. Only called by a removeRef().

Definition at line 42 of file IExpressionImpl.h.

Member Function Documentation

◆ dumpIf()

virtual void Arcane::IExpressionImpl::dumpIf ( IExpressionImpl * test_expr,
Array< Expression > & exprs )
pure virtual

Implemented in Arcane::ExpressionImpl.

◆ vectorSize()

virtual Integer Arcane::IExpressionImpl::vectorSize ( ) const
pure virtual

Number of elements in the vector.

If the expression is a vector and a terminal symbol (a leaf), it returns its number of elements. Otherwise, it returns 0.

Implemented in Arcane::ArrayExpressionImpl, Arcane::BinaryExpressionImpl, Arcane::LitteralExpressionImpl, Arcane::UnaryExpressionImpl, and Arcane::WhereExpressionImpl.

Referenced by Arcane::ExpressionImpl::dumpIf().

Here is the caller graph for this function:

The documentation for this class was generated from the following file: