if-debuggable (マクロ)
パッケージ: CURL.LANGUAGE.COMPILER

シグネチャ

{if-debuggable debug-code [else code]}

デバッグ可能かどうかに基づく条件付コンパイルです。

説明

デバッグ可能なパッケージ内であれば、debug-code に展開し、そうでなければ code に展開します。 デバッグ可能かどうかは、マクロが展開されるパッケージの debuggable? 属性を見て規定されます。 このマクロは pcurl-file によって特別に操作されます。 debug? キーワードが false(既定)でpcurl-fileが呼び出される場合、これは pcurl ファイルを生成する前に code に展開されます。if-debuggable がテキスト フォーマット、テキスト プロシージャ、又はテキストをコンテンツとして扱うマクロ内で使用される場合、pcurl-file はこの最適化を行えないことに注意してください。

プログラミング注意事項

これは、.pcurl ファイルにするコードのサイズに影響を与えずに、テストやデバッグで使用するコードを含めるために使用されます。

{define-class MyClass
                
  {method public {do-something}:void
    || ...
    
    {if-debuggable
        {self.test-invariants}
    }
  }
  
  {if-debuggable
    || Test and debugging methods.
    {method public {test-invariants}:void
        || ...
    }
  }
}
導入: バージョン 6.0