History

working to clean up the QtScript implementation and move towards completion of the proxy interface

Heather Anderson committed 5 years ago

Commit 2dd9d781 parent 1e018db38 files · +2240 −923Browse files

Showing the changes to libraries/script-engine/src/qtscript/ScriptProgramQtWrapper.cpp (1 of 38 files). Show all

Unified · Split

libraries/script-engine/src/qtscript/ScriptProgramQtWrapper.cpp+55−0
@@ -0,0 +1,55 @@
1+//
2+// ScriptProgramQtWrapper.cpp
3+// libraries/script-engine/src
4+//
5+// Created by Heather Anderson on 8/24/21.
6+// Copyright 2021 Vircadia contributors.
7+//
8+// Distributed under the Apache License, Version 2.0.
9+// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
10+//
11+
12+#include "ScriptProgramQtWrapper.h"
13+
14+#include <QtScript/QScriptContext>
15+
16+#include "ScriptEngineQtScript.h"
17+#include "ScriptValueQtWrapper.h"
18+
19+ScriptProgramQtWrapper* ScriptProgramQtWrapper::unwrap(ScriptProgramPointer val) {
20+ if (!val) {
21+ return nullptr;
22+ }
23+
24+ return dynamic_cast<ScriptProgramQtWrapper*>(val.get());
25+}
26+
27+ScriptSyntaxCheckResultPointer ScriptProgramQtWrapper::checkSyntax() const {
28+ QScriptSyntaxCheckResult result = _engine->checkSyntax(_value.sourceCode());
29+ return ScriptSyntaxCheckResultPointer(new ScriptSyntaxCheckResultQtWrapper(std::move(result)));
30+}
31+
32+QString ScriptProgramQtWrapper::fileName() const {
33+ return _value.fileName();
34+}
35+
36+QString ScriptProgramQtWrapper::sourceCode() const {
37+ return _value.sourceCode();
38+}
39+
40+
41+int ScriptSyntaxCheckResultQtWrapper::errorColumnNumber() const {
42+ return _value.errorColumnNumber();
43+}
44+
45+int ScriptSyntaxCheckResultQtWrapper::errorLineNumber() const {
46+ return _value.errorLineNumber();
47+}
48+
49+QString ScriptSyntaxCheckResultQtWrapper::errorMessage() const {
50+ return _value.errorMessage();
51+}
52+
53+ScriptSyntaxCheckResult::State ScriptSyntaxCheckResultQtWrapper::state() const {
54+ return static_cast<ScriptSyntaxCheckResult::State>(_value.state());
55+}