JSON Voorhees
Killer JSON for C++
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 123]
 Njsonv
 Ndetail
 Cadapter_builder_dsl
 Cbasic_ownerSomething that owns an object
 Cbasic_owning_viewA form of basic_view that owns the object it is iterating over
 Cbasic_viewA view template used for array and object views of a value
 Cformats_builder_dsl
 Cgeneric_containerA generic container that exposes the traversal and modification operations externally
 Cmember_adapter
 Cmember_adapter_impl
 Cscope_exit_invoker
 Cstring_viewA 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)
 Cvalue_storage
 CadapterAn adapter is both an extractor and a serializer
 Cadapter_builder
 Cadapter_for
 Cbasic_value_binary_predicate
 Ccompare_traitsTraits describing how to perform various aspects of comparison
 Ccontainer_adapterAn adapter for container types
 Ccontainer_adapter< optional< T > >
 Ccontext_baseProvides extra information to routines used for extraction
 Cdiff_resultThe results of the diff operation
 Cduplicate_type_errorException 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
 Cdynamic_merge_rulesAn implementation of merge_rules that allows you to bind whatever functions you want to resolve conflicts
 CencoderAn encoder is responsible for writing values to some form of output
 Cenum_adapterAn adapter for enumeration types
 Cextraction_context
 Cextraction_errorException thrown if there is any problem running extract
 CextractorAn extractor holds the method for converting a value into an arbitrary C++ type
 Cextractor_construction
 Cextractor_for
 CformatsSimply put, this class is a collection of extractor and serializer instances
 Cformats_builder
 Cfunction_adapter
 Cfunction_extractor
 Cfunction_serializer
 Ckind_errorThrown from various value methods when attempting to perform an operation which is not valid for the kind of value
 Cmember_adapter_builder
 Cmerge_rulesThis class is used in merge_explicit for defining what the function should do in the cases of conflicts
 Cno_extractorThrown when formats::extract does not have an extractor for the provided type
 Cno_serializerThrown when formats::to_json does not have a serializer for the provided type
 Cobject_node_handleA node handle used when a value is kind::object to access elements of the object in potentially destructive manner
 Coptional_adapterAn adapter for optional-like types
 Costream_encoderAn encoder that outputs to an std::ostream
 Costream_pretty_encoder
 Cparse_errorAn error encountered when parsing
 CproblemDescription of a single parsing problem
 Cparse_optionsConfiguration for various parsing options
 CpathRepresents an exact path in some JSON structure
 Cpath_element
 Cpolymorphic_adapterAn adapter which can create polymorphic types
 Cpolymorphic_adapter_builder
 Crecursive_merge_rulesThese rules will recursively merge everything they can and coerce all values
 Cserialization_context
 CserializerA serializer holds the method for converting an arbitrary C++ type into a value
 Cserializer_for
 Cthrowing_merge_rulesThese rules throw an exception on all conflicts
 CtokenizerSplits input into tokens, allowing traversal of JSON without verification
 CtokenA representation of what this tokenizer has
 Cvalidation_errorError thrown when an unrepresentable value is encountered in a JSON AST
 CvalueRepresents a single JSON value, which can be any one of a potential kind, each behaving slightly differently
 Cbasic_array_iteratorThe base type for iterating over array values
 Cbasic_object_iteratorThe base iterator type for iterating over object types
 Cobject_insert_return_typeType returned from insert operations when this has kind::object
 Cvalue_compareCompares a value to another using the standard-issue value::compare function
 Cvalue_compare_icaseCompares two values, ignoring the case for any value with kind::string
 CversionRepresents a version used to extract and encode JSON objects from C++ classes
 Cwrapper_adapterAn adapter for "wrapper" types
 NstdSTL namespace
 Chash< jsonv::value >Explicit specialization of std::hash for jsonv::value types so you can store a value in an unordered container