7
名前空間(またはフレームワーク名)を持つ文字列としてSwift型名を取得する方法はありますか?名前空間(またはフレームワーク名)を持つ文字列としてSwift型名を取得する方法
たとえば、Foo.framework
のクラスがBar
の場合、"Foo.Bar"
のような文字列を取得したいと考えています。
以下は、クラス名"Bar"
を返します。
let barName1 = String(Bar.self) // returns "Bar"
let barName2 = "\(Bar.self)" // returns "Bar"
let barName3 = "\(Bar().dynamicType)" // returns "Bar"
また、ネームスペースとしてフレームワーク名"Foo"
を取得したいと思います。
リリースノートも参照していただきありがとうございます。以前はモジュール名で型名が印刷されていたことを思い出しましたが、私の記憶が正しいかどうかは分かりませんでした。 String初期化子がデフォルトの動作を変更したことを教えてくれてありがとう。 –