PromiseKit (素晴らしいフレームワーク、ところで!) を使用して、アプリとサーバー API 間の通信を処理しています。多くの約束のいずれかでネットワーク接続の欠如についてユーザーに通知するようなものに応答するために、ある種のグローバルハンドラーを作成したいと思います。
PMKPromise.h ファイルには、未処理のエラー ハンドラがリストされています。
/**
Called by PromiseKit in the event of unhandled errors.
The default handler NSLogs the error. Note, your handler is executed
from an undefined queue, unless you manage thread-safe data, dispatch to
a safe queue before doing anything else in your handler.
*/
extern void (^PMKUnhandledErrorHandler)(NSError *);
この型は PMKPromise.m ファイルに実装されますが、doc ブロックはこれが上書きされる可能性があることを暗示しています。私の質問は、この変数を正確に再定義するにはどうすればよいですか?
.m ファイルで使用されているのと同じ構文をコピーすると、リンカー エラーが発生します。
void(^PMKUnhandledErrorHandler)(id) = ^(NSError *error){
//...
};
==> duplicate symbol _PMKUnhandledErrorHandler