]> git.saurik.com Git - cycript.git/blobdiff - JavaScript.hpp
Initialize address32 out parameter in vm_allocate.
[cycript.git] / JavaScript.hpp
index 1ede3642d65e7b3b09446944a9b479567c74833f..3fb2e6c5995d4b976a2fa9a4cb5375800f7523ba 100644 (file)
@@ -39,6 +39,7 @@
 
 extern JSStringRef Array_s;
 extern JSStringRef cy_s;
+extern JSStringRef cyi_s;
 extern JSStringRef length_s;
 extern JSStringRef message_s;
 extern JSStringRef name_s;
@@ -66,6 +67,7 @@ double CYCastDouble(JSContextRef context, JSValueRef value);
 CYUTF8String CYPoolUTF8String(CYPool &pool, JSContextRef context, JSStringRef value);
 const char *CYPoolCString(CYPool &pool, JSContextRef context, JSStringRef value);
 
+bool CYHasProperty(JSContextRef context, JSObjectRef object, JSStringRef name);
 JSValueRef CYGetProperty(JSContextRef context, JSObjectRef object, size_t index);
 JSValueRef CYGetProperty(JSContextRef context, JSObjectRef object, JSStringRef name);
 
@@ -125,6 +127,10 @@ extern struct CYHooks *hooks_;
 
 JSObjectRef CYMakePointer(JSContextRef context, void *pointer, size_t length, sig::Type *type, ffi_type *ffi, JSObjectRef owner);
 
+JSObjectRef CYMakeType(JSContextRef context, const char *encoding);
+JSObjectRef CYMakeType(JSContextRef context, sig::Type *type);
+JSObjectRef CYMakeType(JSContextRef context, sig::Signature *signature);
+
 void CYFinalize(JSObjectRef object);
 
 size_t CYArrayLength(JSContextRef context, JSObjectRef array);
@@ -138,6 +144,9 @@ JSStringRef CYCopyJSString(JSStringRef value);
 JSStringRef CYCopyJSString(CYUTF8String value);
 JSStringRef CYCopyJSString(JSContextRef context, JSValueRef value);
 
+void CYGarbageCollect(JSContextRef context);
+void CYDestroyContext();
+
 class CYJSString {
   private:
     JSStringRef string_;