]> git.saurik.com Git - cycript.git/log
cycript.git
8 years agoHave console pre-initialize engine to feel faster.
Jay Freeman (saurik) [Sun, 3 Jan 2016 09:53:19 +0000 (01:53 -0800)] 
Have console pre-initialize engine to feel faster.

8 years agoImprove accuracy of JNI local references tracking.
Jay Freeman (saurik) [Sun, 3 Jan 2016 09:44:02 +0000 (01:44 -0800)] 
Improve accuracy of JNI local references tracking.

8 years agoFix -g/-O on Android and commit all build scripts.
Jay Freeman (saurik) [Sun, 3 Jan 2016 02:38:32 +0000 (18:38 -0800)] 
Fix -g/-O on Android and commit all build scripts.

8 years agoFix conversion path for Java->JS exception values.
Jay Freeman (saurik) [Sun, 3 Jan 2016 02:24:16 +0000 (18:24 -0800)] 
Fix conversion path for Java->JS exception values.

8 years agoSyntax highlight #, even if not using Objective-C.
Jay Freeman (saurik) [Sun, 3 Jan 2016 02:11:19 +0000 (18:11 -0800)] 
Syntax highlight #, even if not using Objective-C.

8 years agoSupport linkers that allow relative library paths.
Jay Freeman (saurik) [Sun, 3 Jan 2016 02:06:45 +0000 (18:06 -0800)] 
Support linkers that allow relative library paths.

