Pyrogenesis  trunk
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
json_spirit Namespace Reference

Namespaces

 internal_
 

Classes

struct  Config_vector
 
struct  Error_position
 
class  Generator
 
class  Json_grammer
 
struct  Multi_pass_iters
 
struct  Null
 
struct  Pair_impl
 
class  Semantic_actions
 
class  Value_impl
 

Typedefs

typedef Config_vector
< std::string > 
Config
 
typedef Config::Value_type Value
 
typedef Config::Pair_type Pair
 
typedef Config::Object_type Object
 
typedef Config::Array_type Array
 

Enumerations

enum  Value_type {
  obj_type, array_type, str_type, bool_type,
  int_type, real_type, null_type
}
 
enum  Output_options {
  pretty_print = 0x01, raw_utf8 = 0x02, remove_trailing_zeros = 0x04, single_line_arrays = 0x08,
  always_escape_nonascii = 0x10
}
 

Functions

template<class Iter_type >
bool is_eq (Iter_type first, Iter_type last, const char *c_str)
 
template<class Char_type >
Char_type hex_to_num (const Char_type c)
 
template<class Char_type , class Iter_type >
Char_type hex_str_to_char (Iter_type &begin)
 
template<class Char_type , class Iter_type >
Char_type unicode_str_to_char (Iter_type &begin)
 
template<class String_type >
void append_esc_char_and_incr_iter (String_type &s, typename String_type::const_iterator &begin, typename String_type::const_iterator end)
 
template<class String_type >
String_type substitute_esc_chars (typename String_type::const_iterator begin, typename String_type::const_iterator end)
 
template<class String_type >
String_type get_str_ (typename String_type::const_iterator begin, typename String_type::const_iterator end)
 
std::string get_str (std::string::const_iterator begin, std::string::const_iterator end)
 
std::wstring get_str (std::wstring::const_iterator begin, std::wstring::const_iterator end)
 
template<class String_type , class Iter_type >
String_type get_str (Iter_type begin, Iter_type end)
 
template<typename Iter_type >
void throw_error (spirit_namespace::position_iterator< Iter_type > i, const std::string &reason)
 
template<typename Iter_type >
void throw_error (Iter_type i, const std::string &reason)
 
template<class Iter_type , class Value_type >
void add_posn_iter_and_read_range_or_throw (Iter_type begin, Iter_type end, Value_type &value)
 
template<class Iter_type , class Value_type >
Iter_type read_range_or_throw (Iter_type begin, Iter_type end, Value_type &value)
 
template<class Iter_type , class Value_type >
bool read_range (Iter_type &begin, Iter_type end, Value_type &value)
 
template<class String_type , class Value_type >
bool read_string (const String_type &s, Value_type &value)
 
template<class String_type , class Value_type >
void read_string_or_throw (const String_type &s, Value_type &value)
 
template<class Istream_type , class Value_type >
bool read_stream (Istream_type &is, Value_type &value)
 
template<class Istream_type , class Value_type >
void read_stream_or_throw (Istream_type &is, Value_type &value)
 
static std::string value_type_to_string (Value_type vtype)
 
bool operator== (const Null &, const Null &)
 
template<class String_type >
String_type to_str (const char *c_str)
 
char to_hex_char (unsigned int c)
 
template<class String_type >
String_type non_printable_to_string (unsigned int c)
 
template<typename Char_type , class String_type >
bool add_esc_char (Char_type c, String_type &s)
 
template<class String_type >
String_type add_esc_chars (const String_type &s, bool raw_utf8, bool esc_nonascii)
 
template<class Ostream >
void append_double (Ostream &os, const double d, const int precision)
 
template<class String_type >
void erase_and_extract_exponent (String_type &str, String_type &exp)
 
template<class String_type >
String_type::size_type find_first_non_zero (const String_type &str)
 
template<class String_type >
void remove_trailing (String_type &str)
 
template<class Value_type , class Ostream_type >
void write_stream (const Value_type &value, Ostream_type &os, unsigned int options=0)
 
template<class Value_type >
Value_type::String_type write_string (const Value_type &value, unsigned int options=0)
 

Variables

const
spirit_namespace::int_parser
< boost::int64_t
int64_p = spirit_namespace::int_parser < boost::int64_t >()
 
const
spirit_namespace::uint_parser
< boost::uint64_t
uint64_p = spirit_namespace::uint_parser< boost::uint64_t >()
 

Typedef Documentation

typedef Config_vector< std::string > json_spirit::Config

Enumeration Type Documentation

