このオブジェクトは分析フェーズで作成され、実行フェーズで読み書きされるファイルまたはディレクトリを表します。これはオープン ファイル ハンドルではなく、ファイルの内容を直接読み書きするために使用することはできません。代わりに、アクション作成関数に渡してルール実装関数でアクション グラフを構築するために使用します。詳細については、ルール ページをご覧ください。
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())でディレクトリを展開したファイルでのみ使用できます。他のタイプのファイルの場合、このフィールドにアクセスするとエラーになります。