Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::UnaryExpressionImpl Class Reference

Implementation of a unary expression. More...

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

Inheritance diagram for Arcane::UnaryExpressionImpl:
Collaboration diagram for Arcane::UnaryExpressionImpl:

Public Types

enum  eOperationType {
  UnarySubstract = 0 , Inverse = 1 , Acos = 2 , Asin = 3 ,
  Atan = 4 , Ceil = 5 , Cos = 6 , Cosh = 7 ,
  Exp = 8 , Fabs = 9 , Floor = 10 , Log = 11 ,
  Log10 = 12 , Sin = 13 , Sinh = 14 , Sqrt = 15 ,
  Tan = 16 , Tanh = 17 , NbOperationType = 18
}

Public Member Functions

 UnaryExpressionImpl (IExpressionImpl *first, eOperationType operation)
virtual void assign (IExpressionImpl *)
virtual void assign (IExpressionImpl *, IntegerConstArrayView)
virtual void apply (ExpressionResult *result)
virtual Integer vectorSize () const
 Number of elements in the vector.
String operationName () const
Public Member Functions inherited from Arcane::ExpressionImpl
virtual void addRef ()
virtual void removeRef ()
virtual void setTrace (bool v)
virtual void dumpIf (IExpressionImpl *test_expr, Array< Expression > &exprs)

Static Public Member Functions

static String operationName (eOperationType type)

Private Attributes

Expression m_first
eOperationType m_operation

Additional Inherited Members

Protected Member Functions inherited from Arcane::ExpressionImpl
bool isTraceMode () const
Protected Member Functions inherited from Arcane::IExpressionImpl
virtual ~IExpressionImpl ()
 Releases resources. Only called by a removeRef().
Protected Attributes inherited from Arcane::ExpressionImpl
OperatorMngm_op_mng

Detailed Description

Implementation of a unary expression.

Definition at line 40 of file UnaryExpressionImpl.h.

Member Enumeration Documentation

◆ eOperationType

enum Arcane::UnaryExpressionImpl::eOperationType

Definition at line 45 of file UnaryExpressionImpl.h.

Constructor & Destructor Documentation

◆ UnaryExpressionImpl()

Arcane::UnaryExpressionImpl::UnaryExpressionImpl ( IExpressionImpl * first,
eOperationType operation )

Definition at line 29 of file UnaryExpressionImpl.cc.

Member Function Documentation

◆ apply()

void Arcane::UnaryExpressionImpl::apply ( ExpressionResult * result)
virtual

Implements Arcane::IExpressionImpl.

Definition at line 88 of file UnaryExpressionImpl.cc.

◆ assign() [1/2]

virtual void Arcane::UnaryExpressionImpl::assign ( IExpressionImpl * )
inlinevirtual

Implements Arcane::IExpressionImpl.

Definition at line 75 of file UnaryExpressionImpl.h.

◆ assign() [2/2]

virtual void Arcane::UnaryExpressionImpl::assign ( IExpressionImpl * ,
IntegerConstArrayView  )
inlinevirtual

Implements Arcane::IExpressionImpl.

Definition at line 76 of file UnaryExpressionImpl.h.

◆ operationName() [1/2]

String Arcane::UnaryExpressionImpl::operationName ( ) const
inline

Definition at line 79 of file UnaryExpressionImpl.h.

◆ operationName() [2/2]

String Arcane::UnaryExpressionImpl::operationName ( eOperationType type)
static

Definition at line 40 of file UnaryExpressionImpl.cc.

◆ vectorSize()

virtual Integer Arcane::UnaryExpressionImpl::vectorSize ( ) const
inlinevirtual

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.

Implements Arcane::IExpressionImpl.

Definition at line 78 of file UnaryExpressionImpl.h.

Member Data Documentation

◆ m_first

Expression Arcane::UnaryExpressionImpl::m_first
private

Definition at line 84 of file UnaryExpressionImpl.h.

◆ m_operation

eOperationType Arcane::UnaryExpressionImpl::m_operation
private

Definition at line 85 of file UnaryExpressionImpl.h.


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