Cutelee
6.1.0
templates
scriptabletags
scriptableparser.h
1
/*
2
This file is part of the Cutelee template system.
3
4
Copyright (c) 2009,2010 Stephen Kelly <steveire@gmail.com>
5
6
This library is free software; you can redistribute it and/or
7
modify it under the terms of the GNU Lesser General Public
8
License as published by the Free Software Foundation; either version
9
2.1 of the Licence, or (at your option) any later version.
10
11
This library is distributed in the hope that it will be useful,
12
but WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
Lesser General Public License for more details.
15
16
You should have received a copy of the GNU Lesser General Public
17
License along with this library. If not, see <http://www.gnu.org/licenses/>.
18
19
*/
20
21
#ifndef SCRIPTABLE_PARSER_H
22
#define SCRIPTABLE_PARSER_H
23
24
#include <QtCore/QObject>
25
#include <QtCore/QStringList>
26
#include <QtQml/QJSValue>
27
28
namespace
Cutelee
29
{
30
class
Parser
;
31
}
32
33
using namespace
Cutelee
;
34
35
class
ScriptableParser
:
public
QObject
36
{
37
Q_OBJECT
38
public
:
39
explicit
ScriptableParser
(
Parser
*p, QJSEngine *engine);
40
41
Parser
*parser() {
return
m_p; }
42
43
Q_INVOKABLE
bool
hasNextToken()
const
;
44
45
public
Q_SLOTS:
46
QList<QObject *> parse(QObject *parent,
const
QString
&stopAt);
47
QList<QObject *> parse(QObject *parent,
const
QStringList &stopAt = {});
48
49
void
skipPast(
const
QString
&tag);
50
51
QJSValue takeNextToken();
52
void
removeNextToken();
53
54
void
loadLib(
const
QString
&name);
55
56
private
:
57
Parser
*m_p;
58
QJSEngine *m_engine;
59
};
60
61
#endif
Cutelee::Parser
The Parser class processes a string template into a tree of nodes.
Definition
parser.h:49
QString
Definition
operatorcasttests.cpp:24
ScriptableParser
Definition
scriptableparser.h:36
Cutelee
The Cutelee namespace holds all public Cutelee API.
Definition
Mainpage.dox:8
Generated by
1.9.8