TiledArray::detail::Noop< Result, Arg, Consumable > Class Template Reference

Documentation

template<typename Result, typename Arg, bool Consumable>
class TiledArray::detail::Noop< Result, Arg, Consumable >

Tile no operation (noop)

This no operation will return the original or apply a permutation to the result tensor. If no permutation is given or the permutation is null, then the result is not permuted.

Template Parameters
ResultThe result tile type
ArgThe argument type
ConsumableFlag that is true when Arg is consumable

Definition at line 44 of file noop.h.

Public Types

typedef Noop< Result, Arg, Consumable > Noop_
 This object type. More...
 
typedef Arg argument_type
 The argument type. More...
 
typedef Result result_type
 The result tile type. More...
 

Public Member Functions

template<typename Perm , typename = std::enable_if_t<detail::is_permutation_v<Perm>>>
result_type operator() (const argument_type &arg, const Perm &perm) const
 Permute operator. More...
 
template<typename A >
result_type operator() (A &&arg) const
 Clone operator. More...
 
result_type consume (argument_type &arg) const
 Pass-through operations (shallow copy) More...
 

Static Public Attributes

static constexpr bool is_consumable = Consumable
 

Member Typedef Documentation

◆ argument_type

template<typename Result , typename Arg , bool Consumable>
typedef Arg TiledArray::detail::Noop< Result, Arg, Consumable >::argument_type

The argument type.

Definition at line 47 of file noop.h.

◆ Noop_

template<typename Result , typename Arg , bool Consumable>
typedef Noop<Result, Arg, Consumable> TiledArray::detail::Noop< Result, Arg, Consumable >::Noop_

This object type.

Definition at line 46 of file noop.h.

◆ result_type

template<typename Result , typename Arg , bool Consumable>
typedef Result TiledArray::detail::Noop< Result, Arg, Consumable >::result_type

The result tile type.

Definition at line 48 of file noop.h.

Member Function Documentation

◆ consume()

template<typename Result , typename Arg , bool Consumable>
result_type TiledArray::detail::Noop< Result, Arg, Consumable >::consume ( argument_type arg) const
inline

Pass-through operations (shallow copy)

Parameters
argThe tile argument
Returns
arg

Definition at line 105 of file noop.h.

◆ operator()() [1/2]

template<typename Result , typename Arg , bool Consumable>
template<typename A >
result_type TiledArray::detail::Noop< Result, Arg, Consumable >::operator() ( A &&  arg) const
inline

Clone operator.

Template Parameters
AThe tile argument type
Parameters
argThe tile argument
Returns
A clone of the arg

Definition at line 97 of file noop.h.

◆ operator()() [2/2]

template<typename Result , typename Arg , bool Consumable>
template<typename Perm , typename = std::enable_if_t<detail::is_permutation_v<Perm>>>
result_type TiledArray::detail::Noop< Result, Arg, Consumable >::operator() ( const argument_type arg,
const Perm &  perm 
) const
inline

Permute operator.

Template Parameters
AThe tile argument type
Parameters
argThe tile argument
permThe permutation applied to the result tile
Returns
A permuted copy of arg

Definition at line 87 of file noop.h.

Member Data Documentation

◆ is_consumable

template<typename Result , typename Arg , bool Consumable>
constexpr bool TiledArray::detail::Noop< Result, Arg, Consumable >::is_consumable = Consumable
staticconstexpr

Definition at line 50 of file noop.h.


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