55template <
typename T,
typename Enable =
void>
60 result.setError(
"unsupported type for JSON conversion");
75 result.setError(
"failed to access JSON value");
80 T narrowed =
static_cast<T
>(raw);
81 if (
static_cast<fl::i64
>(narrowed) != raw) {
97 result.setError(
"failed to access JSON value");
115 result.setError(
"failed to access JSON value");
131 result.setError(
"failed to access JSON value");
171 result.setError(
"expected array for span parameter");
176 for (fl::size i = 0; i < j.size(); i++) {
201 result.setError(
"expected array for vector parameter");
206 for (fl::size i = 0; i < j.size(); i++) {
241 result.setError(
"invalid base64 string");
250 for (fl::size i = 0; i < j.size(); i++) {
263 result.setError(
"expected base64 string or integer array for byte vector");
bool hasError() const FL_NO_EXCEPT
const fl::string & errorMessage() const FL_NO_EXCEPT
bool empty() const FL_NO_EXCEPT
bool empty() const FL_NO_EXCEPT
void push_back(const T &value) FL_NO_EXCEPT
FastLED's Elegant JSON Library: fl::json
constexpr remove_reference< T >::type && move(T &&t) FL_NO_EXCEPT
tuple< typename fl::decay< Ts >::type... > make_tuple(Ts &&... args) FL_NO_EXCEPT
FL_NO_INLINE TypeConversionResult json_convert_to_i64_core(const json_value &val, fl::i64 *out_value) FL_NO_EXCEPT
FL_NO_INLINE TypeConversionResult json_convert_to_float_core(const json_value &val, float *out_value) FL_NO_EXCEPT
FL_NO_INLINE TypeConversionResult json_convert_to_bool_core(const json_value &val, bool *out_value) FL_NO_EXCEPT
FL_NO_INLINE TypeConversionResult json_convert_to_string_core(const json_value &val, fl::string *out_value) FL_NO_EXCEPT
u8 u8 fract8 blur_amount FL_NO_EXCEPT
fl::vector< fl::u8 > base64_decode(const fl::string &encoded) FL_NO_EXCEPT
expected< T, E > result
Alias for expected (Rust-style naming)
string to_string(T value) FL_NO_EXCEPT
pair_element< I, T1, T2 >::type & get(pair< T1, T2 > &p) FL_NO_EXCEPT
Base definition for an LED controller.
const char * c_str() const FL_NO_EXCEPT
ConstCharPtrWrapper(fl::string &&s) FL_NO_EXCEPT
ConstCharPtrWrapper() FL_NO_EXCEPT=default
ConstSpanWrapper() FL_NO_EXCEPT=default
ConstSpanWrapper(const fl::vector< T > &v) FL_NO_EXCEPT
fl::span< const T > get() const FL_NO_EXCEPT
static fl::tuple< T, TypeConversionResult > convert(const json &j) FL_NO_EXCEPT
static fl::tuple< T, TypeConversionResult > convert(const json &j) FL_NO_EXCEPT
static fl::tuple< bool, TypeConversionResult > convert(const json &j) FL_NO_EXCEPT
static fl::tuple< fl::ConstCharPtrWrapper, TypeConversionResult > convert(const json &j) FL_NO_EXCEPT
static fl::tuple< fl::ConstSpanWrapper< T >, TypeConversionResult > convert(const json &j) FL_NO_EXCEPT
static fl::tuple< fl::json, TypeConversionResult > convert(const json &j) FL_NO_EXCEPT
static fl::tuple< fl::string, TypeConversionResult > convert(const json &j) FL_NO_EXCEPT
static fl::tuple< fl::vector< T >, TypeConversionResult > convert(const json &j) FL_NO_EXCEPT
static fl::tuple< fl::vector< fl::u8 >, TypeConversionResult > convert(const json &j) FL_NO_EXCEPT
static fl::tuple< T, TypeConversionResult > convert(const json &j) FL_NO_EXCEPT