いろいろ調べて、NSObjectのクラス名を正確に文字列として取得するAppleScriptのXcode Projectです。
上のテキストフィールドにAppleScriptで各種Objectの生成を書いて「Exec」ボタンをクリックすると、それを実行して解釈プログラムに渡して下のテキストフィールドに表示します。
Script Debuggerのない世界が来ても大丈夫なように、いろいろ調査を行なっていますが、なくなると割とダメージが大きいのがCocoa Object(NSObject)のログ表示です。
# 個人的には、デバッグ機能は全部いらないので、結果表示とFramework呼び出しのあたりを実現したい
これまでにも何度か調査したことがあったのですが、Mac系開発者の知り合いに聞いてみたところ、Objective-C Runtime系のAPIを使えば取れるのでは? とのこと。
最終的には、エディタ的なものになるのかもしれませんが、とりあえず実行結果がNSObjectだったときに備えて、そのクラス名を正確に取得できるようにしてみました。
過去に、既知のクラスであればループでclassOfで調べてクラス名を取得するAppleScriptを書いたことはありましたが、未知のクラスだと手も足も出ませんでした。本プロジェクトでは、対応可能です。
–> Download runtime test_v2(Xcode Project)
クラス名はなんとか文字列として取得できていますが、値についてはまだNSObjectのdescriptionを取得しているだけです。本プロジェクトの叩き台はChatGPTに問い合わせて書いてみた(ただ、山のように修正する必要があった)ものなので、案外ヒントぐらいはChatGPTに聞いてみるといいのかもしれません。処理内容については、データを文字列で表現するというありきたりなものなので。