最終更新:2009-09-17 (木) 05:19:02 (5335d)
DescriptionBuilder
Top / DescriptionBuilder
http://github.com/kishikawakatsumi/DescriptionBuilder/tree/master
NSObject クラスの description メソッド?をオーバーライドしておくと、NSLog で出力できたりしてデバッグ時に便利です。
ただ、出力する項目が増えてくると、結構な手間になるので、リフレクションを使って自動ですべてのインスタンス変数?を出力できるようにしてみました。
例
このクラスを使うと、description メソッドは次のように書けます。
- (NSString *)description { return [DescriptionBuilder reflectDescription:self]; }
- サンプルのオブジェクト
@interface Settings : NSObject { NSUInteger version; BOOL autoLock; BOOL twentyFourHourTime; NSString *alarmSound; float alarmVolume; } @end
- 出力例
<Settings: 0xd188b0; version = 100; autoLock = NO; twentyFourHourTime = YES; alarmSound = "digital-alarm"; alarmVolume = 1.000000>