diff options
author | Aleks Kissinger <aleks0@gmail.com> | 2018-01-04 16:00:52 +0100 |
---|---|---|
committer | Aleks Kissinger <aleks0@gmail.com> | 2018-01-04 16:00:52 +0100 |
commit | 738ecbd5fad2b46836bfd6a94aeebf165ae2bbca (patch) | |
tree | df04709807cc9ec8481a3ebc7d80ac25e5b2f457 /src/data/tikzgraphassembler.cpp | |
parent | 0421a96749743868554d44585050b1b3d04864d2 (diff) |
relocated source code to the root
Diffstat (limited to 'src/data/tikzgraphassembler.cpp')
-rw-r--r-- | src/data/tikzgraphassembler.cpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/data/tikzgraphassembler.cpp b/src/data/tikzgraphassembler.cpp new file mode 100644 index 0000000..c05a5c8 --- /dev/null +++ b/src/data/tikzgraphassembler.cpp @@ -0,0 +1,33 @@ +#include "tikzgraphassembler.h" + +#include "tikzparserdefs.h" +#include "tikzparser.parser.hpp" +#include "tikzlexer.h" + +int yyparse(void *scanner); + + +TikzGraphAssembler::TikzGraphAssembler(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; +} + |