QCodeEdit
2.2
|
Definition of the core QNFA syntax engine. More...
#include <QChar>
#include <QList>
#include <QHash>
#include <QStack>
#include <QString>
#include "light_vector.h"
Go to the source code of this file.
Classes | |
class | QNFABranch |
struct | QCharTreeNode |
struct | QNFA |
struct | QNFAMatchContext |
class | QNFAMatchHandler |
class | QNFAMatchNotifier |
struct | QNFAMatchNotifier::Command |
Typedefs | |
typedef light_vector< quint16 > | QNFASet |
typedef QHash< quint16, QCharTreeNode > | QCharTreeLevel |
typedef QCharTreeLevel | QCharTree |
Enumerations | |
enum | NFAType { Char = 0, Match = 1, CxtBeg = 2, CxtEnd = 4, CxtEsc = 8, ContextBegin = Match | CxtBeg, ContextEnd = Match | CxtEnd, EscapeSeq = Match | CxtEsc, Escaped = 16, Exclusive = 32, StayOnLine = 64, Reserved = 128 } |
enum | NFAAssertion { NoAssertion = 0, One = 0, ZeroOrOne = 1, ZeroOrMore = 2, OneOrMore = 4, WordStart = 8, WordEnd = 16, Word = 32, NonWord = 64, Digit = 128, NonDigit = 256, Space = 512, NonSpace = 1024, CaseSensitive = 2048 } |
Functions | |
Q_DECLARE_TYPEINFO (QCharTreeNode, Q_MOVABLE_TYPE) | |
void | match (QNFAMatchContext *lexer, const QChar *d, int length, QNFAMatchNotifier notify) |
void | match (QNFAMatchContext *lexer, const QString &s, QNFAMatchNotifier notify) |
QNFA * | lexer () |
void | squeeze (QNFA *nfa) |
void | squeeze (QCharTreeLevel &lvl) |
QNFA * | sharedContext (const QString &start, QNFA *other, bool cs) |
QNFA * | context (const QString &start, const QString &stop, const QString &escape, int action, QNFA **handler=0, bool cs=true) |
void | addNFA (QNFA *context, QNFA *nfa) |
bool | plain (const QString &word, QString *dest) |
void | addWord (QCharTree &tree, const QString &w, int action, bool cs) |
void | addWord (QNFA *lexer, const QString &w, int action, bool cs) |
void | addSequence (QNFA *lexer, const QString &w, int action, bool cs) |
QNFA * | sequence (const QChar *d, int length, QNFA **end, bool cs) |
QNFA * | sequence (const QString &s, QNFA **end, bool cs) |
Definition of the core QNFA syntax engine.