ファイル

問題を報告する ソースを表示 ナイトリー · 7.4 .

このオブジェクトは、実行フェーズで読み取りまたは書き込みを行うファイルまたはディレクトリを表すために、分析フェーズで作成されます。オープン ファイル ハンドルではないため、ファイルの内容を直接読み書きするために使用することはできません。代わりに、アクション作成関数に渡して、ルール実装関数でアクション グラフを構築します。詳細については、ルール ページをご覧ください。

map_each 関数を使用せずに FileArgs オブジェクトに渡された場合、path フィールドの値が文字列に変換されます。

メンバー

basename

string File.basename

このファイルのベース名。これは、ディレクトリ内のファイルの名前です。

ディレクトリ名

string File.dirname

このファイルを含むディレクトリの名前。path から取得され、常に実行ディレクトリからの相対パスになります。

拡張機能

string File.extension

このファイルのファイル拡張子(右端のピリオド(.)は含まない)。ファイルのベース名にピリオドが含まれていない場合は空の文字列。

is_directory

bool File.is_directory

ディレクトリの場合は true を返します。

is_source

bool File.is_source

ソースファイル(生成されていないファイル)の場合は true を返します。

オーナー

Label File.owner

このファイルを生成するターゲットのラベル。 None が返されることがあります。

パス

string File.path

このファイルの実行パス(ワークスペースの実行ディレクトリを基準とする相対パス)。これは 2 つの部分からなります。1 つ目の部分は rootroot モジュールも参照)と、2 つ目の部分は short_path です。ルートは空でもかまいません。通常は、生成されていないファイル用です。生成されたファイルの場合、通常は設定固有のパスの一部が含まれ、そのファイルのビルドに使用されたターゲット CPU アーキテクチャなどをエンコードしています。ファイルがバイナリの実行ファイル内にある場合は、ファイルをマッピングするパスとして short_path を使用します。

root

root File.root

このファイルが存在するルート。

short_path

string File.short_path

このファイルのルートからの相対パス。これには、前述のルート(パスの構成固有のフラグメント)は含まれません。ファイルがバイナリの実行ファイル内にある場合は、ファイルがマッピングされるパスでもあります。

tree_relative_path

string File.tree_relative_path

祖先の is_directory フィールドが true の場合、祖先のツリーのルートを基準とするこのファイルのパス。tree_relative_path は、アクション コマンド(Args.add_all() など)でディレクトリの展開済みファイルにのみ使用できます。他のタイプのファイルの場合、このフィールドにアクセスするとエラーが発生します。