ไฟล์

7.3 · 7.2 · 7.1 · 7.0 · 6.5

ออบเจ็กต์นี้จะสร้างขึ้นในระยะการวิเคราะห์เพื่อแสดงไฟล์หรือไดเรกทอรีที่จะอ่านหรือเขียนในระยะดำเนินการ ข้อมูลนี้ไม่ใช่แฮนเดิลไฟล์ที่เปิดอยู่ และไม่สามารถใช้เพื่ออ่านหรือเขียนเนื้อหาไฟล์โดยตรง แต่คุณจะใช้เพื่อสร้างกราฟการดำเนินการในฟังก์ชันการใช้งานกฎได้โดยการส่งต่อไปให้กับฟังก์ชันการสร้างการดำเนินการ ดูข้อมูลเพิ่มเติมได้ที่หน้ากฎ

เมื่อมีการส่ง File ไปยังออบเจ็กต์ Args โดยไม่ได้ใช้ฟังก์ชัน map_each ระบบจะแปลง File เป็นสตริงโดยนำค่าของช่อง path

สมาชิก

basename

string File.basename

ชื่อพื้นฐานของไฟล์นี้ นี่คือชื่อไฟล์ภายในไดเรกทอรี

dirname

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 ส่วน ส่วนแรกที่ไม่บังคับเรียกว่าราก (ดูโมดูลรากด้วย) และส่วนที่ 2 คือ short_path รูทอาจว่างเปล่า ซึ่งมักจะเป็นเช่นนั้นสำหรับไฟล์ที่ไม่ได้สร้างขึ้น สำหรับไฟล์ที่สร้างขึ้น โดยทั่วไปจะมีส่วนของเส้นทางเฉพาะการกำหนดค่าซึ่งเข้ารหัสข้อมูลต่างๆ เช่น สถาปัตยกรรม CPU เป้าหมายที่ใช้ขณะสร้างไฟล์ดังกล่าว ใช้ short_path สำหรับเส้นทางที่ระบบแมปไฟล์หากอยู่ในไฟล์รันไทม์ของไบนารี

รูท

root File.root

รูทที่เก็บไฟล์นี้

short_path

string File.short_path

เส้นทางของไฟล์นี้สัมพันธ์กับรูท โดยไม่รวม root ที่กล่าวถึงข้างต้น ซึ่งเป็นส่วนของเส้นทางที่เจาะจงการกําหนดค่า เส้นทางนี้ยังเป็นเส้นทางที่ระบบแมปไฟล์ด้วยหากอยู่ในไฟล์รันไทม์ของไบนารี

tree_relative_path

string File.tree_relative_path

เส้นทางของไฟล์นี้สัมพันธ์กับรูทของต้นไม้ของบรรพบุรุษ หากช่อง is_directory ของบรรพบุรุษเป็น "จริง" tree_relative_path ใช้ได้เฉพาะกับไฟล์แบบขยายของไดเรกทอรีในคำสั่งการดำเนินการ เช่น Args.add_all() สำหรับไฟล์ประเภทอื่นๆ การเข้าถึงช่องนี้จะเป็นข้อผิดพลาด