OPALX (Object Oriented Parallel Accelerator Library for Exascal) MINIorX
OPALX
Expressions::ABinary< T, U > Class Template Reference

An array expression with two array operands. More...

#include <ABinary.h>

Inheritance diagram for Expressions::ABinary< T, U >:
Collaboration diagram for Expressions::ABinary< T, U >:

Public Member Functions

 ABinary (const TFunction2< T, U > &function, PtrToArray< U > left, PtrToArray< U > right)
 Constructor.
 ABinary (const ABinary< T, U > &)
virtual ~ABinary ()
virtual OArray< T > * clone () const
 Make clone.
virtual std::vector< Tevaluate () const
 Evaluate.
virtual void print (std::ostream &str, int precedence=99) const
 Print expression.
virtual bool isConstant () const
 Test for constant.

Protected Attributes

ArrayOfPtrs< TitsValue
 The vector of expressions.

Private Member Functions

 ABinary ()
void operator= (const ABinary &)

Private Attributes

const TFunction2< T, U > & fun
PtrToArray< U > lft
PtrToArray< U > rgt

Detailed Description

template<class T, class U>
class Expressions::ABinary< T, U >

An array expression with two array operands.

Definition at line 41 of file ABinary.h.

Constructor & Destructor Documentation

◆ ABinary() [1/3]

template<class T, class U>
Expressions::ABinary< T, U >::ABinary ( const TFunction2< T, U > & function,
PtrToArray< U > left,
PtrToArray< U > right )
inline

Constructor.

Definition at line 87 of file ABinary.h.

References Expressions::AList< T >::AList(), fun, lft, and rgt.

Referenced by ABinary(), clone(), and operator=().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ABinary() [2/3]

template<class T, class U>
Expressions::ABinary< T, U >::ABinary ( const ABinary< T, U > & )

References ABinary().

Here is the call graph for this function:

◆ ~ABinary()

template<class T, class U>
Expressions::ABinary< T, U >::~ABinary ( )
inlinevirtual

Definition at line 94 of file ABinary.h.

◆ ABinary() [3/3]

template<class T, class U>
Expressions::ABinary< T, U >::ABinary ( )
private

Member Function Documentation

◆ clone()

template<class T, class U>
OArray< T > * Expressions::ABinary< T, U >::clone ( ) const
inlinevirtual

Make clone.

Reimplemented from Expressions::AList< T >.

Definition at line 99 of file ABinary.h.

References ABinary().

Here is the call graph for this function:

◆ evaluate()

template<class T, class U>
std::vector< T > Expressions::ABinary< T, U >::evaluate ( ) const
inlinevirtual

Evaluate.

Reimplemented from Expressions::AList< T >.

Definition at line 105 of file ABinary.h.

References fun, lft, and rgt.

◆ isConstant()

template<class T>
bool Expressions::OArray< T >::isConstant ( ) const
inlinevirtualinherited

Test for constant.

Definition at line 306 of file AbstractObjects/Expressions.h.

◆ operator=()

template<class T, class U>
void Expressions::ABinary< T, U >::operator= ( const ABinary< T, U > & )
private

References ABinary().

Here is the call graph for this function:

◆ print()

template<class T, class U>
void Expressions::ABinary< T, U >::print ( std::ostream & str,
int precedence = 99 ) const
inlinevirtual

Print expression.

Reimplemented from Expressions::AList< T >.

Definition at line 144 of file ABinary.h.

References fun, lft, and rgt.

Member Data Documentation

◆ fun

template<class T, class U>
const TFunction2<T, U>& Expressions::ABinary< T, U >::fun
private

Definition at line 69 of file ABinary.h.

Referenced by ABinary(), evaluate(), and print().

◆ itsValue

template<class T>
ArrayOfPtrs<T> Expressions::AList< T >::itsValue
protectedinherited

The vector of expressions.

Definition at line 63 of file AList.h.

Referenced by AList(), AList(), evaluate(), and print().

◆ lft

template<class T, class U>
PtrToArray<U> Expressions::ABinary< T, U >::lft
private

Definition at line 72 of file ABinary.h.

Referenced by ABinary(), evaluate(), and print().

◆ rgt

template<class T, class U>
PtrToArray<U> Expressions::ABinary< T, U >::rgt
private

Definition at line 73 of file ABinary.h.

Referenced by ABinary(), evaluate(), and print().


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