8 years agoPut history in Android location (and don't crash).
Jay Freeman (saurik) [Sun, 3 Jan 2016 02:05:48 +0000 (18:05 -0800)] 
Put history in Android location (and don't crash).

8 years agoAvoid crashing when we have no "current terminal".
Jay Freeman (saurik) [Sun, 3 Jan 2016 02:02:45 +0000 (18:02 -0800)] 
Avoid crashing when we have no "current terminal".

8 years agoRefactor all of Java bridge to release references.
Jay Freeman (saurik) [Sun, 3 Jan 2016 01:54:05 +0000 (17:54 -0800)] 
Refactor all of Java bridge to release references.

8 years agoFix compilation errors using gcc from Android NDK.
Jay Freeman (saurik) [Sat, 2 Jan 2016 22:20:43 +0000 (14:20 -0800)] 
Fix compilation errors using gcc from Android NDK.

8 years agoUpdate the copyright year now that 2016 has begun.
Jay Freeman (saurik) [Sat, 2 Jan 2016 07:53:57 +0000 (23:53 -0800)] 
Update the copyright year now that 2016 has begun.

8 years agoGot exceptions bridged, back and forth, with Java.
Jay Freeman (saurik) [Sat, 2 Jan 2016 07:46:57 +0000 (23:46 -0800)] 
Got exceptions bridged, back and forth, with Java.

8 years agoJava backend now handles Swill-style Jetty server.
Jay Freeman (saurik) [Sat, 2 Jan 2016 07:30:14 +0000 (23:30 -0800)] 
Java backend now handles Swill-style Jetty server.

8 years agoAdd all supported binding API headers to analysis.
Jay Freeman (saurik) [Sat, 2 Jan 2016 02:25:16 +0000 (18:25 -0800)] 
Add all supported binding API headers to analysis.

8 years agoMade lots of progress on Java bridge (checkpoint).
Jay Freeman (saurik) [Sat, 2 Jan 2016 02:17:19 +0000 (18:17 -0800)] 
Made lots of progress on Java bridge (checkpoint).

8 years agoUse CYJavaForEachPrimitive to map primitive types.
Jay Freeman (saurik) [Fri, 1 Jan 2016 20:55:55 +0000 (12:55 -0800)] 
Use CYJavaForEachPrimitive to map primitive types.

8 years agoUse * and -> syntax to unify Java and Objective-C.
Jay Freeman (saurik) [Fri, 1 Jan 2016 19:15:49 +0000 (11:15 -0800)] 
Use * and -> syntax to unify Java and Objective-C.

8 years agoAdd x.[] syntax for "legitimate" subscript access.
Jay Freeman (saurik) [Fri, 1 Jan 2016 19:14:17 +0000 (11:14 -0800)] 
Add x.[] syntax for "legitimate" subscript access.

8 years agoThis implementation for Java works, but I hate it.
Jay Freeman (saurik) [Fri, 1 Jan 2016 05:21:56 +0000 (21:21 -0800)] 
This implementation for Java works, but I hate it.

8 years agoAdd syntax akin to Java's anonymous inner classes.
Jay Freeman (saurik) [Thu, 31 Dec 2015 21:38:55 +0000 (13:38 -0800)] 
Add syntax akin to Java's anonymous inner classes.

8 years agoHide complicated hold manipulation behind CYHLD().
Jay Freeman (saurik) [Thu, 31 Dec 2015 21:13:11 +0000 (13:13 -0800)] 
Hide complicated hold manipulation behind CYHLD().

8 years agoWedge way to link against Python 2.7 to configure.
Jay Freeman (saurik) [Thu, 31 Dec 2015 04:47:24 +0000 (20:47 -0800)] 
Wedge way to link against Python 2.7 to configure.

8 years agoRemove old features of CYValue that are bad ideas.
Jay Freeman (saurik) [Thu, 31 Dec 2015 04:00:25 +0000 (20:00 -0800)] 
Remove old features of CYValue that are bad ideas.

8 years agoUse variadic templates to better organize Classes.
Jay Freeman (saurik) [Thu, 31 Dec 2015 03:48:06 +0000 (19:48 -0800)] 
Use variadic templates to better organize Classes.

8 years agoUse pkg-config to find Ruby 2.1 (*sigh*) on Linux.
Jay Freeman (saurik) [Wed, 30 Dec 2015 18:38:00 +0000 (10:38 -0800)] 
Use pkg-config to find Ruby 2.1 (*sigh*) on Linux.

8 years agoPut Java/Ruby framework detection under CY_LT_LIB.
Jay Freeman (saurik) [Wed, 30 Dec 2015 18:29:48 +0000 (10:29 -0800)] 
Put Java/Ruby framework detection under CY_LT_LIB.

8 years agoDetect Ruby library installation during configure.
Jay Freeman (saurik) [Wed, 30 Dec 2015 18:19:26 +0000 (10:19 -0800)] 
Detect Ruby library installation during configure.

8 years agoParse scope and symbol colon operators, from Ruby.
Jay Freeman (saurik) [Wed, 30 Dec 2015 17:51:01 +0000 (09:51 -0800)] 
Parse scope and symbol colon operators, from Ruby.

8 years agoRemove extra type cast long obsoleted by template.
Jay Freeman (saurik) [Wed, 30 Dec 2015 14:12:23 +0000 (06:12 -0800)] 
Remove extra type cast long obsoleted by template.

8 years agoShow more explicit types for Objective-C Instance.
Jay Freeman (saurik) [Wed, 30 Dec 2015 14:11:17 +0000 (06:11 -0800)] 
Show more explicit types for Objective-C Instance.

8 years agoLogically order type specifier cases in sig/parse.
Jay Freeman (saurik) [Wed, 30 Dec 2015 13:21:16 +0000 (05:21 -0800)] 
Logically order type specifier cases in sig/parse.

8 years agoAvoid frustrating corner-case crashes in readline.
Jay Freeman (saurik) [Wed, 30 Dec 2015 05:40:06 +0000 (21:40 -0800)] 
Avoid frustrating corner-case crashes in readline.

8 years agoAlign struct access to struct address, not memory.
Jay Freeman (saurik) [Wed, 30 Dec 2015 04:18:24 +0000 (20:18 -0800)] 
Align struct access to struct address, not memory.

8 years agoAdd workaround for zero-sized struct (and use it).
Jay Freeman (saurik) [Wed, 30 Dec 2015 04:15:00 +0000 (20:15 -0800)] 
Add workaround for zero-sized struct (and use it).

8 years agoMove x.type() to typeid(x) and implement variadic.
Jay Freeman (saurik) [Wed, 30 Dec 2015 03:22:58 +0000 (19:22 -0800)] 
Move x.type() to typeid(x) and implement variadic.

8 years agoAttach FFI closure deallocation to Functor's pool.
Jay Freeman (saurik) [Tue, 29 Dec 2015 22:46:45 +0000 (14:46 -0800)] 
Attach FFI closure deallocation to Functor's pool.

8 years agoFix Objective-C dictionary/array literal lowering.
Jay Freeman (saurik) [Tue, 29 Dec 2015 22:10:01 +0000 (14:10 -0800)] 
Fix Objective-C dictionary/array literal lowering.

8 years agoProvide CYCastJSValue override for short integers.
Jay Freeman (saurik) [Tue, 29 Dec 2015 17:27:06 +0000 (09:27 -0800)] 
Provide CYCastJSValue override for short integers.

8 years agoImprove CString/Pointer consistency, using CArray.
Jay Freeman (saurik) [Tue, 29 Dec 2015 17:21:22 +0000 (09:21 -0800)] 
Improve CString/Pointer consistency, using CArray.

8 years agoTighten (and sort of "fix") some native alignment.
Jay Freeman (saurik) [Tue, 29 Dec 2015 16:24:32 +0000 (08:24 -0800)] 
Tighten (and sort of "fix") some native alignment.

8 years agoFix awkward mistake in embedded NUL char encoding.
Jay Freeman (saurik) [Tue, 29 Dec 2015 16:20:50 +0000 (08:20 -0800)] 
Fix awkward mistake in embedded NUL char encoding.

8 years agoReplace sig::Primitive with full object hierarchy.
Jay Freeman (saurik) [Tue, 29 Dec 2015 16:03:49 +0000 (08:03 -0800)] 
Replace sig::Primitive with full object hierarchy.

8 years agoMake Instance() consistent with "no nil Instance".
Jay Freeman (saurik) [Tue, 29 Dec 2015 06:35:15 +0000 (22:35 -0800)] 
Make Instance() consistent with "no nil Instance".

8 years agoPrint NULL instead of crashing for CString.toCYON.
Jay Freeman (saurik) [Tue, 29 Dec 2015 06:11:14 +0000 (22:11 -0800)] 
Print NULL instead of crashing for CString.toCYON.

8 years agoMake Pointer/Struct .type compatible with Functor.
Jay Freeman (saurik) [Mon, 28 Dec 2015 02:53:56 +0000 (18:53 -0800)] 
Make Pointer/Struct .type compatible with Functor.

8 years agoMake an array builder to keep JSValueRef on stack.
Jay Freeman (saurik) [Mon, 28 Dec 2015 02:39:48 +0000 (18:39 -0800)] 
Make an array builder to keep JSValueRef on stack.

8 years agoSupport round trip of signed char through typedef.
Jay Freeman (saurik) [Mon, 28 Dec 2015 02:13:19 +0000 (18:13 -0800)] 
Support round trip of signed char through typedef.

8 years agoProvide custom .toCYON for NSBlock (for conradev).
Jay Freeman (saurik) [Thu, 24 Dec 2015 09:32:31 +0000 (01:32 -0800)] 
Provide custom .toCYON for NSBlock (for conradev).

8 years agoError instances that weren't thrown have no stack.
Jay Freeman (saurik) [Wed, 23 Dec 2015 19:39:06 +0000 (11:39 -0800)] 
Error instances that weren't thrown have no stack.

8 years agoAvoid crash when using toCYON on String.prototype.
Jay Freeman (saurik) [Wed, 23 Dec 2015 19:13:46 +0000 (11:13 -0800)] 
Avoid crash when using toCYON on String.prototype.

8 years agoProvide toCYON for more built-in JavaScript types.
Jay Freeman (saurik) [Wed, 23 Dec 2015 18:59:49 +0000 (10:59 -0800)] 
Provide toCYON for more built-in JavaScript types.

8 years agoProvide useful-ish error messages from eval calls.
Jay Freeman (saurik) [Wed, 23 Dec 2015 18:41:40 +0000 (10:41 -0800)] 
Provide useful-ish error messages from eval calls.

8 years agoUse case-sensitive comparison for tab completions.
Jay Freeman (saurik) [Wed, 23 Dec 2015 18:28:00 +0000 (10:28 -0800)] 
Use case-sensitive comparison for tab completions.

8 years agoWalk up from .libs folder for non-Apple makefiles.
Jay Freeman (saurik) [Wed, 23 Dec 2015 18:12:33 +0000 (10:12 -0800)] 
Walk up from .libs folder for non-Apple makefiles.

8 years agoAdd (future) flags field to the bindings database.
Jay Freeman (saurik) [Wed, 23 Dec 2015 17:58:47 +0000 (09:58 -0800)] 
Add (future) flags field to the bindings database.

8 years agoProvide tab completions using the bridge database.
Jay Freeman (saurik) [Wed, 23 Dec 2015 17:16:20 +0000 (09:16 -0800)] 
Provide tab completions using the bridge database.

8 years agoProvide access to errno (though not from console).
Jay Freeman (saurik) [Wed, 23 Dec 2015 16:31:40 +0000 (08:31 -0800)] 
Provide access to errno (though not from console).

8 years agoImplement synchronous lstat: node.js binding demo.
Jay Freeman (saurik) [Wed, 23 Dec 2015 16:23:12 +0000 (08:23 -0800)] 
Implement synchronous lstat: node.js binding demo.

8 years agoGenerate functions to "bind" parameterized macros.
Jay Freeman (saurik) [Wed, 23 Dec 2015 16:14:43 +0000 (08:14 -0800)] 
Generate functions to "bind" parameterized macros.

8 years agoAbstract pulling original file code into function.
Jay Freeman (saurik) [Wed, 23 Dec 2015 15:56:03 +0000 (07:56 -0800)] 
Abstract pulling original file code into function.

8 years agoWork around libclang to find parameterized macros.
Jay Freeman (saurik) [Wed, 23 Dec 2015 15:54:37 +0000 (07:54 -0800)] 
Work around libclang to find parameterized macros.

8 years agoMove pre-cached bridge data into the bridge cache.
Jay Freeman (saurik) [Wed, 23 Dec 2015 13:57:49 +0000 (13:57 +0000)] 
Move pre-cached bridge data into the bridge cache.

8 years agoFix bridge cache (it must be *below* Cycript.all).
Jay Freeman (saurik) [Wed, 23 Dec 2015 13:54:13 +0000 (13:54 +0000)] 
Fix bridge cache (it must be *below* Cycript.all).

8 years agoCYPoolCode put the code in the wrong (local) pool.
Jay Freeman (saurik) [Wed, 23 Dec 2015 13:40:52 +0000 (05:40 -0800)] 
CYPoolCode put the code in the wrong (local) pool.

8 years agoAvoid clang_tokenize and just get the source file.
Jay Freeman (saurik) [Wed, 23 Dec 2015 13:27:14 +0000 (05:27 -0800)] 
Avoid clang_tokenize and just get the source file.

8 years agoConvert static inline functions into bridge stubs.
Jay Freeman (saurik) [Wed, 23 Dec 2015 12:04:23 +0000 (04:04 -0800)] 
Convert static inline functions into bridge stubs.

8 years agoMove brackets from parts to pattern: it's simpler.
Jay Freeman (saurik) [Wed, 23 Dec 2015 08:25:37 +0000 (00:25 -0800)] 
Move brackets from parts to pattern: it's simpler.

8 years agoUse CXCursor_AsmLabelAttr to fix $INODE64 on stat.
Jay Freeman (saurik) [Wed, 23 Dec 2015 08:22:57 +0000 (00:22 -0800)] 
Use CXCursor_AsmLabelAttr to fix $INODE64 on stat.

8 years agoBoth tighten and correct alignment of pool malloc.
Jay Freeman (saurik) [Wed, 23 Dec 2015 02:01:08 +0000 (02:01 +0000)] 
Both tighten and correct alignment of pool malloc.

8 years agoSupport (ignore) __restrict/restrict and throw ().
Jay Freeman (saurik) [Wed, 23 Dec 2015 01:04:08 +0000 (17:04 -0800)] 
Support (ignore) __restrict/restrict and throw ().

8 years agoStruct field access must be mindful of alignments.
Jay Freeman (saurik) [Tue, 22 Dec 2015 15:31:44 +0000 (07:31 -0800)] 
Struct field access must be mindful of alignments.

8 years agoAutomatically generate FFI bridges using libclang.
Jay Freeman (saurik) [Tue, 22 Dec 2015 15:27:34 +0000 (07:27 -0800)] 
Automatically generate FFI bridges using libclang.

8 years agoAdd struct definitions and namespace struct names.
Jay Freeman (saurik) [Tue, 22 Dec 2015 06:48:05 +0000 (22:48 -0800)] 
Add struct definitions and namespace struct names.

8 years agoMemory allocated by new will be garbage collected.
Jay Freeman (saurik) [Tue, 22 Dec 2015 01:50:44 +0000 (17:50 -0800)] 
Memory allocated by new will be garbage collected.

8 years agoCache crazy dlopen/dladdr library path gymnastics.
Jay Freeman (saurik) [Mon, 21 Dec 2015 14:31:47 +0000 (06:31 -0800)] 
Cache crazy dlopen/dladdr library path gymnastics.

8 years agoForgot to include license header in libcycript.cy.
Jay Freeman (saurik) [Mon, 21 Dec 2015 14:28:40 +0000 (06:28 -0800)] 
Forgot to include license header in libcycript.cy.

8 years agoPrint the sort-of stack trace from JavaScriptCore.
Jay Freeman (saurik) [Mon, 21 Dec 2015 14:25:50 +0000 (06:25 -0800)] 
Print the sort-of stack trace from JavaScriptCore.

8 years agoSupport requiring simple modules installed by npm.
Jay Freeman (saurik) [Mon, 21 Dec 2015 14:14:20 +0000 (06:14 -0800)] 
Support requiring simple modules installed by npm.

8 years agoTransform ECMAScript 6 import as CommonJS require.
Jay Freeman (saurik) [Mon, 21 Dec 2015 09:47:16 +0000 (01:47 -0800)] 
Transform ECMAScript 6 import as CommonJS require.

8 years agoAllow extern "C" {} and limit semicolon insertion.
Jay Freeman (saurik) [Sun, 20 Dec 2015 12:21:23 +0000 (04:21 -0800)] 
Allow extern "C" {} and limit semicolon insertion.

8 years agoUse dladdr to improve toCYON of pointers/functors.
Jay Freeman (saurik) [Sun, 20 Dec 2015 11:57:15 +0000 (03:57 -0800)] 
Use dladdr to improve toCYON of pointers/functors.

8 years agoSupport cast and call of pointer-to-function type.
Jay Freeman (saurik) [Sun, 20 Dec 2015 11:33:36 +0000 (03:33 -0800)] 
Support cast and call of pointer-to-function type.

8 years agoFix quote when stringifying C/Objective-C strings.
Jay Freeman (saurik) [Sun, 20 Dec 2015 10:19:11 +0000 (02:19 -0800)] 
Fix quote when stringifying C/Objective-C strings.

8 years agoDo not allow loss of precision due to double cast.
Jay Freeman (saurik) [Sun, 20 Dec 2015 10:12:35 +0000 (02:12 -0800)] 
Do not allow loss of precision due to double cast.

8 years agoImplement toPointer for CString, Pointer, Functor.
Jay Freeman (saurik) [Sun, 20 Dec 2015 09:52:22 +0000 (01:52 -0800)] 
Implement toPointer for CString, Pointer, Functor.

8 years agoDisallow void values and support (void) arguments.
Jay Freeman (saurik) [Sat, 19 Dec 2015 15:34:19 +0000 (07:34 -0800)] 
Disallow void values and support (void) arguments.

8 years agoInclude type in toCYON for opaque Pointer address.
Jay Freeman (saurik) [Sat, 19 Dec 2015 14:29:16 +0000 (06:29 -0800)] 
Include type in toCYON for opaque Pointer address.

8 years agoMake char * extend String and cast well to void *.
Jay Freeman (saurik) [Sat, 19 Dec 2015 13:55:05 +0000 (05:55 -0800)] 
Make char * extend String and cast well to void *.

8 years agoPort Error.toCYON() to JS and write Date.toCYON().
Jay Freeman (saurik) [Sat, 19 Dec 2015 10:09:58 +0000 (02:09 -0800)] 
Port Error.toCYON() to JS and write Date.toCYON().

8 years agoTry to use std::streambuf instead of std::istream.
Jay Freeman (saurik) [Sat, 19 Dec 2015 09:43:37 +0000 (01:43 -0800)] 
Try to use std::streambuf instead of std::istream.

8 years agoMove uses of super/return stack next to Lex rules.
Jay Freeman (saurik) [Sat, 19 Dec 2015 09:20:33 +0000 (01:20 -0800)] 
Move uses of super/return stack next to Lex rules.

8 years agoCorrect even more bugs in no line terminator code.
Jay Freeman (saurik) [Sat, 19 Dec 2015 08:55:12 +0000 (00:55 -0800)] 
Correct even more bugs in no line terminator code.

8 years agoAdd __proto__ as token, only for syntax highlight.
Jay Freeman (saurik) [Sat, 19 Dec 2015 07:10:34 +0000 (23:10 -0800)] 
Add __proto__ as token, only for syntax highlight.

8 years agoFinally provide totally legit support for structs.
Jay Freeman (saurik) [Sat, 19 Dec 2015 05:57:13 +0000 (21:57 -0800)] 
Finally provide totally legit support for structs.

8 years agoImplement output of Objective-C class field lists.
Jay Freeman (saurik) [Sat, 19 Dec 2015 04:21:08 +0000 (20:21 -0800)] 
Implement output of Objective-C class field lists.

8 years agoMove TypedIdentifier assertions to separate rules.
Jay Freeman (saurik) [Sat, 19 Dec 2015 02:33:15 +0000 (18:33 -0800)] 
Move TypedIdentifier assertions to separate rules.

8 years agoAdd typedef-expressions syntax to replace @encode.
Jay Freeman (saurik) [Sat, 19 Dec 2015 02:23:20 +0000 (18:23 -0800)] 
Add typedef-expressions syntax to replace @encode.

8 years agoWe need to disallow newlines after extern/typedef.
Jay Freeman (saurik) [Sat, 19 Dec 2015 01:28:17 +0000 (17:28 -0800)] 
We need to disallow newlines after extern/typedef.

8 years agoRemove Cycript's auto keyword (even I don't care).
Jay Freeman (saurik) [Fri, 18 Dec 2015 14:11:56 +0000 (06:11 -0800)] 
Remove Cycript's auto keyword (even I don't care).

8 years agoThe inside of a template span protects us from in.
Jay Freeman (saurik) [Fri, 18 Dec 2015 14:10:37 +0000 (06:10 -0800)] 
The inside of a template span protects us from in.