iterative-solver 0.0
molpro::linalg::array::ArrayHandler< AL, AR >::ProxyHandle Class Reference

A convenience wrapper around a pointer to the LazyHandle. More...

#include <ArrayHandler.h>

Detailed Description

template<class AL, class AR = AL>
class molpro::linalg::array::ArrayHandler< AL, AR >::ProxyHandle

A convenience wrapper around a pointer to the LazyHandle.

Public Member Functions

 ProxyHandle (std::shared_ptr< LazyHandle > handle)
 
template<typename... Args>
void axpy (Args &&...args)
 
template<typename... Args>
void dot (Args &&...args)
 
void eval ()
 
void invalidate ()
 
bool invalid ()
 
void off ()
 Turn off lazy evaluation. Next operation will evaluate without delay. More...
 
void on ()
 Turn on lazy evaluation. More...
 
bool is_off ()
 Returns true if lazy evaluation is off. More...
 

Protected Attributes

std::shared_ptr< LazyHandlem_lazy_handle
 
bool m_off = false
 whether lazy evaluation is on or off More...
 

Constructor & Destructor Documentation

◆ ProxyHandle()

template<class AL , class AR = AL>
molpro::linalg::array::ArrayHandler< AL, AR >::ProxyHandle::ProxyHandle ( std::shared_ptr< LazyHandle handle)
inline

Member Function Documentation

◆ axpy()

template<class AL , class AR = AL>
template<typename... Args>
void molpro::linalg::array::ArrayHandler< AL, AR >::ProxyHandle::axpy ( Args &&...  args)
inline

◆ dot()

template<class AL , class AR = AL>
template<typename... Args>
void molpro::linalg::array::ArrayHandler< AL, AR >::ProxyHandle::dot ( Args &&...  args)
inline

◆ eval()

template<class AL , class AR = AL>
void molpro::linalg::array::ArrayHandler< AL, AR >::ProxyHandle::eval ( )
inline

◆ invalid()

template<class AL , class AR = AL>
bool molpro::linalg::array::ArrayHandler< AL, AR >::ProxyHandle::invalid ( )
inline

◆ invalidate()

template<class AL , class AR = AL>
void molpro::linalg::array::ArrayHandler< AL, AR >::ProxyHandle::invalidate ( )
inline

◆ is_off()

template<class AL , class AR = AL>
bool molpro::linalg::array::ArrayHandler< AL, AR >::ProxyHandle::is_off ( )
inline

Returns true if lazy evaluation is off.

◆ off()

template<class AL , class AR = AL>
void molpro::linalg::array::ArrayHandler< AL, AR >::ProxyHandle::off ( )
inline

Turn off lazy evaluation. Next operation will evaluate without delay.

◆ on()

template<class AL , class AR = AL>
void molpro::linalg::array::ArrayHandler< AL, AR >::ProxyHandle::on ( )
inline

Turn on lazy evaluation.

Member Data Documentation

◆ m_lazy_handle

template<class AL , class AR = AL>
std::shared_ptr<LazyHandle> molpro::linalg::array::ArrayHandler< AL, AR >::ProxyHandle::m_lazy_handle
protected

◆ m_off

template<class AL , class AR = AL>
bool molpro::linalg::array::ArrayHandler< AL, AR >::ProxyHandle::m_off = false
protected

whether lazy evaluation is on or off