Macro


function()


それが現れる宣言の名前を生成します。


iOS 8.0+ iPadOS 8.0+ Mac Catalyst 13.0+ macOS 10.10+

tvOS 9.0+ visionOS 1.0+ watchOS 2.0+

@freestanding(expression)
macro function<T>() -> T where T : ExpressibleByStringLiteral




概観


関数の内部では、#function が生成する値はその関数の名前であり、メソッドの内部ではメソッドの名前であり、プロパティのゲッターまたはセッターの内部ではプロパティの名前であり、initsubscript などの特殊なメンバの内部ではキーワードの名前であり、ファイルの最上位レベルでは現在のモジュールの名前になります。


関数またはメソッドのパラメータのデフォルト値として使用される場合、このマクロの値は、呼び出し元でデフォルト値式が評価されたときに決定されます。例えば、以下のようになります。


  1. func logFunctionName(string: String = #function) {
  2. print(string)
  3. }
  4. func myFunction() {
  5. logFunctionName() // Prints "myFunction()".
  6. }




以下も見よ


ソースの位置情報の取得


macro file<T>() -> T

それが現れるファイルへのパスを生成します。


macro fileID<T>() -> T

マクロが現れるソースファイルの一意の識別子を生成します。


macro filePath<T>() -> T

マクロが現れるファイルへの完全なパスを生成します。


macro line<T>() -> T

それが現れる行番号を生成します。


macro column<T>() -> T

マクロが始まる列番号を生成します。















トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