From df9f92b955ceb18a89b68dacdc3a2ab820a36123 Mon Sep 17 00:00:00 2001 From: Aleks Kissinger Date: Sun, 22 Jan 2017 14:19:41 +0100 Subject: parsing --- tikzit/src/data/tikzgraphassembler.cpp | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) (limited to 'tikzit/src/data/tikzgraphassembler.cpp') diff --git a/tikzit/src/data/tikzgraphassembler.cpp b/tikzit/src/data/tikzgraphassembler.cpp index d8e3963..c05a5c8 100644 --- a/tikzit/src/data/tikzgraphassembler.cpp +++ b/tikzit/src/data/tikzgraphassembler.cpp @@ -1,14 +1,31 @@ #include "tikzgraphassembler.h" +#include "tikzparserdefs.h" +#include "tikzparser.parser.hpp" +#include "tikzlexer.h" + +int yyparse(void *scanner); + + TikzGraphAssembler::TikzGraphAssembler(Graph *graph, QObject *parent) : - _graph(graph), QObject(parent) + QObject(parent), _graph(graph) { - + yylex_init(&scanner); + yyset_extra(this, scanner); } void TikzGraphAssembler::addNodeToMap(Node *n) { _nodeMap.insert(n->name(), n); } Node *TikzGraphAssembler::nodeWithName(QString name) { return _nodeMap[name]; } +bool TikzGraphAssembler::parse(const QString &tikz) +{ + yy_scan_string(tikz.toLatin1().data(), scanner); + int result = yyparse(scanner); + + if (result == 0) return true; + else return false; +} + Graph *TikzGraphAssembler::graph() const { return _graph; -- cgit v1.2.3