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

Stores all possible operator types on expressions. More...

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

Collaboration diagram for Arcane::OperatorMng:

Public Member Functions

UnaryOperatorfind (UnaryExpressionImpl *e, VariantBase::eType type, UnaryExpressionImpl::eOperationType operation)
BinaryOperatorfind (BinaryExpressionImpl *e, VariantBase::eType type, BinaryExpressionImpl::eOperationType operation)
WhereOperatorfind (WhereExpressionImpl *e, VariantBase::eType type)
LitteralOperatorfind (LitteralExpressionImpl *e, VariantBase::eType type)
VariableOperator * find (VariableExpressionImpl *e, VariantBase::eType type)

Static Public Member Functions

static OperatorMng * instance ()

Private Types

typedef std::map< VariantBase::eType, UnaryOperator *, std::less< VariantBase::eType > > UnaryOpMap
typedef std::map< VariantBase::eType, BinaryOperator *, std::less< Integer > > BinaryOpMap
typedef std::map< VariantBase::eType, WhereOperator *, std::less< VariantBase::eType > > WhereOpMap
typedef std::map< VariantBase::eType, LitteralOperator *, std::less< VariantBase::eType > > LitteralOpMap
typedef std::map< VariantBase::eType, VariableOperator *, std::less< VariantBase::eType > > VariableOpMap

Private Attributes

UnaryOpMap m_unary_op [UnaryExpressionImpl::NbOperationType]
BinaryOpMap m_binary_op [BinaryExpressionImpl::NbOperationType]
WhereOpMap m_where_op
LitteralOpMap m_litteral_op
VariableOpMap m_variable_op

Static Private Attributes

static OperatorMng * m_instance = 0

Detailed Description

Stores all possible operator types on expressions.

Definition at line 40 of file OperatorMng.h.

Member Typedef Documentation

◆ BinaryOpMap

typedef std::map<VariantBase::eType, BinaryOperator*, std::less<Integer> > Arcane::OperatorMng::BinaryOpMap
private

Definition at line 85 of file OperatorMng.h.

◆ LitteralOpMap

typedef std::map<VariantBase::eType, LitteralOperator*, std::less<VariantBase::eType> > Arcane::OperatorMng::LitteralOpMap
private

Definition at line 95 of file OperatorMng.h.

◆ UnaryOpMap

typedef std::map<VariantBase::eType, UnaryOperator*, std::less<VariantBase::eType> > Arcane::OperatorMng::UnaryOpMap
private

Definition at line 80 of file OperatorMng.h.

◆ VariableOpMap

typedef std::map<VariantBase::eType, VariableOperator*, std::less<VariantBase::eType> > Arcane::OperatorMng::VariableOpMap
private

Definition at line 101 of file OperatorMng.h.

◆ WhereOpMap

typedef std::map<VariantBase::eType, WhereOperator*, std::less<VariantBase::eType> > Arcane::OperatorMng::WhereOpMap
private

Definition at line 90 of file OperatorMng.h.

Constructor & Destructor Documentation

◆ OperatorMng()

Arcane::OperatorMng::OperatorMng ( )
protected

Definition at line 46 of file OperatorMng.cc.

◆ ~OperatorMng()

Arcane::OperatorMng::~OperatorMng ( )
protected

Definition at line 194 of file OperatorMng.cc.

Member Function Documentation

◆ find() [1/5]

BinaryOperator * Arcane::OperatorMng::find ( BinaryExpressionImpl * e,
VariantBase::eType type,
BinaryExpressionImpl::eOperationType operation )

Definition at line 252 of file OperatorMng.cc.

◆ find() [2/5]

LitteralOperator * Arcane::OperatorMng::find ( LitteralExpressionImpl * e,
VariantBase::eType type )

Definition at line 273 of file OperatorMng.cc.

◆ find() [3/5]

UnaryOperator * Arcane::OperatorMng::find ( UnaryExpressionImpl * e,
VariantBase::eType type,
UnaryExpressionImpl::eOperationType operation )

Definition at line 241 of file OperatorMng.cc.

◆ find() [4/5]

VariableOperator * Arcane::OperatorMng::find ( VariableExpressionImpl * e,
VariantBase::eType type )

Definition at line 284 of file OperatorMng.cc.

◆ find() [5/5]

WhereOperator * Arcane::OperatorMng::find ( WhereExpressionImpl * e,
VariantBase::eType type )

Definition at line 263 of file OperatorMng.cc.

◆ instance()

OperatorMng * Arcane::OperatorMng::instance ( )
static

Definition at line 230 of file OperatorMng.cc.

Member Data Documentation

◆ m_binary_op

BinaryOpMap Arcane::OperatorMng::m_binary_op[BinaryExpressionImpl::NbOperationType]
private

Definition at line 86 of file OperatorMng.h.

◆ m_instance

OperatorMng * Arcane::OperatorMng::m_instance = 0
staticprivate

Definition at line 74 of file OperatorMng.h.

◆ m_litteral_op

LitteralOpMap Arcane::OperatorMng::m_litteral_op
private

Definition at line 96 of file OperatorMng.h.

◆ m_unary_op

UnaryOpMap Arcane::OperatorMng::m_unary_op[UnaryExpressionImpl::NbOperationType]
private

Definition at line 81 of file OperatorMng.h.

◆ m_variable_op

VariableOpMap Arcane::OperatorMng::m_variable_op
private

Definition at line 102 of file OperatorMng.h.

◆ m_where_op

WhereOpMap Arcane::OperatorMng::m_where_op
private

Definition at line 91 of file OperatorMng.h.


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