Skip to content

Instantly share code, notes, and snippets.

@mbaranowski
Created February 13, 2015 17:02
Show Gist options
  • Save mbaranowski/030564880018de9ade10 to your computer and use it in GitHub Desktop.
Save mbaranowski/030564880018de9ade10 to your computer and use it in GitHub Desktop.
Give every NSObject a typesafe dependency injection class method (injected)
//
// NSObject+injected.h
//
#import <Foundation/Foundation.h>
#import <JInjector.h>
@interface NSObject (injected) <JInjectable>
+(instancetype)injected;
@end
//
// NSObject+injected.m
//
#import "NSObject+injected.h"
@implementation NSObject (injected)
+(instancetype)injected {
return[[JInjector defaultInjector] objectForClass:[self class]];
}
@end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment