8 #ifndef SCARAB_PARAM_BASE_IMPL_HH_ 9 #define SCARAB_PARAM_BASE_IMPL_HH_ 71 throw error() <<
"Param object is not a value";
77 throw error() <<
"Param object is not an array";
83 throw error() <<
"Param object is not a node";
89 throw error() <<
"Param object is not a value";
95 throw error() <<
"Param object is not an array";
101 throw error() <<
"Param object is not a node";
134 inline std::string
param::get_value(
const std::string& a_name,
const std::string& a_default )
const 139 inline std::string
param::get_value(
const std::string& a_name,
const char* a_default )
const 144 template<
typename XValType >
150 inline std::string
param::get_value(
unsigned a_index,
const std::string& a_default )
const 160 template<
typename XValType >
168 return std::string();
param & operator=(const param &rhs)
virtual bool has_subset(const param &a_subset) const
virtual bool is_value() const
virtual param_ptr_t clone() const
const param & operator[](unsigned a_index) const
const param_value & operator()() const
Assumes that the parameter is a value, and returns a reference to itself.
std::string get_value(const std::string &a_name, const std::string &a_default) const
virtual bool is_null() const
virtual bool is_array() const
std::string get_value(unsigned a_index, const std::string &a_default) const
virtual bool is_node() const
std::unique_ptr< param > param_ptr_t
virtual param_ptr_t move_clone()
virtual std::string to_string() const
std::string get_value(const std::string &a_name, const std::string &a_default) const