123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- %insert(wrapper) %{
-
- SWIGINTERN bool JS_registerClass(JSGlobalContextRef context, JSObjectRef parentObject,
- const char* className,
- JSClassDefinition* definition) {
- JSStringRef js_className = JSStringCreateWithUTF8CString(className);
- JSObjectRef classObject = JSObjectMake(context, JSClassCreate(definition), NULL);
- JSObjectSetProperty(context, parentObject,
- js_className, classObject,
- kJSPropertyAttributeNone, NULL);
- JSStringRelease(js_className);
-
- return true;
- }
- SWIGINTERN bool JS_registerNamespace(JSGlobalContextRef context,
- JSObjectRef namespaceObj, JSObjectRef parentNamespace,
- const char* name)
- {
- JSStringRef js_name = JSStringCreateWithUTF8CString(name);
- JSObjectSetProperty(context, parentNamespace,
- js_name, namespaceObj,
- kJSPropertyAttributeNone, NULL);
- JSStringRelease(js_name);
-
- return true;
- }
- SWIGINTERN bool JS_registerFunction(JSGlobalContextRef context, JSObjectRef object,
- const char* functionName, JSObjectCallAsFunctionCallback callback)
- {
- JSStringRef js_functionName = JSStringCreateWithUTF8CString(functionName);
- JSObjectSetProperty(context, object, js_functionName,
- JSObjectMakeFunctionWithCallback(context, js_functionName, callback),
- kJSPropertyAttributeNone, NULL);
- JSStringRelease(js_functionName);
- return true;
- }
- SWIGINTERN bool JS_veto_set_variable(JSContextRef context, JSObjectRef thisObject, JSStringRef propertyName, JSValueRef value, JSValueRef* exception)
- {
- char buffer[256];
- char msg[512];
- int res;
-
- JSStringGetUTF8CString(propertyName, buffer, 256);
- res = sprintf(msg, "Tried to write read-only variable: %s.", buffer);
-
- if(res<0) {
- SWIG_exception(SWIG_ERROR, "Tried to write read-only variable.");
- } else {
- SWIG_exception(SWIG_ERROR, msg);
- }
-
- return false;
- }
- SWIGINTERN JSValueRef JS_CharPtrToJSValue(JSContextRef context, char* cstr) {
- JSValueRef val;
-
- JSStringRef jsstring = JSStringCreateWithUTF8CString((char*) cstr);
- val = JSValueMakeString(context, jsstring);
- JSStringRelease(jsstring);
- return val;
- }
- %}
|