]> git.saurik.com Git - cycript.git/blobdiff - todo.txt
Use CYForDeclarations as indirection to finish CYLet.
[cycript.git] / todo.txt
index 4613d73db50d4a8043e68d2739cc0c91d37f7b39..dd16598b56b9d21e58dcba92e36d91bd4b746ae4 100644 (file)
--- a/todo.txt
+++ b/todo.txt
@@ -41,3 +41,41 @@ semi-colin insertion warings should mark after the previous token, not on the cu
 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];