X-Git-Url: https://git.saurik.com/cycript.git/blobdiff_plain/51b6165e0dd24e4d40ff80e504922f705ddd7b62..f61fec22c57591cca36aae67775c4cd52a5411bc:/JavaScript.hpp diff --git a/JavaScript.hpp b/JavaScript.hpp index c8a8fd8..920df8c 100644 --- a/JavaScript.hpp +++ b/JavaScript.hpp @@ -22,6 +22,8 @@ #ifndef CYCRIPT_JAVASCRIPT_HPP #define CYCRIPT_JAVASCRIPT_HPP +#include + #include #include #include @@ -67,6 +69,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); @@ -74,6 +77,8 @@ void CYSetProperty(JSContextRef context, JSObjectRef object, size_t index, JSVal void CYSetProperty(JSContextRef context, JSObjectRef object, JSStringRef name, JSValueRef value, JSPropertyAttributes attributes = kJSPropertyAttributeNone); void CYSetProperty(JSContextRef context, JSObjectRef object, JSStringRef name, JSValueRef (*callback)(JSContextRef, JSObjectRef, JSObjectRef, size_t, const JSValueRef[], JSValueRef *), JSPropertyAttributes attributes = kJSPropertyAttributeNone); +void CYSetPrototype(JSContextRef context, JSObjectRef object, JSValueRef prototype); + JSObjectRef CYGetCachedObject(JSContextRef context, JSStringRef name); JSValueRef CYCastJSValue(JSContextRef context, bool value); @@ -107,7 +112,8 @@ JSValueRef CYCallFunction(CYPool &pool, JSContextRef context, size_t setups, voi bool CYIsCallable(JSContextRef context, JSValueRef value); JSValueRef CYCallAsFunction(JSContextRef context, JSObjectRef function, JSObjectRef _this, size_t count, const JSValueRef arguments[]); -const char *CYPoolCCYON(CYPool &pool, JSContextRef context, JSObjectRef object); +const char *CYPoolCCYON(CYPool &pool, JSContextRef context, JSObjectRef object, std::set &objects); +std::set *CYCastObjects(JSContextRef context, JSObjectRef _this, size_t count, const JSValueRef arguments[]); struct CYHooks { void *(*ExecuteStart)(JSContextRef);