21 #include "json_scanner.cc"
23 #include "qjson_debug.h"
24 #include "json_scanner.h"
29 #include <QtCore/QDebug>
30 #include <QtCore/QRegExp>
35 JSonScanner::JSonScanner(QIODevice* io)
36 : m_allowSpecialNumbers(false),
38 m_criticalError(false),
39 m_C_locale(QLocale::C)
44 JSonScanner::~JSonScanner()
48 void JSonScanner::allowSpecialNumbers(
bool allow) {
49 m_allowSpecialNumbers = allow;
52 int JSonScanner::yylex(YYSTYPE* yylval,
yy::location *yylloc) {
58 if (m_criticalError) {
65 int JSonScanner::LexerInput(
char* buf,
int max_size) {
66 if (!m_io->isOpen()) {
67 qCritical() <<
"JSonScanner::yylex - io device is not open";
68 m_criticalError =
true;
72 int readBytes = m_io->read(buf, max_size);
74 qCritical() <<
"JSonScanner::yylex - error while reading from io device";
75 m_criticalError =
true;
void step()
Reset initial location to final location.