add v8 executor & default executor

This commit is contained in:
王劲鹏
2021-03-31 10:36:45 +08:00
committed by osborn
parent 500df331fc
commit 8bb7fdb66b
11 changed files with 570 additions and 151 deletions

View File

@@ -0,0 +1,31 @@
#ifndef V8EXECUTOR_H
#define V8EXECUTOR_H
#include "libplatform/libplatform.h"
#include "v8/v8.h"
#include <QObject>
#include <QString>
class V8Executor {
private:
v8::Isolate::CreateParams create_params;
v8::Isolate *m_isolate;
v8::Isolate::Scope *m_isolate_scope;
v8::Global<v8::Context> *m_global_context;
v8::Local<v8::Value> innerExec(const char *script, const char *source,
std::string *exception_str);
public:
V8Executor();
~V8Executor();
QString loadJS(QString script, QString source);
void injectGlobalJSObject(QString name, QObject *object);
};
#endif // V8EXECUTOR_H