LBANN  0.103.0
LivermoreBigArtificialNeuralNetworkToolkit
lbann::IsCloneableT< T > Struct Template Reference

Predicate testing for Cloneable interface. More...

#include <cloneable.hpp>

Detailed Description

template<typename T>
struct lbann::IsCloneableT< T >

Predicate testing for Cloneable interface.

This predicate determines whether a class supports the Cloneable interface. If true, this class will support a smart-pointer-to-T return from a clone() method.

This predicate type suffers a deficiency that it can be fooled rather easily. It is generally not possible to determine from the specific Cloneable instantiation used for a given type. Thus, alternative strategies must be used. As it stands, any class that provides a clone() method that returns a std::unique_ptr<T> will satisfy this predicate.

Template Parameters
TThe type being tested.

Definition at line 219 of file cloneable.hpp.


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