OpenNN
Open-source neural networks library
Loading...
Searching...
No Matches
opennn::Json Class Reference

#include <json.h>

Public Types

enum class  Kind {
  Null , Bool , Number , String ,
  Array , Object
}
 

Public Member Functions

 Json ()=default
 
 Json (bool b)
 
 Json (int i)
 
 Json (long i)
 
 Json (long long i)
 
 Json (unsigned int i)
 
 Json (unsigned long i)
 
 Json (unsigned long long i)
 
 Json (double d)
 
 Json (float d)
 
 Json (const char *s)
 
 Json (const string &s)
 
bool is_null () const
 
bool is_bool () const
 
bool is_number () const
 
bool is_string () const
 
bool is_array () const
 
bool is_object () const
 
bool has (const string &key) const
 
const Jsonfind (const string &key) const
 
const Jsonfirst_child (const string &key) const
 
const Jsonat (const string &key) const
 
Jsonoperator[] (const string &key)
 
Jsonset (const string &key, Json value)
 
void push_back (Json value)
 
string as_string () const
 
long as_long () const
 
double as_double () const
 
bool as_bool () const
 
string dump (int indent=2) const
 

Static Public Member Functions

static Json make_object ()
 
static Json make_array ()
 
static Json parse (const string &text)
 

Public Attributes

Kind kind = Kind::Null
 
bool bool_value = false
 
double number_value = 0.0
 
string string_value
 
vector< Jsonarray_value
 
vector< pair< string, Json > > object_value
 

Member Enumeration Documentation

◆ Kind

enum class opennn::Json::Kind
strong
Enumerator
Null 
Bool 
Number 
String 
Array 
Object 

Constructor & Destructor Documentation

◆ Json() [1/12]

opennn::Json::Json ( )
default

◆ Json() [2/12]

opennn::Json::Json ( bool b)
inline

◆ Json() [3/12]

opennn::Json::Json ( int i)
inline

◆ Json() [4/12]

opennn::Json::Json ( long i)
inline

◆ Json() [5/12]

opennn::Json::Json ( long long i)
inline

◆ Json() [6/12]

opennn::Json::Json ( unsigned int i)
inline

◆ Json() [7/12]

opennn::Json::Json ( unsigned long i)
inline

◆ Json() [8/12]

opennn::Json::Json ( unsigned long long i)
inline

◆ Json() [9/12]

opennn::Json::Json ( double d)
inline

◆ Json() [10/12]

opennn::Json::Json ( float d)
inline

◆ Json() [11/12]

opennn::Json::Json ( const char * s)
inline

◆ Json() [12/12]

opennn::Json::Json ( const string & s)
inline

Member Function Documentation

◆ as_bool()

bool opennn::Json::as_bool ( ) const
nodiscard

◆ as_double()

double opennn::Json::as_double ( ) const
nodiscard

◆ as_long()

long opennn::Json::as_long ( ) const
nodiscard

◆ as_string()

string opennn::Json::as_string ( ) const
nodiscard

◆ at()

const Json & opennn::Json::at ( const string & key) const
nodiscard

◆ dump()

string opennn::Json::dump ( int indent = 2) const
nodiscard

◆ find()

const Json * opennn::Json::find ( const string & key) const
nodiscard

◆ first_child()

const Json * opennn::Json::first_child ( const string & key) const
inlinenodiscard

◆ has()

bool opennn::Json::has ( const string & key) const
nodiscard

◆ is_array()

bool opennn::Json::is_array ( ) const
inlinenodiscard

◆ is_bool()

bool opennn::Json::is_bool ( ) const
inlinenodiscard

◆ is_null()

bool opennn::Json::is_null ( ) const
inlinenodiscard

◆ is_number()

bool opennn::Json::is_number ( ) const
inlinenodiscard

◆ is_object()

bool opennn::Json::is_object ( ) const
inlinenodiscard

◆ is_string()

bool opennn::Json::is_string ( ) const
inlinenodiscard

◆ make_array()

static Json opennn::Json::make_array ( )
staticnodiscard

◆ make_object()

static Json opennn::Json::make_object ( )
staticnodiscard

◆ operator[]()

Json & opennn::Json::operator[] ( const string & key)

◆ parse()

static Json opennn::Json::parse ( const string & text)
staticnodiscard

◆ push_back()

void opennn::Json::push_back ( Json value)

◆ set()

Json & opennn::Json::set ( const string & key,
Json value )

Member Data Documentation

◆ array_value

vector<Json> opennn::Json::array_value

◆ bool_value

bool opennn::Json::bool_value = false

◆ kind

Kind opennn::Json::kind = Kind::Null

◆ number_value

double opennn::Json::number_value = 0.0

◆ object_value

vector<pair<string, Json> > opennn::Json::object_value

◆ string_value

string opennn::Json::string_value