AXOM
Axom provides a robust, flexible software infrastructure for the development of multi-physics applications and computational tools.
axom::inlet::AggregateVerifiable< BaseType > Class Template Reference

Implementation of the Verifiable interface for aggregates of BaseTypes. More...

#include </home/docs/checkouts/readthedocs.org/user_builds/axom/checkouts/v0.5.0/src/axom/inlet/Verifiable.hpp>

Inheritance diagram for axom::inlet::AggregateVerifiable< BaseType >:

Public Member Functions

 AggregateVerifiable (std::vector< std::reference_wrapper< BaseVerifiable >> &&verifiables)
 
AggregateVerifiableoperator= (const AggregateVerifiable &)=delete
 
AggregateVerifiablerequired (bool isRequired=true)
 Set the required status of this object. More...
 
bool isRequired () const
 Return the required status. More...
 
AggregateVerifiableregisterVerifier (std::function< bool(const BaseType &)> lambda)
 Registers the function object that will verify this object's contents during the verification stage. More...
 
bool verify () const
 Verifies the object to make sure it satisfies the imposed requirements. More...
 

Detailed Description

template<typename BaseType>
class axom::inlet::AggregateVerifiable< BaseType >

Implementation of the Verifiable interface for aggregates of BaseTypes.

Template Parameters
BaseTypeThe "base" type of the object, used for the argument type of a verifying predicate

In practice this interface is used for the Container and Function classes.

Constructor & Destructor Documentation

◆ AggregateVerifiable()

template<typename BaseType>
axom::inlet::AggregateVerifiable< BaseType >::AggregateVerifiable ( std::vector< std::reference_wrapper< BaseVerifiable >> &&  verifiables)
inline

Member Function Documentation

◆ operator=()

template<typename BaseType>
AggregateVerifiable& axom::inlet::AggregateVerifiable< BaseType >::operator= ( const AggregateVerifiable< BaseType > &  )
delete

◆ required()

template<typename BaseType>
AggregateVerifiable& axom::inlet::AggregateVerifiable< BaseType >::required ( bool  isRequired = true)
inlinevirtual

Set the required status of this object.

Set whether this object is required, or not, to be in the input file. The default behavior is to not be required.

Parameters
[in]isRequiredBoolean value of whether object is required
Returns
Reference to calling object, for chaining

Implements axom::inlet::Verifiable< BaseType >.

Referenced by axom::inlet::AggregateVerifiable< axom::inlet::Function >::required().

◆ isRequired()

template<typename BaseType>
bool axom::inlet::AggregateVerifiable< BaseType >::isRequired ( ) const
inlinevirtual

Return the required status.

Return that this object is required, or not, to be in the input file. The default behavior is to not be required.

Returns
Boolean value of whether this object is required

Implements axom::inlet::Verifiable< BaseType >.

◆ registerVerifier()

template<typename BaseType>
AggregateVerifiable& axom::inlet::AggregateVerifiable< BaseType >::registerVerifier ( std::function< bool(const BaseType &)>  lambda)
inlinevirtual

Registers the function object that will verify this object's contents during the verification stage.

Parameters
[in]Thefunction object.

Implements axom::inlet::Verifiable< BaseType >.

Referenced by axom::inlet::AggregateVerifiable< axom::inlet::Function >::registerVerifier().

◆ verify()

template<typename BaseType>
bool axom::inlet::AggregateVerifiable< BaseType >::verify ( ) const
inlinevirtual

Verifies the object to make sure it satisfies the imposed requirements.

Implements axom::inlet::Verifiable< BaseType >.


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