Rich's Mad Rants
Powered by Squarespace

Entries in GitHub (2)


FMSSwizzler library added to GitHub

Hey all.

At the risk of repeating myself, I'll be speaking at the MacTech Conference next week in L.A. I'm actually doing two different presentations. One is on iCloud Document Syncing, the other on Metaprogramming in iOS. In my head, I'm king of thinking them as the "useful" talk and the "fun" talk.

As part of my prep, I've been putting together some examples. Here is another library of useful methods for Objective-C metaprogramming. Specifically, I have methods to simplify method- and class-swizzling. Also, unlike traditional Objective-C metaprogramming--I'm using the block-based API for dynamically adding methods to classes.

I've tried to address all the obvious gotchas (class clusters, KVO, nested dymanic subclasses, etc.), but--obviously--mucking around with classes at runtime will always be a bit dangerous. There are probably a few edge cases that I haven't though of. Take a look at the included documentation and the unit tests, if you have any questions. Most importantly, if you use the code in your own projects (not just when doing exploration coding or debugging), be sure to use it judiciously and test it ferociously.

You can find the repository at And, you can get more informaiton about MacTech Conf here.


FMSAlertManager added to GitHub

Ok, I've tried to create my first GitHub repository. I think I did something wrong, however. It lists the project as Javascript, not Objective-C. If you know how to fix this--or if you see anything else I screwed up--please let me know.

Still, this is an updated version of the block-based UIAlertView API I described in this post.

After using the code in my own projects, I made a number of small improvements. For example, it can now auto-close alert views when the app goes into the background, and you can get access to the alert view instance so you can programatically press buttons or dismiss it. I've also created Docset documentation.

Check it out here: