15 namespace conversion {
33 struct Converter<T, typename
std::enable_if_t<std::is_enum_v<T>>> {
34 std::optional<T> operator()(
const Convertible& value, Error&
error)
const;
38 struct Converter<
std::vector<T>, typename std::enable_if_t<std::is_enum_v<T>>> {
39 std::optional<std::vector<T>> operator()(
const Convertible& value, Error&
error)
const;
53 struct Converter<
std::vector<float>> {
54 std::optional<std::vector<float>> operator()(
const Convertible& value, Error&
error)
const;
58 struct Converter<
std::array<double, N>> {
59 std::optional<std::array<double, N>> operator()(
const Convertible& value, Error&
error)
const;
63 struct Converter<
std::vector<std::string>> {
64 std::optional<std::vector<std::string>> operator()(
const Convertible& value, Error&
error)
const;
std::unique_ptr< Expression > error(std::string)
std::unique_ptr< Expression > string(std::unique_ptr< Expression >, std::unique_ptr< Expression > def=nullptr)
std::optional< Color > operator()(const Convertible &value, Error &error) const
std::optional< bool > operator()(const Convertible &value, Error &error) const
std::optional< float > operator()(const Convertible &value, Error &error) const