kDB: Knowledge DataBase
Loading...
Searching...
No Matches
Lexer_p.h
1/*
2 * Copyright (c) 2008,2010,2015 Cyrille Berger <cberger@cberger.net>
3 *
4 */
5
6#ifndef _TURTLE_LEXER_BASE_H_
7#define _TURTLE_LEXER_BASE_H_
8
9class QIODevice;
10
11#include "Token_p.h"
12#include <knowCore/LexerTextStream.h>
13
14namespace knowRDF
15{
16 namespace Turtle
17 {
24 class Lexer
25 {
26 public:
27 Lexer(QIODevice* _sstream);
28 Lexer(const QString& _string);
29 ~Lexer();
30 public:
31 void setCurieLexingEnabled(bool _v);
32 bool isCurieLexingEnabled() const;
33 Token nextToken();
34 protected:
39 Token getDigit(knowCore::LexerTextStream::Element firstChar);
40 Token getString(int terminator, Token::Type _type, bool _tripleEnding);
41 bool isTriple(knowCore::LexerTextStream::Element _char);
42 private:
43 struct Private;
44 Private* const d;
45 };
46 } // namespace Turtle
47} // namespace knowRDF
48
49#endif
Definition Lexer_p.h:25
QString getIdentifier(knowCore::LexerTextStream::Element lastChar)
Definition Lexer_p.cpp:78
Definition Lexer_p.cpp:89
Definition LexerTextStream.h:36
Definition Token_p.h:19
Type
Definition Token_p.h:24