20 #ifndef RIPPLE_JSON_MULTIVARJSON_H_INCLUDED
21 #define RIPPLE_JSON_MULTIVARJSON_H_INCLUDED
23 #include <ripple/json/json_value.h>
33 template <std::
size_t Size>
48 select(
auto&& selector)
const
51 auto const index = selector();
61 for (
auto& a : this->val)
66 enum IsMemberResult :
int { none = 0,
some,
all };
68 [[nodiscard]] IsMemberResult
72 for (
auto& a : this->val)
76 return (count == 0 ? none : (count <
size ?
some :
all));
108 return [apiVersion]() constexpr
127 (maxVer >= minVer) &&
128 (size == maxVer + 1 - minVer) &&
133 fn(json,
static_cast<unsigned int>(1));
136 visit(MultivarJson<size>& json, Fn fn)