1 #ifndef JSON_SPIRIT_READER
\r
2 #define JSON_SPIRIT_READER
\r
4 // Copyright John W. Wilkinson 2007 - 2011
\r
5 // Distributed under the MIT License, see accompanying file LICENSE.txt
\r
7 // json spirit version 4.05
\r
9 #if defined(_MSC_VER) && (_MSC_VER >= 1020)
\r
13 #include "json_spirit_value.h"
\r
14 #include "json_spirit_error_position.h"
\r
17 namespace json_spirit
\r
19 // functions to reads a JSON values
\r
21 #ifdef JSON_SPIRIT_VALUE_ENABLED
\r
22 bool read( const std::string& s, Value& value );
\r
23 bool read( std::istream& is, Value& value );
\r
24 bool read( std::string::const_iterator& begin, std::string::const_iterator end, Value& value );
\r
26 void read_or_throw( const std::string& s, Value& value );
\r
27 void read_or_throw( std::istream& is, Value& value );
\r
28 void read_or_throw( std::string::const_iterator& begin, std::string::const_iterator end, Value& value );
\r
31 #if defined( JSON_SPIRIT_WVALUE_ENABLED ) && !defined( BOOST_NO_STD_WSTRING )
\r
32 bool read( const std::wstring& s, wValue& value );
\r
33 bool read( std::wistream& is, wValue& value );
\r
34 bool read( std::wstring::const_iterator& begin, std::wstring::const_iterator end, wValue& value );
\r
36 void read_or_throw( const std::wstring& s, wValue& value );
\r
37 void read_or_throw( std::wistream& is, wValue& value );
\r
38 void read_or_throw( std::wstring::const_iterator& begin, std::wstring::const_iterator end, wValue& value );
\r
41 #ifdef JSON_SPIRIT_MVALUE_ENABLED
\r
42 bool read( const std::string& s, mValue& value );
\r
43 bool read( std::istream& is, mValue& value );
\r
44 bool read( std::string::const_iterator& begin, std::string::const_iterator end, mValue& value );
\r
46 void read_or_throw( const std::string& s, mValue& value );
\r
47 void read_or_throw( std::istream& is, mValue& value );
\r
48 void read_or_throw( std::string::const_iterator& begin, std::string::const_iterator end, mValue& value );
\r
51 #if defined( JSON_SPIRIT_WMVALUE_ENABLED ) && !defined( BOOST_NO_STD_WSTRING )
\r
52 bool read( const std::wstring& s, wmValue& value );
\r
53 bool read( std::wistream& is, wmValue& value );
\r
54 bool read( std::wstring::const_iterator& begin, std::wstring::const_iterator end, wmValue& value );
\r
56 void read_or_throw( const std::wstring& s, wmValue& value );
\r
57 void read_or_throw( std::wistream& is, wmValue& value );
\r
58 void read_or_throw( std::wstring::const_iterator& begin, std::wstring::const_iterator end, wmValue& value );
\r