OPAL (Object Oriented Parallel Accelerator Library) 2022.1
OPAL
Public Member Functions | Private Member Functions | Private Attributes | List of all members
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 >:
Inheritance graph
[legend]
Collaboration diagram for Expressions::ABinary< T, U >:
Collaboration graph
[legend]

Public Member Functions

 ABinary (const TFunction2< T, U > &function, PtrToArray< U > left, PtrToArray< U > right)
 Constructor. More...
 
 ABinary (const ABinary< T, U > &)
 
virtual ~ABinary ()
 
virtual OArray< T > * clone () const
 Make clone. More...
 
virtual std::vector< T > evaluate () const
 Evaluate. More...
 
virtual void print (std::ostream &str, int precedence=99) const
 Print expression. More...
 
- Public Member Functions inherited from Expressions::AList< T >
 AList ()
 Default constructor. More...
 
 AList (const ArrayOfPtrs< T > &)
 Constructor. More...
 
 AList (const AList &)
 
virtual ~AList ()
 
virtual OArray< T > * clone () const
 Make clone. More...
 
virtual std::vector< T > evaluate () const
 Evaluate. More...
 
virtual void print (std::ostream &, int precedence=99) const
 Print array expression. More...
 
- Public Member Functions inherited from Expressions::OArray< T >
 OArray ()
 
 OArray (const OArray &)
 
virtual ~OArray ()
 
virtual OArray< T > * clone () const =0
 Copy expression. More...
 
virtual std::vector< T > evaluate () const =0
 Evaluate. More...
 
virtual bool isConstant () const
 Test for constant. More...
 
virtual void print (std::ostream &, int precedence=99) const =0
 Print expression. More...
 

Private Member Functions

 ABinary ()
 
void operator= (const ABinary &)
 

Private Attributes

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

Additional Inherited Members

- Protected Attributes inherited from Expressions::AList< T >
ArrayOfPtrs< T > itsValue
 The vector of expressions. More...
 

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.

◆ ABinary() [2/3]

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

Definition at line 81 of file ABinary.h.

◆ ~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
inlinevirtual

Make clone.

Reimplemented from Expressions::AList< T >.

Definition at line 99 of file ABinary.h.

◆ evaluate()

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

Evaluate.

Reimplemented from Expressions::AList< T >.

Definition at line 105 of file ABinary.h.

◆ operator=()

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

◆ 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.

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.

◆ lft

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

Definition at line 72 of file ABinary.h.

◆ rgt

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

Definition at line 73 of file ABinary.h.


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