Enumerator
pretty_print 
raw_utf8 
remove_trailing_zeros 
single_line_arrays 
always_escape_nonascii 
Enumerator
obj_type 
array_type 
str_type 
bool_type 
int_type 
real_type 
null_type 

Function Documentation

template<typename Char_type , class String_type >
bool json_spirit::add_esc_char ( Char_type  c,
String_type &  s 
)
template<class String_type >
String_type json_spirit::add_esc_chars ( const String_type &  s,
bool  raw_utf8,
bool  esc_nonascii 
)
template<class Iter_type , class Value_type >
void json_spirit::add_posn_iter_and_read_range_or_throw ( Iter_type  begin,
Iter_type  end,
Value_type &  value 
)
template<class Ostream >
void json_spirit::append_double ( Ostream &  os,
const double  d,
const int  precision 
)
template<class String_type >
void json_spirit::append_esc_char_and_incr_iter ( String_type &  s,
typename String_type::const_iterator &  begin,
typename String_type::const_iterator  end 
)
template<class String_type >
void json_spirit::erase_and_extract_exponent ( String_type &  str,
String_type &  exp 
)
template<class String_type >
String_type::size_type json_spirit::find_first_non_zero ( const String_type &  str)
std::string json_spirit::get_str ( std::string::const_iterator  begin,
std::string::const_iterator  end 
)
inline
std::wstring json_spirit::get_str ( std::wstring::const_iterator  begin,
std::wstring::const_iterator  end 
)
inline
template<class String_type , class Iter_type >
String_type json_spirit::get_str ( Iter_type  begin,
Iter_type  end 
)
template<class String_type >
String_type json_spirit::get_str_ ( typename String_type::const_iterator  begin,
typename String_type::const_iterator  end 
)
template<class Char_type , class Iter_type >
Char_type json_spirit::hex_str_to_char ( Iter_type &  begin)
template<class Char_type >
Char_type json_spirit::hex_to_num ( const Char_type  c)
template<class Iter_type >
bool json_spirit::is_eq ( Iter_type  first,
Iter_type  last,
const char *  c_str 
)
template<class String_type >
String_type json_spirit::non_printable_to_string ( unsigned int  c)
bool json_spirit::operator== ( const Null &  ,
const Null &   
)
inline
template<class Iter_type , class Value_type >
bool json_spirit::read_range ( Iter_type &  begin,
Iter_type  end,
Value_type &  value 
)
template<class Iter_type , class Value_type >
Iter_type json_spirit::read_range_or_throw ( Iter_type  begin,
Iter_type  end,
Value_type &  value 
)
template<class Istream_type , class Value_type >
bool json_spirit::read_stream ( Istream_type &  is,
Value_type &  value 
)
template<class Istream_type , class Value_type >
void json_spirit::read_stream_or_throw ( Istream_type &  is,
Value_type &  value 
)
template<class String_type , class Value_type >
bool json_spirit::read_string ( const String_type &  s,
Value_type &  value 
)
template<class String_type , class Value_type >
void json_spirit::read_string_or_throw ( const String_type &  s,
Value_type &  value 
)
template<class String_type >
void json_spirit::remove_trailing ( String_type &  str)
template<class String_type >
String_type json_spirit::substitute_esc_chars ( typename String_type::const_iterator  begin,
typename String_type::const_iterator  end 
)
template<typename Iter_type >
void json_spirit::throw_error ( spirit_namespace::position_iterator< Iter_type >  i,
const std::string &  reason 
)
template<typename Iter_type >
void json_spirit::throw_error ( Iter_type  i,
const std::string &  reason 
)
char json_spirit::to_hex_char ( unsigned int  c)
inline
template<class String_type >
String_type json_spirit::to_str ( const char *  c_str)
template<class Char_type , class Iter_type >
Char_type json_spirit::unicode_str_to_char ( Iter_type &  begin)
static std::string json_spirit::value_type_to_string ( Value_type  vtype)
static
template<class Value_type , class Ostream_type >
void json_spirit::write_stream ( const Value_type &  value,
Ostream_type &  os,
unsigned int  options = 0 
)
template<class Value_type >
Value_type::String_type json_spirit::write_string ( const Value_type &  value,
unsigned int  options = 0 
)

Variable Documentation

const spirit_namespace::int_parser< boost::int64_t > json_spirit::int64_p = spirit_namespace::int_parser < boost::int64_t >()
const spirit_namespace::uint_parser< boost::uint64_t > json_spirit::uint64_p = spirit_namespace::uint_parser< boost::uint64_t >()