ข้อมูลเริ่มต้น

รายงานปัญหา ดูแหล่งที่มา รุ่น Nightly · 7.4

ผู้ให้บริการที่ให้ข้อมูลทั่วไปเกี่ยวกับไฟล์โดยตรงและไฟล์สื่อกลางของเป้าหมาย กฎทุกประเภทจะมีผู้ให้บริการนี้ แม้ว่าฟังก์ชันการใช้งานของกฎจะไม่แสดงผลอย่างชัดแจ้งก็ตาม อินสแตนซ์ DefaultInfo แต่ละรายการมีช่องต่อไปนี้

  • files
  • files_to_run
  • data_runfiles
  • default_runfiles
ดูคำแนะนำเพิ่มเติมเกี่ยวกับวิธีใช้ผู้ให้บริการรายนี้ได้ในหน้ากฎ

สมาชิก

DefaultInfo

DefaultInfo DefaultInfo(files=None, runfiles=None, data_runfiles=None, default_runfiles=None, executable=None)

ตัวสร้าง DefaultInfo

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
files depset หรือ None; ค่าเริ่มต้นคือ None
ออบเจ็กต์ depset จาก File ที่แสดงเอาต์พุตเริ่มต้นที่จะสร้างเมื่อมีการระบุเป้าหมายนี้ในบรรทัดคำสั่ง bazel โดยค่าเริ่มต้นจะเป็นเอาต์พุตที่ประกาศล่วงหน้าทั้งหมด
runfiles runfiles หรือ None ค่าเริ่มต้นคือ None
ซึ่งเป็นข้อบ่งชี้ Runfile ที่อธิบายไฟล์ที่เป้าหมายนี้ต้องการเมื่อเรียกใช้ (ผ่านคำสั่ง run หรือใช้เป็นทรัพยากร Dependency ของเครื่องมือ)
data_runfiles runfiles หรือ None ค่าเริ่มต้นคือ None

ขอแนะนำให้หลีกเลี่ยงการใช้พารามิเตอร์นี้ (ดู "ฟีเจอร์ Runfiles เพื่อหลีกเลี่ยง")

ตัวบ่งชี้การเรียกใช้ไฟล์ที่อธิบายการเรียกใช้ไฟล์ที่เป้าหมายนี้ต้องเรียกใช้เมื่อเป็นทรัพยากร Dependency ผ่านแอตทริบิวต์ data
default_runfiles runfiles หรือ None ค่าเริ่มต้นคือ None

ขอแนะนําให้คุณหลีกเลี่ยงการใช้พารามิเตอร์นี้ (ดู"ฟีเจอร์ runfiles ที่ต้องหลีกเลี่ยง")

รายละเอียด runfiles ที่อธิบาย runfiles เป้าหมายนี้จำเป็นต้องเรียกใช้เมื่อเป็น Dependency ผ่านแอตทริบิวต์อื่นที่ไม่ใช่แอตทริบิวต์ data
executable ไฟล์ หรือ None ค่าเริ่มต้นคือ None
หากกฎนี้มีการทำเครื่องหมายเป็น executable หรือ test แสดงว่าเป็นออบเจ็กต์ File ที่แสดงไฟล์ที่ควรเรียกใช้เพื่อเรียกใช้เป้าหมาย โดยค่าเริ่มต้น จะเป็นเอาต์พุตที่ประกาศล่วงหน้า ctx.outputs.executable

data_runfiles

runfiles DefaultInfo.data_runfiles

ตัวบ่งชี้การเรียกใช้ไฟล์ที่อธิบายไฟล์ที่เป้าหมายนี้ต้องใช้เมื่อเรียกใช้ในเงื่อนไขที่เป็นแอตทริบิวต์ทรัพยากร Dependency ของ data ในกรณีส่วนใหญ่ ให้ใช้พารามิเตอร์ default_runfiles แทน ดูรายละเอียดได้ที่"ฟีเจอร์ของ runfiles ที่ต้องหลีกเลี่ยง" อาจแสดงผล None

default_runfiles

runfiles DefaultInfo.default_runfiles

ตัวบ่งชี้ runfiles ที่อธิบายไฟล์ที่เป้าหมายนี้ต้องใช้เมื่อเรียกใช้ (ผ่านคำสั่ง run หรือเป็นเครื่องมือที่ต้องพึ่งพา) อาจส่งคืน None

