millijson
Lightweight JSON parser for C++
Loading...
Searching...
No Matches
millijson.hpp File Reference

Header-only library for JSON parsing. More...

#include <memory>
#include <vector>
#include <cstddef>
#include <cstdlib>
#include <string>
#include <stdexcept>
#include <cmath>
#include <unordered_map>
#include <unordered_set>
#include <cstdio>
Include dependency graph for millijson.hpp:

Go to the source code of this file.

Classes

class  millijson::Base
 Virtual base class for all JSON types. More...
 
class  millijson::Number
 JSON number. More...
 
class  millijson::NumberAsString
 JSON number as a string. More...
 
class  millijson::String
 JSON string. More...
 
class  millijson::Boolean
 JSON boolean. More...
 
class  millijson::Nothing
 JSON null. More...
 
class  millijson::Array
 JSON array. More...
 
class  millijson::Object
 JSON object. More...
 
struct  millijson::ParseOptions
 Options for parse(). More...
 
struct  millijson::DefaultProvisioner
 Default methods to provision representations of JSON types. More...
 
struct  millijson::FileReadOptions
 Options for parse_file() and validate_file(). More...
 

Namespaces

namespace  millijson
 A lightweight header-only JSON parser.
 

Enumerations

enum  millijson::Type {
  NUMBER , NUMBER_AS_STRING , STRING , BOOLEAN ,
  NOTHING , ARRAY , OBJECT
}
 

Functions

template<class Provisioner_ = DefaultProvisioner, class Input_ >
std::shared_ptr< typename DefaultProvisioner::Basemillijson::parse (Input_ &input, const ParseOptions &options)
 
template<class Input_ >
Type millijson::validate (Input_ &input, const ParseOptions &options)
 
template<class Provisioner_ = DefaultProvisioner>
std::shared_ptr< typename Provisioner_::Base > millijson::parse_string (const char *ptr, std::size_t len, const ParseOptions &options)
 
Type millijson::validate_string (const char *ptr, std::size_t len, const ParseOptions &options)
 
template<class Provisioner_ = DefaultProvisioner>
std::shared_ptr< Basemillijson::parse_file (const char *path, const FileReadOptions &options)
 
Type millijson::validate_file (const char *path, const FileReadOptions &options)
 

Detailed Description

Header-only library for JSON parsing.