|
JSON Voorhees
Killer JSON for C++
|
| ▼Cjsonv::detail::adapter_builder_dsl< T > | |
| Cjsonv::member_adapter_builder< T, TMember > | |
| Cjsonv::detail::basic_owner< T > | Something that owns an object |
| ▼Cjsonv::detail::basic_owner< TContainer > | |
| Cjsonv::detail::basic_owning_view< TContainer, TIterator, TConstIterator > | A form of basic_view that owns the object it is iterating over |
| ▼Cjsonv::detail::basic_view< TIterator, TConstIterator > | A view template used for array and object views of a value |
| Cjsonv::detail::basic_owning_view< TContainer, TIterator, TConstIterator > | A form of basic_view that owns the object it is iterating over |
| Cjsonv::compare_traits | Traits describing how to perform various aspects of comparison |
| ▼Cjsonv::context_base | Provides extra information to routines used for extraction |
| Cjsonv::extraction_context | |
| Cjsonv::serialization_context | |
| Cjsonv::diff_result | The results of the diff operation |
| ▼Cjsonv::encoder | An encoder is responsible for writing values to some form of output |
| ▼Cjsonv::ostream_encoder | An encoder that outputs to an std::ostream |
| Cjsonv::ostream_pretty_encoder | |
| ▼Cstd::exception | STL class |
| ▼Cstd::logic_error | STL class |
| Cjsonv::kind_error | Thrown from various value methods when attempting to perform an operation which is not valid for the kind of value |
| ▼Cstd::invalid_argument | STL class |
| Cjsonv::duplicate_type_error | Exception thrown if an insertion of an extractor or serializer into a formats is attempted, but there is already an extractor or serializer for that type |
| ▼Cstd::runtime_error | STL class |
| Cjsonv::extraction_error | Exception thrown if there is any problem running extract |
| Cjsonv::no_extractor | Thrown when formats::extract does not have an extractor for the provided type |
| Cjsonv::no_serializer | Thrown when formats::to_json does not have a serializer for the provided type |
| Cjsonv::parse_error | An error encountered when parsing |
| Cjsonv::validation_error | Error thrown when an unrepresentable value is encountered in a JSON AST |
| ▼Cjsonv::extractor | An extractor holds the method for converting a value into an arbitrary C++ type |
| ▼Cjsonv::adapter | An adapter is both an extractor and a serializer |
| ▼Cjsonv::adapter_for< optional< T > > | |
| Cjsonv::container_adapter< optional< T > > | |
| ▼Cjsonv::adapter_for< TContainer > | |
| Cjsonv::container_adapter< TContainer > | An adapter for container types |
| ▼Cjsonv::adapter_for< TEnum > | |
| Cjsonv::enum_adapter< TEnum, FEnumComp, FValueComp > | An adapter for enumeration types |
| ▼Cjsonv::adapter_for< TOptional > | |
| Cjsonv::optional_adapter< TOptional > | An adapter for optional-like types |
| ▼Cjsonv::adapter_for< TPointer > | |
| Cjsonv::polymorphic_adapter< TPointer > | An adapter which can create polymorphic types |
| ▼Cjsonv::adapter_for< TWrapper > | |
| Cjsonv::wrapper_adapter< TWrapper > | An adapter for "wrapper" types |
| ▼Cjsonv::adapter_for< T > | |
| Cjsonv::function_adapter< T, FExtract, FToJson > | |
| Cjsonv::extractor_construction< T > | |
| ▼Cjsonv::extractor_for< T > | |
| Cjsonv::function_extractor< T, FExtract > | |
| ▼CFCompare | |
| Cjsonv::basic_value_binary_predicate< FCompare, FResult > | |
| Cjsonv::formats | Simply put, this class is a collection of extractor and serializer instances |
| Cjsonv::formats_builder | |
| ▼Cjsonv::detail::formats_builder_dsl | |
| Cjsonv::adapter_builder< T > | |
| Cjsonv::member_adapter_builder< T, TMember > | |
| Cjsonv::polymorphic_adapter_builder< TPointer > | |
| ▼CFResult | |
| Cjsonv::basic_value_binary_predicate< FCompare, FResult > | |
| Cjsonv::detail::generic_container< TStorage > | A generic container that exposes the traversal and modification operations externally |
| ▼Cjsonv::detail::generic_container< std::vector< path_element > > | |
| Cjsonv::path | Represents an exact path in some JSON structure |
| Cstd::hash< jsonv::value > | Explicit specialization of std::hash for jsonv::value types so you can store a value in an unordered container |
| ▼Citerator | |
| Cjsonv::value::basic_object_iterator< const object_value_type, std::map< std::string, value >::const_iterator > | |
| Cjsonv::value::basic_array_iterator< T, TArrayView > | The base type for iterating over array values |
| Cjsonv::value::basic_object_iterator< T, TIterator > | The base iterator type for iterating over object types |
| ▼Cjsonv::detail::member_adapter< T > | |
| Cjsonv::detail::member_adapter_impl< T, TMember > | |
| ▼Cjsonv::merge_rules | This class is used in merge_explicit for defining what the function should do in the cases of conflicts |
| Cjsonv::dynamic_merge_rules | An implementation of merge_rules that allows you to bind whatever functions you want to resolve conflicts |
| Cjsonv::recursive_merge_rules | These rules will recursively merge everything they can and coerce all values |
| Cjsonv::throwing_merge_rules | These rules throw an exception on all conflicts |
| ▼Cnested_exception | |
| Cjsonv::extraction_error | Exception thrown if there is any problem running extract |
| Cjsonv::value::object_insert_return_type | Type returned from insert operations when this has kind::object |
| Cjsonv::object_node_handle | A node handle used when a value is kind::object to access elements of the object in potentially destructive manner |
| Cjsonv::parse_options | Configuration for various parsing options |
| Cjsonv::path_element | |
| Cjsonv::parse_error::problem | Description of a single parsing problem |
| Cjsonv::detail::scope_exit_invoker< Function > | |
| ▼Cjsonv::serializer | A serializer holds the method for converting an arbitrary C++ type into a value |
| Cjsonv::adapter | An adapter is both an extractor and a serializer |
| ▼Cjsonv::serializer_for< T > | |
| Cjsonv::function_serializer< T, FToJson > | |
| Cjsonv::detail::string_view | A non-owning reference to an std::string, as proposed to the C++ Standard Committee by Jeffrey Yasskin in N3921 (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3921.html) |
| Cjsonv::tokenizer::token | A representation of what this tokenizer has |
| Cjsonv::tokenizer | Splits input into tokens, allowing traversal of JSON without verification |
| Cjsonv::value | Represents a single JSON value, which can be any one of a potential kind, each behaving slightly differently |
| Cjsonv::value_compare | Compares a value to another using the standard-issue value::compare function |
| Cjsonv::value_compare_icase | Compares two values, ignoring the case for any value with kind::string |
| Cjsonv::detail::value_storage | |
| Cjsonv::version | Represents a version used to extract and encode JSON objects from C++ classes |