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