XPlor/libs/dsl/dslengine.cpp

20 lines
540 B
C++
Raw Permalink Normal View History

2026-01-01 22:18:25 -05:00
#include "dslengine.h"
#include "parser.h"
Module DslEngine::compile(const QString& scriptText) {
Lexer lex(scriptText);
Parser parser(std::move(lex));
return parser.parseModule();
}
QVariantMap DslEngine::parse(const QString& scriptText, const QString& typeName, QIODevice* dev) {
Module mod = compile(scriptText);
return parse(mod, typeName, dev);
}
QVariantMap DslEngine::parse(const Module& mod, const QString& typeName, QIODevice* dev) {
Interpreter interp(mod);
return interp.runType(typeName, dev);
}