AXOM
Axom provides a robust, flexible software infrastructure for the development of multi-physics applications and computational tools.
|
A type trait for modifying function argument types to enforce const correctness and to avoid copies. More...
#include </home/docs/checkouts/readthedocs.org/user_builds/axom/checkouts/latest/src/axom/inlet/Function.hpp>
Public Types | |
using | type = typename std::conditional< std::is_arithmetic< Arg >::value, Arg, typename std::add_lvalue_reference< typename std::add_const< Arg >::type >::type >::type |
A type trait for modifying function argument types to enforce const correctness and to avoid copies.
Arg | The argument type |
Maps a type "Arg" to "const Arg&" if that type does not satisfy std::is_arithmetic, which matches Inlet primitive types bool, int, and double, but not vectors or std::strings - though only vectors and doubles are currently supported as arg types
using axom::inlet::detail::inlet_function_arg_type< Arg >::type = typename std::conditional< std::is_arithmetic<Arg>::value, Arg, typename std::add_lvalue_reference<typename std::add_const<Arg>::type>::type>::type |