ไฟล์

depset DefaultInfo.files

depset ของออบเจ็กต์ File ที่แสดงถึงเอาต์พุตเริ่มต้นที่จะสร้างเมื่อระบุเป้าหมายนี้ในบรรทัดคำสั่ง bazel โดยค่าเริ่มต้นจะเป็นเอาต์พุตที่ประกาศไว้ล่วงหน้าทั้งหมด อาจแสดงผล None

files_to_run

FilesToRunProvider DefaultInfo.files_to_run

ออบเจ็กต์ FilesToRunProvider ที่มีข้อมูลเกี่ยวกับไฟล์ปฏิบัติการและไฟล์เรียกใช้ของเป้าหมาย อาจส่งคืน None

to_json

string DefaultInfo.to_json()

เลิกใช้งาน API นี้เลิกใช้งานแล้วและจะถูกนำออกเร็วๆ นี้ โปรดอย่าพึ่งพา ปิดใช้กับ ---incompatible_struct_has_no_methods ใช้ Flag นี้เพื่อยืนยันว่าโค้ดของคุณเข้ากันได้กับการนําออกที่กําลังจะเกิดขึ้น
สร้างสตริง JSON จากพารามิเตอร์ Struct วิธีนี้ใช้งานได้เฉพาะเมื่อองค์ประกอบ Struct ทั้งหมด (เกิดซ้ำ) เป็นสตริง, ints, บูลีน, Struct อื่นๆ, รายการประเภทเหล่านี้ หรือพจนานุกรมที่มีคีย์สตริงและค่าในประเภทเหล่านี้ ระบบจะใช้อักขระหลีกกับเครื่องหมายคำพูดและบรรทัดใหม่ในสตริง ตัวอย่าง:
struct(key=123).to_json()
# {"key":123}

struct(key=True).to_json()
# {"key":true}

struct(key=[1, 2, 3]).to_json()
# {"key":[1,2,3]}

struct(key='text').to_json()
# {"key":"text"}

struct(key=struct(inner_key='text')).to_json()
# {"key":{"inner_key":"text"}}

struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_json()
# {"key":[{"inner_key":1},{"inner_key":2}]}

struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_json()
# {"key":{"inner_key":{"inner_inner_key":"text"}}}

เลิกใช้งานแล้ว: ให้ใช้ json.encode(x) หรือ json.encode_indent(x) แทน ซึ่งใช้ได้กับค่าอื่นๆ นอกเหนือจากโครงสร้างและไม่ทำให้เนมสเปซของช่องโครงสร้างรก

to_proto

string DefaultInfo.to_proto()

เลิกใช้งาน เลิกใช้งาน API นี้แล้ว และจะนำออกเร็วๆ นี้ โปรดอย่าพึ่งพา ปิดใช้กับ ---incompatible_struct_has_no_methods ใช้ Flag นี้เพื่อยืนยันว่าโค้ดของคุณเข้ากันได้กับการนําออกที่กําลังจะเกิดขึ้น
สร้าง SMS จากพารามิเตอร์ Struct วิธีการนี้จะใช้งานได้ก็ต่อเมื่อองค์ประกอบ Struct ทั้งหมด (แบบเรียกซ้ำ) เป็นสตริง, int, บูลีน, Struct หรือ Dict อื่นๆ หรือลิสต์ประเภทเหล่านี้ ระบบจะหลีกหนีเครื่องหมายคำพูดและบรรทัดใหม่ในสตริง คีย์โครงสร้างจะทำซ้ำตามลำดับที่จัดเรียง ตัวอย่าง:
struct(key=123).to_proto()
# key: 123

struct(key=True).to_proto()
# key: true

struct(key=[1, 2, 3]).to_proto()
# key: 1
# key: 2
# key: 3

struct(key='text').to_proto()
# key: "text"

struct(key=struct(inner_key='text')).to_proto()
# key {
#   inner_key: "text"
# }

struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_proto()
# key {
#   inner_key: 1
# }
# key {
#   inner_key: 2
# }

struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_proto()
# key {
#    inner_key {
#     inner_inner_key: "text"
#   }
# }

struct(foo={4: 3, 2: 1}).to_proto()
# foo: {
#   key: 4
#   value: 3
# }
# foo: {
#   key: 2
#   value: 1
# }

เลิกใช้งานแล้ว: ใช้ proto.encode_text(x) แทน