JavaScriptCoreでWebWorkerのコンテキストに新しいネイティブクラスを追加する方法
JavaScriptCoreを介してJavaScriptを拡張するアプリケーションをwebkit-gtkブラウザーで使用しています。現在、いくつかのクラスをグローバルコンテキストに追加しています。 void create_js(gpointer context, char* className, JSClassDefinition clasDefinition) { JSClassRef classDef = JSClassCreate(&clasDefinition); JSObjectRef classObj = JSObjectMake(context, classDef, context); JSObjectRef globalObj = JSContextGetGlobalObject(context); JSStringRef str = JSStringCreateWithUTF8CString(className); JSObjectSetProperty(context, globalObj, str, classObj, kJSPropertyAttributeNone, NULL); JSStringRelease(str); } 次に、これらのクラスもWebWorkerのコンテキストに追加して、JSでインスタンス化されたワーカーからそれらを呼び出すことができるようにします。 私はそのWorkerようにオブジェクトを取得しようとしました: JSStringRef workerStr = JSStringCreateWithUTF8CString("Worker"); JSObjectRef worker = JSObjectGetProperty(context, globalObj, workerStr, NULL); JSObjectSetProperty(context, worker, …