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

รายงานปัญหา ดูแหล่งที่มา รุ่น 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
ตัวบ่งชี้ runfiles ที่อธิบายไฟล์ที่เป้าหมายนี้ต้องใช้เมื่อเรียกใช้ (ผ่านคำสั่ง run หรือเป็นเครื่องมือที่ต้องพึ่งพา)
data_runfiles runfiles หรือ None ค่าเริ่มต้นคือ None

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

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

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

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

data_runfiles

runfiles DefaultInfo.data_runfiles

ตัวบ่งชี้ runfiles ที่อธิบายไฟล์ที่เป้าหมายนี้ต้องใช้เมื่อเรียกใช้ในเงื่อนไขที่เป็นแอตทริบิวต์ data dependency ในกรณีส่วนใหญ่ ให้ใช้พารามิเตอร์ 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 ทั้งหมด (แบบเรียกซ้ำ) เป็นสตริง int บูลีน 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) แทน