ファイル

7.3 · 7.2 · 7.1 · 7.0 · 6.5

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

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

メンバー

ベース名

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

この File を生成するターゲットのラベル。None を返す場合があります。

パス

string File.path

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

root

root File.root

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

short_path

string File.short_path

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

tree_relative_path

string File.tree_relative_path

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