]> git.saurik.com Git - cycript.git/blobdiff - libcycript.cy
Instance's toPointer() should return as CFTypeRef.
[cycript.git] / libcycript.cy
index 8240a44def2fb362e88748f0557aed905e750d9c..7690a299f7eadf6aa43074ecf5433c17c1dbf797 100644 (file)
 
 (function() {
 
+Number.prototype.__defineGetter__('$cyt', function() {
+    if (this.$cyt_)
+        return this.$cyt_;
+    if ((this|0) == this)
+        return int;
+});
+
 this.typeid = function(object) {
     return object.$cyt;
 };
 
 let $cy_set = function(object, properties) {
     for (const name in properties)
+        if ("defineProperty" in Object)
         Object.defineProperty(object, name, {
             configurable: true,
             enumerable: false,
             writable: true,
             value: properties[name],
-        });
+        }); else object[name] = properties[name];
 };
 
 $cy_set(Boolean.prototype, {
@@ -72,7 +80,8 @@ $cy_set(Error.prototype, {
 $cy_set(Number.prototype, {
     toCYON: function() {
         if ("$cyt" in this)
-            return `${this.$cyt.toCYON()}(${this.toString()})`;
+            //return `${this.$cyt.toCYON()}(${this.toString()})`;
+            return this.toString();
         return `new Number(${this.toString()})`;
     },
 });
@@ -309,7 +318,7 @@ require.resolve = function(name) {
         if (path != null)
             return path;
     } else {
-        let cwd = new (typedef char[1024]);
+        let cwd = *new (typedef char[1024]);
         cwd = getcwd(cwd, cwd.length).toString();
         cwd = cwd.split('/');