]> git.saurik.com Git - cycript.git/blobdiff - todo.txt
Refactor CYSetLast to return a reference to the eol.
[cycript.git] / todo.txt
index fb086d76505b1550a11158e246ff9978494d86d2..dd16598b56b9d21e58dcba92e36d91bd4b746ae4 100644 (file)
--- a/todo.txt
+++ b/todo.txt
@@ -39,3 +39,43 @@ don't ever generate $ CYWith, in particular for CYLet... use CYFunctionExpressio
 
 semi-colin insertion warings should mark after the previous token, not on the current one: makes a /lot/ more sense
 new for pools should take a reference, not a pointer
+
+output errors during Trampoline to some kind of log file
+
+cy# ["" <TAB> -> {message:"'undefined' is not an object (evaluating '\"\".$cyi.isa')",line:1,sourceId:30583072,name:"TypeError"}
+  now: cy# ["" <TAB> -> *** _assert(false):Console.cpp(214):ParseExpression [errno=12]
+there is a reinterpret_cast<> that I replaced with an old-style cast on the output of dladdr
+
+why do I never deallocate ffi closures?
+
+cy# (function() { for each (var index in [1, 3]) system.print(index); })()
+(function(){with({$cys:[1,3],$cyt:undefined})for($cyt in $cys){index=$cys[$cyt];system.print(index)}})()
+1
+3
+cy# (function() { var index; for each (var index in [1, 3]) system.print(index); })()
+(function(){var e;;with({$cys:[1,3],$cyt:undefined})for($cyt in $cys){e=$cys[$cyt];system.print(e)}})()
+
+make a reference holder for namearrays
+rename names to accumulator when it is a name accumulator, and retake names for subset
+I believe calls to mutableCopy will leak memory
+consider pointerTo instead of toPointer
+store the last exception in a variable
+should WebUndefined be @undefined?
+
+if something is a function, it should be output differently
+evaluate usages of CYTry in ObjectiveC/Library for CYObjectiveTry
+verify name targets of "incorrect number of arguments to"
+maybe support __objc_{yes,no} intrinisic primitives
+
+support new objective-c subscript notation:
+  id key = ...;
+  id value = object[key];
+  -> id value = [object objectForKeyedSubscript:key];
+  object[key] = newValue;
+  -> [object setObject:newValue forKeyedSubscript:key];
+and:
+  NSUInteger idx = ...;
+  id value = object[idx];
+  -> id value = [object objectAtIndexedSubscript:idx];
+  object[idx] = newValue;
+  -> [object setObject:newValue atIndexedSubscript:idx];