24 #include <tulip/tulipconf.h>
38 class TLP_SCOPE YajlParseFacade {
42 virtual ~YajlParseFacade() {
51 void parse(std::string filename);
52 void parse(
const unsigned char* data,
int length);
54 virtual void parseNull();
55 virtual void parseBoolean(
bool boolVal);
56 virtual void parseInteger(
long long integerVal);
57 virtual void parseDouble(
double doubleVal);
58 virtual void parseNumber(
const char * numberVal,
size_t numberLen);
59 virtual void parseString(
const std::string& value);
60 virtual void parseMapKey(
const std::string& value);
61 virtual void parseStartMap();
62 virtual void parseEndMap();
63 virtual void parseStartArray();
64 virtual void parseEndArray();
66 bool parsingSucceeded()
const;
67 std::string errorMessage()
const;
71 bool _parsingSucceeded;
72 std::string _errorMessage;
75 class YajlWriteFacade {
80 std::string generatedString();
82 void writeInteger(
long long int number);
83 void writeDouble(
double number);
84 void writeNumber(
const char* str,
size_t len);
85 void writeString(
const std::string& text);
87 void writeBool(
bool value);
90 void writeArrayOpen();
91 void writeArrayClose();
93 yajl_gen_t* _generator;