OPALX (Object Oriented Parallel Accelerator Library for Exascal) master (dc2a29eed580)
OPALX
Loading...
Searching...
No Matches
Expressions::PtrToScalar< T > Class Template Reference

A pointer to a scalar expression. More...

#include <Expressions.h>

Collaboration diagram for Expressions::PtrToScalar< T >:
Collaboration graph

Public Member Functions

 PtrToScalar (Scalar< T > *rhs)
 Constructor from an object just created.
 
 PtrToScalar ()
 
 PtrToScalar (const PtrToScalar &rhs)
 
 PtrToScalar (PtrToScalar &&rhs) noexcept=default
 
 ~PtrToScalar ()
 
PtrToScalaroperator= (const PtrToScalar &)
 
PtrToScalaroperator= (PtrToScalar &&) noexcept=default
 
PtrToScalaroperator= (Scalar< T > *rhs)
 
Scalar< T > * operator-> () const
 
Scalar< T > & operator* () const
 
 operator bool () const
 
bool isValid () const
 
Scalar< T > * release ()
 
Scalar< T > * get () const
 

Private Attributes

std::unique_ptr< Scalar< T > > ptr_m
 

Detailed Description

template<class T>
class Expressions::PtrToScalar< T >

A pointer to a scalar expression.

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

Constructor & Destructor Documentation

◆ PtrToScalar() [1/4]

template<class T >
Expressions::PtrToScalar< T >::PtrToScalar ( Scalar< T > *  rhs)
inline

Constructor from an object just created.

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

◆ PtrToScalar() [2/4]

template<class T >
Expressions::PtrToScalar< T >::PtrToScalar ( )
inline

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

◆ PtrToScalar() [3/4]

template<class T >
Expressions::PtrToScalar< T >::PtrToScalar ( const PtrToScalar< T > &  rhs)
inline

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

◆ PtrToScalar() [4/4]

template<class T >
Expressions::PtrToScalar< T >::PtrToScalar ( PtrToScalar< T > &&  rhs)
defaultnoexcept

◆ ~PtrToScalar()

template<class T >
Expressions::PtrToScalar< T >::~PtrToScalar ( )
inline

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

Member Function Documentation

◆ get()

template<class T >
Scalar< T > * Expressions::PtrToScalar< T >::get ( ) const
inline

◆ isValid()

template<class T >
bool Expressions::PtrToScalar< T >::isValid ( ) const
inline

◆ operator bool()

template<class T >
Expressions::PtrToScalar< T >::operator bool ( ) const
inlineexplicit

◆ operator*()

template<class T >
Scalar< T > & Expressions::PtrToScalar< T >::operator* ( ) const
inline

◆ operator->()

template<class T >
Scalar< T > * Expressions::PtrToScalar< T >::operator-> ( ) const
inline

◆ operator=() [1/3]

template<class T >
PtrToScalar< T > & Expressions::PtrToScalar< T >::operator= ( const PtrToScalar< T > &  rhs)
inline

◆ operator=() [2/3]

template<class T >
PtrToScalar & Expressions::PtrToScalar< T >::operator= ( PtrToScalar< T > &&  )
defaultnoexcept

◆ operator=() [3/3]

template<class T >
PtrToScalar< T > & Expressions::PtrToScalar< T >::operator= ( Scalar< T > *  rhs)
inline

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

◆ release()

Member Data Documentation

◆ ptr_m


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