Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ericentin/objc-eval

Via gcc and xcode, compile simple objective-c code provided as an NSString at runtime, and execute it within the context of the same, running, program.
https://github.com/ericentin/objc-eval

Last synced: 2 months ago
JSON representation

Via gcc and xcode, compile simple objective-c code provided as an NSString at runtime, and execute it within the context of the same, running, program.

Awesome Lists containing this project

README

        

objc-eval
=========

objc-eval is ruby-like eval ("eval? what's that?!" read [this](http://blog.grayproductions.net/articles/eval_isnt_quite_pure_evil "eval() Isn't Quite Pure Evil")) for objective-c. Is it a good idea? I don't know. If you have to ask, it's probably not. It will, however, satisfy my (morbid) curiosity about whether or not it's possible. It carries along all the usual security concerns of any language's "eval." Make sure you trust the source of the code that is about to be compiled and executed with whatever privileges the program you used objc-eval in has.

Usage
=====
Add to your project as you would any framework. You can either asynchronously evaluate with a delegate, or synchronously evaluate. Did I mention how stupid this is yet?

Example
=======
`OEEvaluation *evaluation = [OEEvaluation evaluationWithCode:@"return @\"Hello World!\";" delegate:nil];
NSLog([evaluation evaluateSynchronously]);`