を、作ってみました。
試作段階なのでじっくり動作確認したわけではありませんが、何度か自分で使ってみた感じでは問題ありませんでした。
使い方
NSCoding プロトコルのメソッドを自動生成してみます。
雑ですが例としてこんなコードを用意しました。
MyObject.h
#import <Foundation/Foundation.h> @interface MyObject : NSObject @property (nonatomic, copy) NSString *name; @property (nonatomic, assign) NSInteger index; @property (nonatomic, assign, getter = isValid) BOOL valid; @property (nonatomic, strong) NSDate *createdDate; @end
MyObject.m
#import "MyObject.h" @implementation MyObject @end
対象のファイルを開いた状態で、Xcode の Edit > Auto Coding > Conform to... > NSCoding を選びます。
こんなシートが出てくるので、使いたくないプロパティがあればチェックを外してください。
Corresponding Variable は encode/decode に使用するキーで、自分の好きな値に変更できるようになっています。
親クラスが NSCoding プロトコルを採用している場合は下のチェックボックスにチェックを入れてください。
OKを押すとこんな感じのコードが生成されます。
また、オマケとして description メソッドを生成する機能もついてます。
注意
正規表現を使った恐ろしい構文解析によって動いているので、予想外の動作をする可能性があります。
必ず修復可能なファイル(バージョン管理下に置かれているものなど)でお使いください。
もちろん何があっても一切の責任は負いかねます。
※ダウンロードした AutoCoding.xcplugin を ~/Library/Application Support/Developer/Shared/Xcode/Plug-ins
に置いて Xcode を再起動してください