|
spirit2json
A JSON parser/generator written with boost spirit
|
#include <string>#include <stdexcept>#include <ostream>#include <vector>#include <map>#include <cstddef>#include <boost/version.hpp>#include <boost/variant.hpp>#include <boost/config.hpp>Go to the source code of this file.
Classes | |
| struct | boost::recursive_variant_ |
| class | spirit2json::Exception |
| Baseclass for all exceptions in simple2json. More... | |
| class | spirit2json::ParsingFailed |
| Thrown on parser failure. More... | |
Namespaces | |
| namespace | spirit2json |
Contains everything related spirit2json JSON parser/generator. | |
Typedefs | |
| typedef std::nullptr_t | spirit2json::JSONNull |
| Typedef to std::nullptr_t for compilers that support it. Emulate otherwise. | |
| typedef std::wstring | spirit2json::JSONString |
| Typedef to std::wstring. | |
| typedef double | spirit2json::JSONNumber |
| Typedef to double. | |
| typedef bool | spirit2json::JSONBool |
| Typedef to bool. | |
| typedef boost::make_recursive_variant < JSONString, JSONNumber, JSONBool, JSONNull, std::vector < boost::recursive_variant_ > , std::map< JSONString, boost::recursive_variant_ > >::type | spirit2json::JSONValue |
| JSON-AST value type. Used to store the abstract JSON representation generated by the parse function and as the input to the generate and stream generation functionality. | |
| typedef std::vector< JSONValue > | spirit2json::JSONArray |
| JSON-AST array type. A vector storing JSONValue objects. | |
| typedef std::map< JSONString, JSONValue > | spirit2json::JSONObject |
| JSON-AST object type. A map storing string, JSONValue pairs. | |
| typedef JSONObject::value_type | spirit2json::JSONObjectPair |
| Value type for JSONObject. | |
Enumerations | |
| enum | spirit2json::JSONValueTypes { spirit2json::JSON_STRING, spirit2json::JSON_NUMBER, spirit2json::JSON_BOOL, spirit2json::JSON_NULL, spirit2json::JSON_ARRAY, spirit2json::JSON_OBJECT } |
| which() value enumeration enum for all types that can be contained in a JSONValue. More... | |
Functions | |
| JSONValue | spirit2json::parse (JSONString str) |
| Parse a given JSON string and return its JSONValue representation. | |
| JSONString | spirit2json::generate (JSONValue &val) |
| Generate a JSON string representation from a given JSONValue. | |
| std::wostream & | operator<< (std::wostream &output, spirit2json::JSONValue &val) |
| Stream output operator implementation for JSVONValues. | |
* * Copyright (c) 2011, Stefan Hacker <dd0t@users.sourceforge.net> * * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * Neither the name of the authors nor the * names of its contributors may be used to endorse or promote products * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * *
| std::wostream& operator<< | ( | std::wostream & | output, |
| spirit2json::JSONValue & | val | ||
| ) |
Stream output operator implementation for JSVONValues.
| output | Output stream to write to |
| val | JSONValue to generate json from |
1.7.5.1