summaryrefslogtreecommitdiff
path: root/src/lib/corelib/language/scriptengine.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/corelib/language/scriptengine.h')
-rw-r--r--src/lib/corelib/language/scriptengine.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/lib/corelib/language/scriptengine.h b/src/lib/corelib/language/scriptengine.h
index d7798decf..8c97e3079 100644
--- a/src/lib/corelib/language/scriptengine.h
+++ b/src/lib/corelib/language/scriptengine.h
@@ -292,6 +292,19 @@ public:
void setProperty(const char *k, const QVariant &v) { m_properties.insert(QLatin1String(k), v); }
private:
+ class Importer {
+ public:
+ Importer(ScriptEngine &engine, const FileContextBaseConstPtr &fileCtx,
+ JSValue &targetObject, ObserveMode observeMode);
+ ~Importer();
+ void run();
+
+ private:
+ ScriptEngine &m_engine;
+ const FileContextBaseConstPtr &m_fileCtx;
+ JSValue &m_targetObject;
+ };
+
static int interruptor(JSRuntime *rt, void *opaqueEngine);
bool gatherFileResults() const;
@@ -305,7 +318,7 @@ private:
void uninstallImportFunctions();
void import(const JsImport &jsImport, JSValue &targetObject);
void observeImport(JSValue &jsImport);
- void importFile(const QString &filePath, JSValue &targetObject);
+ void importFile(const QString &filePath, JSValue targetObject);
static JSValue js_require(JSContext *ctx, JSValueConst this_val,
int argc, JSValueConst *argv, int magic, JSValue *func_data);
JSValue mergeExtensionObjects(const JSValueList &lst);