File

Laporkan masalah Lihat sumber Nightly · 7.4 .

Objek ini dibuat selama fase analisis untuk merepresentasikan file atau direktori yang akan dibaca atau ditulis selama fase eksekusi. Ini bukan tuas file yang terbuka, dan tidak dapat digunakan untuk langsung membaca atau menulis isi file. Sebaliknya, Anda menggunakannya untuk membuat grafik tindakan dalam fungsi implementasi aturan dengan meneruskannya ke fungsi yang membuat tindakan. Lihat halaman Aturan untuk mengetahui informasi selengkapnya.

Saat File diteruskan ke objek Args tanpa menggunakan fungsi map_each, File akan dikonversi menjadi string dengan mengambil nilai kolom path-nya.

Anggota

basename

string File.basename

Nama dasar file ini. Ini adalah nama file di dalam direktori.

dirname

string File.dirname

Nama direktori yang berisi file ini. Ini diambil dari path dan selalu relatif terhadap direktori eksekusi.

ekstensi

string File.extension

Ekstensi file untuk file ini, mengikuti (tidak termasuk) titik paling kanan. String kosong jika nama dasar file tidak menyertakan titik.

is_directory

bool File.is_directory

Menampilkan true jika ini adalah direktori.

is_source

bool File.is_source

Menampilkan true (benar) jika ini adalah file sumber, yaitu file tidak dihasilkan.

pemilik

Label File.owner

Label target yang menghasilkan File ini. Mungkin menampilkan None.

jalur

string File.path

Jalur eksekusi file ini, terkait dengan direktori eksekusi ruang kerja. Ini terdiri dari dua bagian, bagian pertama opsional yang disebut root (lihat juga modul root), dan bagian kedua yang merupakan short_path. Root mungkin kosong, yang biasanya untuk file yang tidak dibuat. Untuk file yang dihasilkan, biasanya berisi fragmen jalur khusus konfigurasi yang mengenkode hal-hal seperti arsitektur CPU target yang digunakan saat membangun file tersebut. Gunakan short_path untuk jalur tempat file dipetakan jika file berada di runfile biner.

root

root File.root

Root di bawah file ini berada.

short_path

string File.short_path

Jalur file ini relatif terhadap root-nya. Hal ini mengecualikan root yang disebutkan di atas, yaitu fragmen jalur khusus konfigurasi. Ini juga merupakan jalur tempat file dipetakan jika file berada di runfile biner.

tree_relative_path

string File.tree_relative_path

Jalur file ini relatif terhadap root hierarki ancestor, jika kolom is_directory ancestor bernilai benar. tree_relative_path hanya tersedia untuk file direktori yang diperluas dalam perintah tindakan, yaitu Args.add_all(). Untuk jenis file lainnya, mengakses kolom ini adalah error.