Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Objective-C Cocoa utility functions/methods I can't live without (mirrored from bitbucket.org)
Objective-C M C Ruby
tree: 0cc46aaf39

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
vendor/google-toolbox-for-mac
CollectionUtils.h
CollectionUtils.m
ConcurrentOperation.h
ConcurrentOperation.m
ExceptionUtils.h
ExceptionUtils.m
Logging.h
Logging.m
MYBlockUtils.h
MYBlockUtils.m
MYDynamicObject.h
MYDynamicObject.m
MYErrorUtils.h
MYErrorUtils.m
MYRegexUtils.h
MYRegexUtils.m
MYStreamUtils.h
MYStreamUtils.m
MYURLHandler.h
MYURLHandler.m
MYURLUtils.h
MYURLUtils.m
MYUtilities.xcconfig
MYUtilities_Debug.xcconfig
MYUtilities_Prefix.pch
MYUtilities_Release.xcconfig
README.md
Target.h
Target.m
Test.h
Test.m

README.md

MYUtilities

Objective-C utilities for Cocoa programming on Mac OS X and iPhone

by Jens Alfke jens@mooseyard.com

These are useful things I've built over the years and can't live without. This Git repo is basically a mirror of the original Mercurial repo at Bitbucket.org.

The core parts are:

CollectionUtils

A grab-bag of shortcuts for working with Foundation classes, mostly collections. If you've ever been envious of how simple it is to construct an array or hash in Ruby, Python or PHP, give these a try.

Logging

Everyone seems to build their own logging utility; this is mine. The main nice feature is that you can log different categories of messages, and individually enable/disable output for each category by setting user defaults or command-line arguments. There's also a separate Warn() function that you can set a breakpoint on, which is itself a lifesaver during development.

Test

My own somewhat oddball unit test system. I like being able to put unit tests in the same source file as the code they test. The tests run at launch time (if a command-line flag is set) not in a separate build phase. You can set dependencies between tests to get some control over the order in which they run. The output is IMHO easier to read than SenTest's.

Something went wrong with that request. Please try again.