このオブジェクトは、実行フェーズで読み取りまたは書き込みを行うファイルまたはディレクトリを表すために、分析フェーズで作成されます。オープン ファイル ハンドルではないため、ファイルの内容を直接読み書きするために使用することはできません。代わりに、アクション作成関数に渡して、ルール実装関数でアクション グラフを構築します。詳しくは、ルールのページをご覧ください。
map_each
関数を使用せずに File
が Args
オブジェクトに渡されると、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この File を生成するターゲットのラベル。
None
が返されることがあります。
パス
string File.pathこのファイルの実行パス(ワークスペースの実行ディレクトリを基準とする相対パス)。2 つの部分で構成されます。オプションの最初の部分はルートと呼ばれます(root モジュールも参照)。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() など)でディレクトリの展開済みファイルにのみ使用できます。他のタイプのファイルの場合、このフィールドにアクセスするとエラーが発生します。