25 operator const char*()
const {
return value.c_str(); }
55template <
typename T,
typename Enable =
void>
60 result.setError(
"unsupported type for JSON conversion");
73 result.setError(
"failed to access JSON value");
78 val->
data.visit(visitor);
91 result.setError(
"failed to access JSON value");
96 val->
data.visit(visitor);
109 result.setError(
"failed to access JSON value");
114 val->
data.visit(visitor);
127 result.setError(
"failed to access JSON value");
132 val->
data.visit(visitor);
168 result.setError(
"expected array for span parameter");
173 for (fl::size i = 0; i < j.
size(); i++) {
198 result.setError(
"expected array for vector parameter");
203 for (fl::size i = 0; i < j.
size(); i++) {
238 result.setError(
"invalid base64 string");
247 for (fl::size i = 0; i < j.
size(); i++) {
260 result.setError(
"expected base64 string or integer array for byte vector");
const fl::string & errorMessage() const
bool empty() const FL_NOEXCEPT
const json_value * internal_value() const FL_NOEXCEPT
bool is_array() const FL_NOEXCEPT
size_t size() const FL_NOEXCEPT
bool is_string() const FL_NOEXCEPT
bool empty() const FL_NOEXCEPT
void push_back(const T &value) FL_NOEXCEPT
FastLED's Elegant JSON Library: fl::json
constexpr remove_reference< T >::type && move(T &&t) FL_NOEXCEPT
string to_string(T value) FL_NOEXCEPT
constexpr remove_reference< T >::type && move(T &&t) FL_NOEXCEPT
fl::vector< fl::u8 > base64_decode(const fl::string &encoded)
tuple< typename fl::decay< Ts >::type... > make_tuple(Ts &&... args) FL_NOEXCEPT
expected< T, E > result
Alias for expected (Rust-style naming)
pair_element< I, T1, T2 >::type & get(pair< T1, T2 > &p) FL_NOEXCEPT
Base definition for an LED controller.
ConstCharPtrWrapper() FL_NOEXCEPT=default
ConstCharPtrWrapper(fl::string &&s)
const char * c_str() const
ConstSpanWrapper() FL_NOEXCEPT=default
ConstSpanWrapper(const fl::vector< T > &v)
fl::span< const T > get() const
TypeConversionResult mResult
TypeConversionResult mResult
TypeConversionResult mResult
TypeConversionResult mResult
static fl::tuple< T, TypeConversionResult > convert(const json &j)
static fl::tuple< T, TypeConversionResult > convert(const json &j)
static fl::tuple< bool, TypeConversionResult > convert(const json &j)
static fl::tuple< fl::ConstCharPtrWrapper, TypeConversionResult > convert(const json &j)
static fl::tuple< fl::ConstSpanWrapper< T >, TypeConversionResult > convert(const json &j)
static fl::tuple< fl::json, TypeConversionResult > convert(const json &j)
static fl::tuple< fl::string, TypeConversionResult > convert(const json &j)
static fl::tuple< fl::vector< T >, TypeConversionResult > convert(const json &j)
static fl::tuple< fl::vector< fl::u8 >, TypeConversionResult > convert(const json &j)
static fl::tuple< T, TypeConversionResult > convert(const json &j)