Template Class Option

Inheritance Relationships

Base Type

Class Documentation

template<typename T>
class Option : public options::OptionBase

Public Functions

inline Option(std::string name, T &value, std::string description = "", bool required = false)
inline Option<T> &init(const typename T::ValueType &value)
inline Option<T> &validate(std::function<typename T::ValueType(typename T::ValueType)> validator = {})
template<typename ...Args>
inline Option<T> &dependencies(const Args&&... args)
inline Option<T> &required()
inline Option<T> &optional()
inline Option<T> &describe(std::string description)
inline Option<T> &set_null()
inline const T::ValueType &get_value() const
inline void set_value(const typename T::ValueType &value)
inline void operator=(const typename T::ValueType &value)
inline const T::ValueType &operator()() const