ออบเจ็กต์นี้สร้างขึ้นในช่วงการวิเคราะห์เพื่อแสดงไฟล์หรือไดเรกทอรีที่จะอ่านหรือเขียนในระหว่างขั้นตอนการดำเนินการ ไม่ใช่แฮนเดิลไฟล์ที่เปิดอยู่ และจะใช้เพื่ออ่านหรือเขียนเนื้อหาในไฟล์โดยตรงไม่ได้ แต่ใช้เพื่อสร้างกราฟการดำเนินการในฟังก์ชันการใช้งานกฎโดยการส่งผ่านไปยังฟังก์ชันการสร้างการดำเนินการ ดูข้อมูลเพิ่มเติมได้ที่หน้ากฎ
เมื่อมีการส่ง File
ไปยังออบเจ็กต์ Args
โดยไม่ได้ใช้ฟังก์ชัน map_each
ระบบจะแปลง File
เป็นสตริงโดยนำค่าของช่อง path
สมาชิก
basename
string File.basenameชื่อพื้นฐานของไฟล์นี้ นี่คือชื่อไฟล์ภายในไดเรกทอรี
ไดเรกทอรี
string File.dirnameชื่อของไดเรกทอรีที่มีไฟล์นี้ ซึ่งได้มาจาก path และสัมพันธ์กับไดเรกทอรีการดำเนินการเสมอ
ส่วนขยาย
string File.extensionนามสกุลของไฟล์นี้ ตามหลัง (ไม่รวม) จุดขวาสุด สตริงว่างหากชื่อฐานของไฟล์ไม่มีจุด
is_directory
bool File.is_directoryแสดงค่า "จริง" หากเป็นไดเรกทอรี
is_source
bool File.is_sourceแสดงค่า "จริง" หากเป็นไฟล์ต้นฉบับ กล่าวคือไม่ได้สร้างขึ้น
เจ้าของ
Label File.ownerป้ายกำกับของเป้าหมายที่สร้างไฟล์นี้ อาจแสดงผล
None
เส้นทาง
string File.pathเส้นทางการดำเนินการของไฟล์นี้ ซึ่งสัมพันธ์กับไดเรกทอรีการดำเนินการของพื้นที่ทำงาน ประกอบด้วย 2 ส่วน ส่วนแรกเป็นตัวเลือกที่เรียกว่า root (ดูโมดูล root ด้วย) และส่วนที่สองคือ
short_path
รูทอาจว่างเปล่า ซึ่งมักจะเป็นเช่นนั้นสำหรับไฟล์ที่ไม่ได้สร้างขึ้น สำหรับไฟล์ที่สร้างขึ้น โดยทั่วไปจะมีส่วนของเส้นทางเฉพาะการกำหนดค่าซึ่งเข้ารหัสข้อมูลต่างๆ เช่น สถาปัตยกรรม CPU เป้าหมายที่ใช้ขณะสร้างไฟล์ดังกล่าว ใช้ short_path
สำหรับเส้นทางที่แมปไฟล์ไว้หากไฟล์อยู่ในรันไฟล์ของไบนารี
รูท
root File.rootรูทที่เก็บไฟล์นี้
short_path
string File.short_pathเส้นทางของไฟล์นี้ซึ่งเกี่ยวข้องกับรูท ซึ่งจะยกเว้นรากที่กล่าวไว้ข้างต้น ซึ่งก็คือส่วนย่อยเฉพาะการกำหนดค่าของเส้นทาง เส้นทางนี้ยังเป็นเส้นทางที่ระบบแมปไฟล์ด้วยหากอยู่ในไฟล์รันไทม์ของไบนารี
tree_relative_path
string File.tree_relative_pathเส้นทางของไฟล์นี้ซึ่งเกี่ยวข้องกับรากของโครงสร้างระดับบน หากช่อง is_directory ระดับบนเป็นจริง
tree_relative_path
ใช้ได้กับไฟล์ที่ขยายของไดเรกทอรีในคำสั่งการดำเนินการเท่านั้น เช่น Args.add_all() สำหรับไฟล์ประเภทอื่นๆ การเข้าถึงช่องนี้จะทำให้เกิดข้อผิดพลาด