AXOM
Axom provides a robust, flexible software infrastructure for the development of multi-physics applications and computational tools.
|
Implementation of the Verifiable interface for aggregates of BaseTypes. More...
#include </home/docs/checkouts/readthedocs.org/user_builds/axom/checkouts/main/src/axom/inlet/Verifiable.hpp>
Public Types | |
using | Verifier = std::function< bool(const BaseType &, std::vector< VerificationError > *errors)> |
Public Member Functions | |
AggregateVerifiable (std::vector< std::reference_wrapper< BaseVerifiable >> &&verifiables) | |
AggregateVerifiable & | required (bool isRequired=true) override |
Set the required status of this object. More... | |
bool | isRequired () const override |
Return the required status. More... | |
AggregateVerifiable & | registerVerifier (typename Verifiable< BaseType >::Verifier lambda) override |
bool | verify (std::vector< VerificationError > *errors=nullptr) const override |
Verifies the object to make sure it satisfies the imposed requirements. More... | |
Verifiable< BaseType > & | registerVerifier (std::function< bool(const BaseType &)> verifier) |
Registers the function object that will verify this object's contents during the verification stage. More... | |
virtual Verifiable< BaseType > & | registerVerifier (Verifier verifier)=0 |
Registers the function object that will verify this object's contents during the verification stage. More... | |
Implementation of the Verifiable interface for aggregates of BaseTypes.
BaseType | The "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.
|
inherited |
A function which can verify the contents of the item being verifier. It should report any errors via INLET_VERIFICATION_WARNING, passing in the given array of errors.
|
inline |
|
inlineoverridevirtual |
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.
[in] | isRequired | Boolean value of whether object is required |
Implements axom::inlet::Verifiable< BaseType >.
References axom::inlet::AggregateVerifiable< BaseType >::isRequired(), and axom::inlet::AggregateVerifiable< BaseType >::required().
|
inlineoverridevirtual |
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.
Implements axom::inlet::Verifiable< BaseType >.
|
inlineoverride |
|
inlineoverridevirtual |
Verifies the object to make sure it satisfies the imposed requirements.
[in] | errors | An optional vector of errors to append to in the case of verification failure |
Ownership is not taken of errors, the raw pointer is only used for its optional reference semantics, as opposed to something like std::optional<std::reference_wrapper<T>>
Implements axom::inlet::Verifiable< BaseType >.
|
inlineinherited |
Registers the function object that will verify this object's contents during the verification stage.
[in] | verifier | The function object. |
|
pure virtualinherited |
Registers the function object that will verify this object's contents during the verification stage.
[in] | verifier | The function which will verify the contents of the container. |
Implemented in axom::inlet::Function, and axom::inlet::Container.