Welcome to json_bacbone’s documentation!¶
This is a default documentation for read the docs.
-
namespace
json_backbone
¶ Typedefs
-
typedef
using json_backbone::identity_t = typedef T
-
typedef
using json_backbone::bounded_identity_t = typedef typename bounded_identity<T>::type
Functions
- template <class T, class... Value>
-
bool
is
(variant<Value...> const &value)¶
- template <class T, class... Value>
-
T
get
(variant<Value...> &value)¶
- template <class T, class... Value>
-
T const &
get
(variant<Value...> const &value)¶
- template <class T, class... Value>
-
T
get
(variant<Value...> &&value)¶
- template <class T, class... Value>
-
decltype(auto) json_backbone::raw(variant < Value...> & value)
- template <class T, class... Value>
-
decltype(auto) json_backbone::raw(variant < Value...> const & value)
- template <class T, class... Value>
-
decltype(auto) json_backbone::raw(variant < Value...> && value)
- template <class... Value>
-
bool
operator==
(variant<Value...> const &lhs, variant<Value...> const &rhs)¶
- template <class T, class... Value>
-
std::enable_if_t<!std::is_base_of<variant<Value...>, T>::value, bool> json_backbone::operator==(variant < Value...> const & lhs, T const & rhs)
- template <class T, class... Value>
-
std::enable_if_t<!std::is_base_of<variant<Value...>, T>::value, bool> json_backbone::operator==(T const & lhs, variant < Value...> const & rhs)
- template <class... Value>
-
bool
operator!=
(variant<Value...> const &lhs, variant<Value...> const &rhs)¶
- template <class T, class... Value>
-
std::enable_if_t<!std::is_base_of<variant<Value...>, T>::value, bool> json_backbone::operator!=(variant < Value...> const & lhs, T const & rhs)
- template <class T, class... Value>
-
std::enable_if_t<!std::is_base_of<variant<Value...>, T>::value, bool> json_backbone::operator!=(T const & lhs, variant < Value...> const & rhs)
- template <class... Value>
-
bool
operator<
(variant<Value...> const &lhs, variant<Value...> const &rhs)¶
- template <class Container, class Key = typename Container::key_type>
-
Container
make_object
(std::initializer_list<std::pair<Key const, Container>> elements)¶
- template <class Container>
-
Container
make_array
(std::initializer_list<Container> elements)¶
- template <class Return, class Visitor, class... Value, class... ExtraArguments>
-
Return
apply_visitor
(variant<Value...> &values, Visitor &&visitor, ExtraArguments&&... extras)¶
- template <class Return, class Visitor, class... Value, class... ExtraArguments>
-
Return
apply_visitor
(variant<Value...> const &values, Visitor &&visitor, ExtraArguments&&... extras)¶
- template <class Container, class Converter = base_converter>
-
view<Container, Converter>
make_view
(Container const &container)¶
- template <class T>
-
struct
is_recursive
¶ Inherits from std::integral_constant< bool,!is_complete< T >::value >
- template <class T>
-
struct
is_recursive
<recursive_wrapper<T>>¶ Inherits from true_type
- template <class T>
-
struct
is_small_type
¶ Inherits from std::integral_constant< bool,(sizeof(T)<=sizeof(T *))>
- template <class T>
-
struct
is_small_type_impl
<T, false>¶ Inherits from std::integral_constant< bool, is_small_type< T >::value >
- template <class T>
-
struct
is_small_type_impl
<T, true>¶ Inherits from false_type
- template <class T>
-
struct
memory_footprint
<T, false>¶ Inherits from std::integral_constant< std::size_t,(is_small_type_impl< T >::value?sizeof(T):sizeof(void *))>
- template <class T>
-
struct
memory_footprint
<T, true>¶ Inherits from std::integral_constant< std::size_t, sizeof(void *)>
- template <class T, std::size_t MemSize>
-
struct
store_on_stack
¶ Inherits from std::integral_constant< bool,(is_small_type_impl< T >::value &&memory_footprint< T >::value<=MemSize)>
-
struct
bad_variant_access
¶ Inherits from logic_error
-
struct
bad_container_object_access
¶ Inherits from logic_error
-
struct
bad_container_array_access
¶ Inherits from logic_error
- template <template< class...> class ObjectBase, template< class...> class ArrayBase, class Key, class... Value>
-
class
container
¶ Inherits from json_backbone::variant< Value..., ArrayBase< container< ObjectBase, ArrayBase, Key, Value...> >, ObjectBase< Key, container< ObjectBase, ArrayBase, Key, Value...> > >
- template <class Return, class... Value, class... ExtraArguments>
-
struct
func_aggregate_visitor
<Return, variant<Value...>, ExtraArguments...>¶ Inherits from json_backbone::func_aggregate_visitor_impl< Return, variant< Value...>, std::tuple< std::function< Return(Value &, ExtraArguments...)>...>, ExtraArguments...>
- template <class Return, template< class...> class Object, template< class...> class Array, class Key, class... Value, class... ExtraArguments>
-
struct
func_aggregate_visitor
<Return, container<Object, Array, Key, Value...>, ExtraArguments...>¶ Inherits from json_backbone::func_aggregate_visitor< Return, container< Object, Array, Key, Value...>::variant_type, ExtraArguments...>
- template <class Return, class... Value, class... ExtraArguments>
-
struct
const_func_aggregate_visitor
<Return, variant<Value...>, ExtraArguments...>¶ Inherits from json_backbone::func_aggregate_visitor_impl< Return, variant< Value...>, std::tuple< std::function< Return(Value const &, ExtraArguments...)>...>, ExtraArguments...>
- template <class Return, template< class...> class Object, template< class...> class Array, class Key, class... Value, class... ExtraArguments>
-
struct
const_func_aggregate_visitor
<Return, container<Object, Array, Key, Value...>, ExtraArguments...>¶ Inherits from json_backbone::const_func_aggregate_visitor< Return, container< Object, Array, Key, Value...>::variant_type, ExtraArguments...>
- template <class Return, class... Value, class... ExtraArguments>
-
struct
funcptr_aggregate_visitor
<Return, variant<Value...>, ExtraArguments...>¶ Inherits from json_backbone::func_aggregate_visitor_impl< Return, variant< Value...>, std::tuple< identity_t< Return(*)(Value &, ExtraArguments...)>...>, ExtraArguments...>
- template <class Return, template< class...> class Object, template< class...> class Array, class Key, class... Value, class... ExtraArguments>
-
struct
funcptr_aggregate_visitor
<Return, container<Object, Array, Key, Value...>, ExtraArguments...>¶ Inherits from json_backbone::funcptr_aggregate_visitor< Return, container< Object, Array, Key, Value...>::variant_type, ExtraArguments...>
- template <class Return, class... Value, class... ExtraArguments>
-
struct
const_funcptr_aggregate_visitor
<Return, variant<Value...>, ExtraArguments...>¶ Inherits from json_backbone::func_aggregate_visitor_impl< Return, variant< Value...>, std::tuple< identity_t< Return(*)(Value const &, ExtraArguments...)>...>, ExtraArguments...>
- template <class Return, template< class...> class Object, template< class...> class Array, class Key, class... Value, class... ExtraArguments>
-
struct
const_funcptr_aggregate_visitor
<Return, container<Object, Array, Key, Value...>, ExtraArguments...>¶ Inherits from json_backbone::const_funcptr_aggregate_visitor< Return, container< Object, Array, Key, Value...>::variant_type, ExtraArguments...>
-
struct
bad_view_access
¶ Inherits from logic_error
-
namespace
arithmetics
¶ Functions
- template <class I, std::size_t N>
-
I constexpr
max_value
(std::array<I, N> const &values, I current_value = std::numeric_limits< I >::lowest(), std::size_t current_index = 0)¶
- template <class I, std::size_t N>
-
std::size_t constexpr
find_first
(std::array<I, N> const &values, I value, std::size_t current_index = 0)¶
- template <class I, std::size_t N>
-
std::size_t constexpr
find_last
(std::array<I, N> const &values, I value, std::size_t current_index = 0)¶
- template <class I, std::size_t N>
-
bool constexpr
all_equals
(std::array<I, N> const &values, I current_value, std::size_t current_index = 0)¶
-
namespace
helpers
¶ Functions
- template <class T, class Impl, std::size_t MemSize>
-
std::enable_if_t<store_on_stack<T, MemSize>::value, void>
deleter_fp
(void **data)¶
- template <class T, class Impl, std::size_t MemSize>
-
std::enable_if_t<!store_on_stack<T, MemSize>::value, void> json_backbone::helpers::deleter_fp(void ** data)
- template <class Variant, class T>
-
bool
equals
(Variant const &lhs, Variant const &rhs)¶
- template <class Variant, class T>
-
bool
less
(Variant const &lhs, Variant const &rhs)¶
-
namespace
type_list_traits
¶ - template <std::size_t... Is, class... Types>
-
struct
type_list
<std::index_sequence<Is...>, Types...>¶ Inherits from json_backbone::type_list_traits::type_info< Types, Is >
-
namespace
visiting_helpers
¶ - template <class Return, template< class...> class Object, template< class...> class Array, class Key, class... Value>
-
struct
applier_maker
<Return, container<Object, Array, Key, Value...>>¶ Inherits from json_backbone::visiting_helpers::applier_maker< Return, container< Object, Array, Key, Value...>::variant_type >
-
typedef