Anggota
- semua
- analysis_test_transition
- apa pun
- archive_override
- aspek
- bazel_dep
- pengikatan
- bool
- configuration_field
- depset
- dict
- dir
- mengenumerasi
- exec_group
- gagal
- float
- getattr
- git_override
- hasattr
- hash
- int
- len
- list
- local_path_override
- max
- mnt
- module
- module_extension
- multiple_version_override
- penyedia
- range
- register_execution_platforms()
- register_execution_platforms(dev_dependency)
- register_toolchains()
- register_toolchains(dev_dependency)
- repository_rule(implementation, attrs, local, environ, Configure, remotable, doc)
- repository_rule(implementation, attrs, local, environ, Configure, remotable, doc)
- repr
- dibalik
- aturan
- pilih
- single_version_override
- urut
- str
- tag_class
- tuple
- jenis
- use_extension
- use_repo
- visibilitas
- ruang kerja
- zip
semua
bool all(elements)
all(["hello", 3, True]) == True all([-1, 0, 1]) == False
Parameter
Parameter | Deskripsi |
---|---|
elements
|
wajib String atau kumpulan elemen. |
analysis_test_transition
transition analysis_test_transition(settings)
Membuat transisi konfigurasi untuk diterapkan pada dependensi aturan analisis-pengujian. Transisi ini hanya dapat diterapkan pada atribut aturan dengan analysis_test = True
. Kemampuan aturan tersebut dibatasi (misalnya, ukuran hierarki dependensinya terbatas), sehingga transisi yang dibuat menggunakan fungsi ini memiliki potensi cakupan yang terbatas jika dibandingkan dengan transisi yang dibuat menggunakan transisi.
Fungsi ini terutama dirancang untuk memfasilitasi library inti Framework Pengujian Analisis. Lihat dokumentasi (atau penerapannya) untuk mengetahui praktik terbaik.
Parameter
Parameter | Deskripsi |
---|---|
settings
|
wajib Kamus yang berisi informasi tentang setelan konfigurasi yang harus disetel oleh transisi konfigurasi ini. Kunci adalah label setelan build, dan nilai adalah nilai pasca-transisi baru. Semua setelan lainnya tidak berubah. Gunakan ini untuk mendeklarasikan setelan konfigurasi tertentu yang diperlukan untuk menetapkan pengujian analisis agar lulus. |
apa pun
bool any(elements)
any([-1, 0, 1]) == True any([False, 0, ""]) == False
Parameter
Parameter | Deskripsi |
---|---|
elements
|
wajib String atau kumpulan elemen. |
archive_override
None archive_override(module_name, urls, integrity='', strip_prefix='', patches=[], patch_cmds=[], patch_strip=0)
Parameter
Parameter | Deskripsi |
---|---|
module_name
|
wajib Nama dependensi modul Bazel tempat penggantian ini diterapkan. |
urls
|
string; or Iterable of strings ;
wajibURL arsip; dapat berupa URL http(s):// atau file://. |
integrity
|
default = '' Checksum file arsip yang diharapkan, dalam format Integritas Subresource. |
strip_prefix
|
default = '' Awalan direktori yang akan dihapus dari file yang diekstrak. |
patches
|
Iterable of strings ;
default = []Daftar label yang mengarah ke file patch yang akan diterapkan ke modul ini. File patch harus ada di hierarki sumber project tingkat atas. Aturan tersebut diterapkan dalam urutan daftar. |
patch_cmds
|
Iterable of strings ;
default = []Urutan perintah Bash yang akan diterapkan di Linux/Macos setelah patch diterapkan. |
patch_strip
|
default = 0 Sama seperti argumen --strip pada Unix patch. |
aspek
Aspect aspect(implementation, attr_aspects=[], attrs=None, required_providers=[], required_aspect_providers=[], provides=[], requires=[], fragments=[], host_fragments=[], toolchains=[], incompatible_use_toolchain_transition=False, doc='', *, apply_to_generating_rules=False, exec_compatible_with=[], exec_groups=None)
Parameter
Parameter | Deskripsi |
---|---|
implementation
|
wajib Fungsi Starlark yang menerapkan aspek ini, dengan tepat dua parameter: Target (target tempat aspek diterapkan) dan ctx (konteks aturan tempat target dibuat). Atribut target tersedia melalui kolom ctx.rule . Fungsi ini dievaluasi selama fase analisis untuk setiap penerapan aspek pada target.
|
attr_aspects
|
sequence of strings ;
default = []Daftar nama atribut. Aspek ini disebarkan bersama dependensi yang ditentukan dalam atribut target dengan nama-nama ini. Nilai umum di sini mencakup deps dan exports . Daftar ini juga dapat berisi satu string "*" untuk diterapkan di sepanjang semua dependensi target.
|
attrs
|
dict; or None ;
default = Tidak adaKamus yang mendeklarasikan semua atribut aspek. Atribut ini memetakan dari nama atribut ke objek atribut, seperti `attr.label` atau `attr.string` (lihat modul attr). Atribut aspek tersedia untuk fungsi penerapan sebagai kolom parameter ctx . Atribut implisit yang dimulai dengan Atribut eksplisit harus memiliki jenis |
required_providers
|
default = [] Atribut ini memungkinkan aspek membatasi penerapannya hanya ke target yang aturannya mengiklankan penyedia yang diperlukan. Nilainya harus berupa daftar yang berisi penyedia individual atau daftar penyedia, tetapi tidak keduanya. Misalnya, [[FooInfo], [BarInfo], [BazInfo, QuxInfo]] adalah nilai yang valid, sedangkan [FooInfo, BarInfo, [BazInfo, QuxInfo]] tidak valid.Daftar penyedia yang tidak bertingkat akan otomatis dikonversi ke daftar yang berisi satu daftar penyedia. Artinya, Agar beberapa target aturan (misalnya, |
required_aspect_providers
|
default = [] Atribut ini memungkinkan aspek ini memeriksa aspek lain. Nilainya harus berupa daftar yang berisi penyedia individual atau daftar penyedia, tetapi tidak keduanya. Misalnya, [[FooInfo], [BarInfo], [BazInfo, QuxInfo]] adalah nilai yang valid, sedangkan [FooInfo, BarInfo, [BazInfo, QuxInfo]] tidak valid.Daftar penyedia yang tidak bertingkat akan otomatis dikonversi ke daftar yang berisi satu daftar penyedia. Artinya, Untuk membuat aspek lain (misalnya, |
provides
|
default = [] Daftar penyedia yang harus ditampilkan oleh fungsi implementasi. Muncul error jika fungsi implementasi menghilangkan salah satu jenis penyedia yang tercantum di sini dari nilai yang ditampilkannya. Namun, fungsi implementasi mungkin menampilkan penyedia tambahan yang tidak tercantum di sini. Setiap elemen daftar adalah objek |
requires
|
sequence of Aspects ;
default = []Daftar aspek yang diperlukan untuk disebarkan sebelum aspek ini. |
fragments
|
sequence of strings ;
default = []Daftar nama fragmen konfigurasi yang diperlukan aspek dalam konfigurasi target. |
host_fragments
|
sequence of strings ;
default = []Daftar nama fragmen konfigurasi yang diperlukan aspek dalam konfigurasi host. |
toolchains
|
sequence ;
default = []Jika ditetapkan, set toolchain yang diperlukan aturan ini. Daftar dapat berisi objek String, Label, atau StarlarkToolchainTypeApi, dalam kombinasi apa pun. Toolchain akan ditemukan dengan memeriksa platform saat ini, dan diberikan ke penerapan aturan melalui ctx.toolchain .
|
incompatible_use_toolchain_transition
|
default = Salah Tidak digunakan lagi, tidak lagi digunakan dan harus dihapus. |
doc
|
default = '' Deskripsi aspek yang dapat diekstrak dengan alat penghasil dokumentasi. |
apply_to_generating_rules
|
default = Salah Jika benar, aspek akan, saat diterapkan ke file output, akan diterapkan ke aturan pembuatan file output. Misalnya, aspek menyebar secara transitif melalui atribut `deps` dan diterapkan ke `alpha` target. Misalkan `alpha` memiliki `deps = [':beta_output']`, dengan `beta_output` adalah output yang dideklarasikan dari `beta` target. Misalkan `beta` memiliki target `charlie` sebagai salah satu `deps`-nya. Jika `apply_to_generate_rules=True` untuk aspek, aspek tersebut akan menyebar ke seluruh `alpha`, `beta`, dan `charlie`. Jika False, aspek ini hanya akan disebarkan ke `alpha`. Salah secara default. |
exec_compatible_with
|
sequence of strings ;
default = []Daftar batasan pada platform eksekusi yang berlaku untuk semua instance aspek ini. |
exec_groups
|
dict; or None ;
default = Tidak adaDikte nama grup eksekusi (string) ke exec_group dtk. Jika ditetapkan, memungkinkan aspek untuk menjalankan tindakan pada beberapa platform eksekusi dalam satu instance. Lihat dokumentasi grup eksekusi untuk info selengkapnya.
|
bazel_dep
None bazel_dep(name, version='', max_compatibility_level=-1, repo_name='', dev_dependency=False)
Parameter
Parameter | Deskripsi |
---|---|
name
|
wajib Nama modul yang akan ditambahkan sebagai dependensi langsung. |
version
|
default = '' Versi modul yang akan ditambahkan sebagai dependensi langsung. |
max_compatibility_level
|
default = -1compatibility_level maksimum yang didukung untuk modul yang akan ditambahkan sebagai dependensi langsung. Versi modul menyiratkan kompatibilitas_level minimum yang didukung, serta level maksimum jika atribut ini tidak ditentukan.
|
repo_name
|
default = '' Nama repo eksternal yang mewakili dependensi ini. Ini secara default adalah nama modul. |
dev_dependency
|
default = Salah Jika true (benar), dependensi ini akan diabaikan jika modul saat ini bukan modul root atau `--ignore_dev_dependency` diaktifkan. |
pengikatan
None bind(name, actual=None)
Peringatan: penggunaan bind()
tidak direkomendasikan. Lihat Mempertimbangkan penghapusan ikatan untuk diskusi panjang tentang masalah dan alternatifnya.
Memberikan alias pada target dalam paket //external
.
Parameter
Parameter | Deskripsi |
---|---|
name
|
wajib Label di bagian '//eksternal' digunakan sebagai nama alias |
actual
|
string; or None ;
default = Tidak adaLabel sebenarnya yang akan diberi alias |
bool
bool bool(x=False)
False
jika objeknya adalah None
, False
, string kosong (""
), angka 0
, atau koleksi kosong (misalnya, ()
, []
). Jika tidak, True
akan ditampilkan.
Parameter
Parameter | Deskripsi |
---|---|
x
|
default = Salah Variabel yang akan dikonversi. |
configuration_field
LateBoundDefault configuration_field(fragment, name)
Contoh penggunaan:
Menentukan atribut aturan:
'_foo': attr.label(default=configuration_field(fragment='java', name='toolchain'))
Mengakses dalam penerapan aturan:
def _rule_impl(ctx): foo_info = ctx.attr._foo ...
Parameter
Parameter | Deskripsi |
---|---|
fragment
|
wajib Nama fragmen konfigurasi yang berisi nilai yang terikat akhir. |
name
|
wajib Nama nilai yang akan diperoleh dari fragmen konfigurasi. |
Depset
depset depset(direct=None, order="default", *, transitive=None)
direct
adalah daftar elemen langsung dari depset, dan parameter transitive
adalah daftar depset yang elemennya menjadi elemen tidak langsung dari depset yang dibuat. Urutan elemen yang ditampilkan saat depset dikonversi menjadi daftar ditentukan oleh parameter order
. Lihat Ringkasan DEX untuk mengetahui informasi selengkapnya.
Semua elemen (langsung dan tidak langsung) dari depset harus berjenis sama, seperti yang diperoleh dengan ekspresi type(x)
.
Karena set berbasis hash digunakan untuk menghilangkan duplikat selama iterasi, semua elemen depset harus dapat di-hash. Namun, invarian ini saat ini tidak diperiksa secara konsisten di semua konstruktor. Menggunakan tanda --incompatible_always_check_depset_element untuk memungkinkan pemeriksaan yang konsisten; ini akan menjadi perilaku default dalam rilis mendatang; lihat Masalah 10313.
Selain itu, elemen saat ini harus tidak dapat diubah, meskipun batasan ini akan dilonggarkan pada masa mendatang.
Urutan depset yang dibuat harus kompatibel dengan urutan depset transitive
-nya. Pesanan "default"
kompatibel dengan pesanan lainnya, semua pesanan lainnya hanya kompatibel dengan pesanan sendiri.
Catatan tentang kompatibilitas mundur/maju. Saat ini fungsi ini menerima parameter items
posisi. Fungsi ini tidak digunakan lagi dan akan dihapus di masa mendatang, dan setelah dihapus, direct
akan menjadi parameter posisi tunggal fungsi depset
. Dengan demikian, kedua panggilan berikut ini setara dan siap menghadapi masa depan:
depset(['a', 'b'], transitive = [...]) depset(direct = ['a', 'b'], transitive = [...])
Parameter
Parameter | Deskripsi |
---|---|
direct
|
sequence; or None ;
default = Tidak adaDaftar elemen langsung dari depset. |
order
|
default = "default" Strategi traversal untuk depset baru. Lihat di sini untuk nilai yang memungkinkan. |
transitive
|
sequence of depsets; or None ;
default = Tidak adaDaftar depset yang elemennya akan menjadi elemen tidak langsung dari depset. |
dik
dict dict(pairs=[], **kwargs)
Parameter
Parameter | Deskripsi |
---|---|
pairs
|
default = [] Dikte, atau iterable yang elemennya masing-masing memiliki panjang 2 (kunci, nilai). |
kwargs
|
wajib Kamus entri tambahan. |
dir
list dir(x)
Parameter
Parameter | Deskripsi |
---|---|
x
|
wajib Objek yang akan diperiksa. |
sebutkan
list enumerate(list, start=0)
enumerate([24, 21, 84]) == [(0, 24), (1, 21), (2, 84)]
Parameter
Parameter | Deskripsi |
---|---|
list
|
wajib urutan input teks. |
start
|
default = 0 mulai indeks. |
exec_group
exec_group exec_group(toolchains=[], exec_compatible_with=[], copy_from_rule=False)
Parameter
Parameter | Deskripsi |
---|---|
toolchains
|
sequence ;
default = []Set toolchain yang diperlukan grup eksekusi ini. Daftar dapat berisi objek String, Label, atau StarlarkToolchainTypeApi, dalam kombinasi apa pun. |
exec_compatible_with
|
sequence of strings ;
default = []Daftar batasan pada platform eksekusi. |
copy_from_rule
|
default = Salah Jika disetel ke benar (true), grup exec ini akan mewarisi toolchain dan batasan aturan tempat grup ini terpasang. Jika disetel ke string lain, error ini akan muncul. |
fail
None fail(msg=None, attr=None, *args)
Parameter
Parameter | Deskripsi |
---|---|
msg
|
default = Tidak ada Tidak digunakan lagi: sebagai gantinya gunakan argumen posisi. Argumen ini berfungsi seperti argumen posisi utama yang implisit. |
attr
|
string; or None ;
default = Tidak adaTidak digunakan lagi. Menyebabkan awalan opsional yang berisi string ini ditambahkan ke pesan error. |
args
|
wajib Daftar nilai, yang diformat dengan str dan digabungkan dengan spasi, yang muncul di pesan error. |
float
float float(x=unbound)
- Jika
x
sudah berupa float,float
akan menampilkannya tanpa perubahan. - Jika
x
adalah bool,float
akan menampilkan 1,0 untuk Benar dan 0,0 untuk Salah. - Jika
x
adalah int,float
akan menampilkan nilai floating point terbatas yang terdekat dengan x, atau error jika magnitudonya terlalu besar. - Jika
x
adalah string, nilai tersebut harus berupa literal floating point yang valid, atau sama (mengabaikan huruf besar/kecil) denganNaN
,Inf
, atauInfinity
, secara opsional didahului dengan tanda+
atau-
.
float()
menampilkan 0.0.
Parameter
Parameter | Deskripsi |
---|---|
x
|
default = tak terikat Nilai yang akan dikonversi. |
getattr
unknown getattr(x, name, default=unbound)
default
(jika ditentukan) atau menyebabkan error. getattr(x, "foobar")
setara dengan x.foobar
.getattr(ctx.attr, "myattr") getattr(ctx.attr, "myattr", "mydefault")
Parameter
Parameter | Deskripsi |
---|---|
x
|
wajib Struct yang atributnya diakses. |
name
|
wajib Nama atribut struct. |
default
|
default = tak terikat Nilai default yang akan ditampilkan jika struct tidak memiliki atribut dengan nama yang diberikan. |
git_override
None git_override(module_name, remote, commit='', patches=[], patch_cmds=[], patch_strip=0)
Parameter
Parameter | Deskripsi |
---|---|
module_name
|
wajib Nama dependensi modul Bazel tempat penggantian ini diterapkan. |
remote
|
wajib URL repositori Git jarak jauh. |
commit
|
default = '' Commit yang harus diperiksa. |
patches
|
Iterable of strings ;
default = []Daftar label yang mengarah ke file patch yang akan diterapkan ke modul ini. File patch harus ada di hierarki sumber project tingkat atas. Aturan tersebut diterapkan dalam urutan daftar. |
patch_cmds
|
Iterable of strings ;
default = []Urutan perintah Bash yang akan diterapkan di Linux/Macos setelah patch diterapkan. |
patch_strip
|
default = 0 Sama seperti argumen --strip pada Unix patch. |
hasattr
bool hasattr(x, name)
x
memiliki atribut atau metode dari name
yang diberikan, jika tidak, Salah. Contoh:hasattr(ctx.attr, "myattr")
Parameter
Parameter | Deskripsi |
---|---|
x
|
wajib Objek yang akan diperiksa. |
name
|
wajib Nama atribut. |
hash
int hash(value)
String.hashCode()
Java, yaitu: s[0] * (31^(n-1)) + s[1] * (31^(n-2)) + ... + s[n-1]
Parameter
Parameter | Deskripsi |
---|---|
value
|
wajib Nilai string yang akan di-hash. |
int
int int(x, base=unbound)
- Jika
x
sudah merupakan int,int
akan menampilkannya tanpa perubahan. - Jika
x
adalah bool,int
akan menampilkan 1 untuk Benar dan 0 untuk Salah. - Jika
x
berupa string, maka harus memiliki format<sign><prefix><digits>
.<sign>
adalah"+"
,"-"
, atau kosong (ditafsirkan sebagai positif).<digits>
adalah urutan digit dari 0 hinggabase
- 1, dengan huruf a-z (atau ekuivalen, A-Z) digunakan sebagai digit untuk 10-35. Jikabase
adalah 2/8/16,<prefix>
bersifat opsional dan dapat berupa 0b/0o/0x (atau ekuivalen, 0B/0O/0X); jikabase
adalah nilai lain selain basis ini atau nilai khusus 0, awalan harus kosong. Jikabase
adalah 0, string ditafsirkan sebagai literal bilangan bulat, dalam artian bahwa salah satu basis 2/8/10/16 dipilih bergantung pada awalan mana jika ada digunakan. Jikabase
adalah 0, tidak ada awalan yang digunakan, dan ada lebih dari satu digit, digit di awal tidak boleh 0; ini untuk menghindari kebingungan antara oktal dan desimal. Besarnya angka yang diwakili oleh string harus berada dalam rentang yang diizinkan untuk jenis int. - Jika
x
adalah float,int
akan menampilkan nilai bilangan bulat float, yang dibulatkan ke nol. Ini adalah kesalahan jika x tidak terbatas (NaN atau tak terhingga).
x
adalah jenis lain, atau jika nilai adalah string yang tidak memenuhi format di atas. Tidak seperti fungsi int
Python, fungsi ini tidak mengizinkan argumen nol, dan tidak mengizinkan spasi kosong yang tidak relevan untuk argumen string.Contoh:
int("123") == 123 int("-123") == -123 int("+123") == 123 int("FF", 16) == 255 int("0xFF", 16) == 255 int("10", 0) == 10 int("-0x10", 0) == -16 int("-0x10", 0) == -16 int("123.456") == 123
Parameter
Parameter | Deskripsi |
---|---|
x
|
wajib String yang akan dikonversi. |
base
|
default = tak terikat Basis yang digunakan untuk menafsirkan nilai string; defaultnya adalah 10. Harus antara 2 dan 36 (inklusif), atau 0 untuk mendeteksi dasar seolah-olah x adalah literal bilangan bulat. Parameter ini tidak boleh diberikan jika nilainya bukan string.
|
Len
int len(x)
Parameter
Parameter | Deskripsi |
---|---|
x
|
wajib Nilai yang durasinya dilaporkan. |
list
list list(x=[])
list([1, 2]) == [1, 2] list((2, 3, 2)) == [2, 3, 2] list({5: "a", 2: "b", 4: "c"}) == [5, 2, 4]
Parameter
Parameter | Deskripsi |
---|---|
x
|
default = [] Objek yang akan dikonversi. |
local_path_override
None local_path_override(module_name, path)
Parameter
Parameter | Deskripsi |
---|---|
module_name
|
wajib Nama dependensi modul Bazel tempat penggantian ini diterapkan. |
path
|
wajib Jalur ke direktori tempat modul ini berada. |
maks
unknown max(*args)
max(2, 5, 4) == 5 max([5, 6, 3]) == 6
Parameter
Parameter | Deskripsi |
---|---|
args
|
wajib Elemen yang akan diperiksa. |
mnt
unknown min(*args)
min(2, 5, 4) == 2 min([5, 6, 3]) == 3
Parameter
Parameter | Deskripsi |
---|---|
args
|
wajib Elemen yang akan diperiksa. |
modul
None module(name='', version='', compatibility_level=0, repo_name='', bazel_compatibility=[])
Fungsi ini harus dipanggil paling banyak sekali. Elemen ini hanya dapat dihilangkan jika modul ini merupakan modul root (misalnya, jika modul tersebut tidak akan bergantung pada modul lain).
Parameter
Parameter | Deskripsi |
---|---|
name
|
default = '' Nama modul. Hanya dapat dihilangkan jika modul ini merupakan modul root (misalnya, jika modul ini tidak akan bergantung pada modul lain). Nama modul yang valid harus: 1) hanya berisi huruf kecil (a-z), angka (0-9), titik (.), tanda hubung (-), dan garis bawah (_); 2) diawali dengan huruf kecil; 3) diakhiri dengan huruf kecil atau angka. |
version
|
default = '' Versi modul. Hanya dapat dihilangkan jika modul ini merupakan modul root (misalnya, jika modul ini tidak akan bergantung pada modul lain). |
compatibility_level
|
default = 0 Tingkat kompatibilitas modul; ini harus diubah setiap kali muncul perubahan besar yang tidak kompatibel. Pada dasarnya, ini adalah "versi utama" modul dalam hal SemVer, kecuali bahwa modul tersebut tidak disematkan dalam string versi itu sendiri, tetapi ada sebagai kolom terpisah. Modul dengan tingkat kompatibilitas yang berbeda berpartisipasi dalam resolusi versi seolah-olah merupakan modul dengan nama yang berbeda, tetapi grafik dependensi akhir tidak boleh berisi beberapa modul dengan nama yang sama, tetapi tingkat kompatibilitasnya berbeda (kecuali jika multiple_version_override berlaku; lihat detail selengkapnya).
|
repo_name
|
default = '' Nama repositori yang merepresentasikan modul ini, seperti yang terlihat oleh modul itu sendiri. Secara default, nama repo adalah nama modul. Nama ini dapat ditentukan untuk memudahkan migrasi project yang telah menggunakan nama repo untuk dirinya sendiri yang berbeda dengan nama modulnya. |
bazel_compatibility
|
Iterable of strings ;
default = []Daftar versi bazel yang memungkinkan pengguna menyatakan versi Bazel mana yang kompatibel dengan modul ini. Ini TIDAK memengaruhi resolusi dependensi, tetapi bzlmod akan menggunakan informasi ini untuk memeriksa apakah versi Bazel Anda saat ini kompatibel. Format nilai ini adalah string beberapa nilai batasan yang dipisahkan oleh koma. Tiga batasan yang didukung: <=X.X.X: Versi Bazel harus sama atau lebih lama dari X.X.X. Digunakan saat ada perubahan yang diketahui tidak kompatibel dalam versi yang lebih baru. >=X.X.X: Versi Bazel harus sama atau lebih baru dari X.X.X.Digunakan jika Anda bergantung pada beberapa fitur yang hanya tersedia sejak X.X.X. -X.X.X: Versi Bazel X.X.X tidak kompatibel. Digunakan saat ada bug di X.X.X yang mengganggu Anda, tetapi diperbaiki di versi yang lebih baru. |
module_extension
unknown module_extension(implementation, *, tag_classes={}, doc='')
Parameter
Parameter | Deskripsi |
---|---|
implementation
|
wajib Fungsi yang mengimplementasikan ekstensi modul ini. Harus mengambil satu parameter, module_ctx . Fungsi ini dipanggil sekali pada awal build untuk menentukan kumpulan repositori yang tersedia.
|
tag_classes
|
default = {} Kamus untuk mendeklarasikan semua class tag yang digunakan oleh ekstensi. Class ini memetakan dari nama class tag ke objek tag_class .
|
doc
|
default = '' Deskripsi ekstensi modul yang dapat diekstrak dengan alat pembuat dokumentasi. |
multiple_version_override
None multiple_version_override(module_name, versions, registry='')
Parameter
Parameter | Deskripsi |
---|---|
module_name
|
wajib Nama dependensi modul Bazel tempat penggantian ini diterapkan. |
versions
|
Iterable of strings ;
wajibSecara eksplisit menentukan versi yang diizinkan untuk berdampingan. Versi ini harus sudah ada di pra-pemilihan grafik dependensi. Dependensi pada modul ini akan "diupgrade" ke versi terdekat yang lebih tinggi yang diizinkan pada tingkat kompatibilitas yang sama, sedangkan dependensi yang memiliki versi lebih tinggi daripada versi yang diizinkan pada tingkat kompatibilitas yang sama akan menyebabkan error. |
registry
|
default = '' Mengganti registry untuk modul ini; Alih-alih menemukan modul ini dari daftar default registry, Anda harus menggunakan registry yang ditentukan. |
cetak
None print(sep=" ", *args)
args
sebagai output debug. Nama ini akan diawali dengan string "DEBUG"
dan lokasi (file dan nomor baris) panggilan ini. Cara persis argumen dikonversi ke string tidak ditentukan dan dapat berubah kapan saja. Secara khusus, pemformatan ini mungkin berbeda dengan (dan lebih mendetail dibandingkan) pemformatan yang dilakukan oleh str()
dan repr()
.Menggunakan print
dalam kode produksi tidak disarankan karena spam yang dibuat untuk pengguna. Untuk penghentian penggunaan, pilih error berat menggunakan fail()
jika memungkinkan.
Parameter
Parameter | Deskripsi |
---|---|
sep
|
default = " " " String pemisah antar-objek, defaultnya adalah spasi (" "). |
args
|
wajib Objek yang akan dicetak. |
provider
unknown provider(doc='', *, fields=None, init=None)
MyInfo = provider() ... def _my_library_impl(ctx): ... my_info = MyInfo(x = 2, y = 3) # my_info.x == 2 # my_info.y == 3 ...
Lihat Aturan (Penyedia) untuk mengetahui panduan komprehensif tentang cara menggunakan penyedia.
Menampilkan nilai callable Provider
jika init
tidak ditentukan.
Jika init
ditentukan, akan menampilkan tuple yang terdiri dari 2 elemen: nilai callable Provider
dan nilai callable konstruktor mentah. Lihat Aturan (Inisialisasi kustom untuk penyedia kustom) dan pembahasan parameter init
di bawah untuk mengetahui detailnya.
Parameter
Parameter | Deskripsi |
---|---|
doc
|
default = '' Deskripsi penyedia yang dapat diekstrak dengan alat penghasil dokumentasi. |
fields
|
sequence of strings; or dict; or None ;
default = Tidak adaJika ditentukan, akan membatasi kumpulan kolom yang diizinkan. Kemungkinan nilainya adalah:
|
init
|
callable; or None ;
default = Tidak adaCallback opsional untuk pra-pemrosesan dan memvalidasi nilai kolom penyedia selama pembuatan instance. Jika init ditentukan, provider() akan menampilkan tuple yang berisi 2 elemen: simbol penyedia normal dan konstruktor mentah.Berikut deskripsi tepatnya; lihat Aturan (Inisialisasi kustom penyedia) untuk mengetahui diskusi dan kasus penggunaan yang intuitif. Misalkan
init tidak diberikan, panggilan ke simbol P itu sendiri akan bertindak sebagai panggilan ke fungsi konstruktor default c ; dengan kata lain, P(*args, **kwargs) menampilkan c(*args, **kwargs) . Misalnya,MyInfo = provider() m = MyInfo(foo = 1) m adalah instance MyInfo dengan m.foo == 1 .Namun, jika
Catatan: langkah-langkah di atas menyiratkan bahwa error terjadi jika Dengan cara ini, callback Jika MyInfo, _new_myinfo = provider(init = ...) |
rentang
sequence range(start_or_stop, stop_or_none=None, step=1)
start
ke stop
, menggunakan penambahan step
. Jika satu argumen diberikan, item akan berkisar dari 0 hingga elemen tersebut.range(4) == [0, 1, 2, 3] range(3, 9, 2) == [3, 5, 7] range(3, 0, -1) == [3, 2, 1]
Parameter
Parameter | Deskripsi |
---|---|
start_or_stop
|
wajib Nilai elemen awal jika perhentian diberikan, jika tidak, nilai perhentian dan awal yang sebenarnya adalah 0 |
stop_or_none
|
int; or None ;
default = Tidak adaindeks opsional item pertama tidak untuk disertakan dalam daftar yang dihasilkan; pembuatan daftar akan berhenti sebelum stop tercapai.
|
step
|
default = 1 Penambahan (defaultnya adalah 1). Ini mungkin negatif. |
register_execution_platforms()
None register_execution_platforms(*platform_labels)
Parameter
Parameter | Deskripsi |
---|---|
platform_labels
|
sequence of strings ;
wajibLabel platform yang akan didaftarkan. |
register_execution_platforms(dev_dependency)
None register_execution_platforms(dev_dependency=False, *platform_labels)
@
atau //
). Lihat resolusi toolchain untuk informasi selengkapnya.
Parameter
Parameter | Deskripsi |
---|---|
dev_dependency
|
default = Salah Jika true (benar), platform eksekusi tidak akan didaftarkan jika modul saat ini bukan modul root atau `--ignore_dev_dependency` diaktifkan. |
platform_labels
|
sequence of strings ;
wajibLabel platform yang akan didaftarkan. |
register_toolchains()
None register_toolchains(*toolchain_labels)
Parameter
Parameter | Deskripsi |
---|---|
toolchain_labels
|
sequence of strings ;
wajibLabel toolchain yang akan didaftarkan. |
register_toolchains(dev_dependency)
None register_toolchains(dev_dependency=False, *toolchain_labels)
@
atau //
). Lihat resolusi toolchain untuk informasi selengkapnya.
Parameter
Parameter | Deskripsi |
---|---|
dev_dependency
|
default = Salah Jika true (benar), toolchain tidak akan didaftarkan jika modul saat ini bukan modul root atau `--ignore_dev_dependency` diaktifkan. |
toolchain_labels
|
sequence of strings ;
wajibLabel toolchain yang akan didaftarkan. |
repository_rule(implementasi, attrs, lokal, environ, konfigurasi, remotable, doc)
callable repository_rule(implementation, *, attrs=None, local=False, environ=[], configure=False, remotable=False, doc='')
Parameter
Parameter | Deskripsi |
---|---|
implementation
|
wajib fungsi yang mengimplementasikan aturan ini. Harus memiliki satu parameter, repository_ctx . Fungsi ini dipanggil selama fase pemuatan untuk setiap instance aturan.
|
attrs
|
dict; or None ;
default = Tidak adakamus untuk mendeklarasikan semua atribut aturan. Atribut ini memetakan dari nama atribut ke objek atribut (lihat modul attr). Atribut yang dimulai dengan _ bersifat pribadi, dan dapat digunakan untuk menambahkan dependensi implisit pada label ke file (aturan repositori tidak dapat bergantung pada artefak yang dihasilkan). Atribut name ditambahkan secara implisit dan tidak boleh ditentukan.
|
local
|
default = Salah Tunjukkan bahwa aturan ini mengambil semuanya dari sistem lokal dan harus dievaluasi ulang setiap kali pengambilan. |
environ
|
sequence of strings ;
default = []Menyediakan daftar variabel lingkungan yang diandalkan oleh aturan repositori ini. Jika variabel lingkungan dalam daftar tersebut berubah, repositori akan diambil kembali. |
configure
|
default = Salah Menunjukkan bahwa repositori memeriksa sistem untuk tujuan konfigurasi |
remotable
|
default = Salah Eksperimental. Parameter ini bersifat eksperimental dan dapat berubah kapan saja. Harap tidak bergantung padanya. Fitur ini dapat diaktifkan secara eksperimental dengan menyetel ---experimental_repo_remote_exec Kompatibel dengan eksekusi jarak jauh |
doc
|
default = '' Deskripsi aturan repositori yang dapat diekstrak dengan alat yang menghasilkan dokumentasi. |
repository_rule(implementasi, attrs, lokal, environ, konfigurasi, remotable, doc)
callable repository_rule(implementation, *, attrs=None, local=False, environ=[], configure=False, remotable=False, doc='')
Parameter
Parameter | Deskripsi |
---|---|
implementation
|
wajib fungsi yang mengimplementasikan aturan ini. Harus memiliki satu parameter, repository_ctx . Fungsi ini dipanggil selama fase pemuatan untuk setiap instance aturan.
|
attrs
|
dict; or None ;
default = Tidak adakamus untuk mendeklarasikan semua atribut aturan. Atribut ini memetakan dari nama atribut ke objek atribut (lihat modul attr). Atribut yang dimulai dengan _ bersifat pribadi, dan dapat digunakan untuk menambahkan dependensi implisit pada label ke file (aturan repositori tidak dapat bergantung pada artefak yang dihasilkan). Atribut name ditambahkan secara implisit dan tidak boleh ditentukan.
|
local
|
default = Salah Tunjukkan bahwa aturan ini mengambil semuanya dari sistem lokal dan harus dievaluasi ulang setiap kali pengambilan. |
environ
|
sequence of strings ;
default = []Menyediakan daftar variabel lingkungan yang diandalkan oleh aturan repositori ini. Jika variabel lingkungan dalam daftar tersebut berubah, repositori akan diambil kembali. |
configure
|
default = Salah Menunjukkan bahwa repositori memeriksa sistem untuk tujuan konfigurasi |
remotable
|
default = Salah Eksperimental. Parameter ini bersifat eksperimental dan dapat berubah kapan saja. Harap tidak bergantung padanya. Fitur ini dapat diaktifkan secara eksperimental dengan menyetel ---experimental_repo_remote_exec Kompatibel dengan eksekusi jarak jauh |
doc
|
default = '' Deskripsi aturan repositori yang dapat diekstrak dengan alat yang menghasilkan dokumentasi. |
repr
string repr(x)
repr("ab") == '"ab"'
Parameter
Parameter | Deskripsi |
---|---|
x
|
wajib Objek yang akan dikonversi. |
dibalik
list reversed(sequence)
reversed([3, 5, 4]) == [4, 5, 3]
Parameter
Parameter | Deskripsi |
---|---|
sequence
|
wajib Urutan iterable (misalnya, daftar) yang akan dibalik. |
aturan
callable rule(implementation, test=False, attrs=None, outputs=None, executable=False, output_to_genfiles=False, fragments=[], host_fragments=[], _skylark_testable=False, toolchains=[], incompatible_use_toolchain_transition=False, doc='', *, provides=[], exec_compatible_with=[], analysis_test=False, build_setting=None, cfg=None, exec_groups=None, compile_one_filetype=None, name=None)
Aturan harus ditetapkan ke variabel global dalam file .bzl; nama variabel global adalah nama aturan.
Aturan pengujian harus memiliki nama yang diakhiri dengan _test
, sedangkan semua aturan lainnya tidak boleh memiliki akhiran ini. (Pembatasan ini hanya berlaku untuk aturan, bukan targetnya.)
Parameter
Parameter | Deskripsi |
---|---|
implementation
|
wajib fungsi Starlark yang menerapkan aturan ini harus memiliki tepat satu parameter: ctx. Fungsi tersebut dipanggil selama fase analisis untuk setiap instance aturan. Dapat mengakses atribut yang disediakan oleh pengguna. Aplikasi harus membuat tindakan untuk menghasilkan semua output yang dideklarasikan. |
test
|
default = Salah Apakah aturan ini merupakan aturan pengujian, yaitu apakah aturan tersebut merupakan subjek perintah blaze test . Semua aturan pengujian secara otomatis dianggap dapat dijalankan; executable = True tidak perlu ditetapkan (dan tidak disarankan) untuk aturan pengujian secara eksplisit. Lihat halaman Aturan untuk mengetahui informasi selengkapnya.
|
attrs
|
dict; or None ;
default = Tidak adakamus untuk mendeklarasikan semua atribut aturan. Atribut ini memetakan dari nama atribut ke objek atribut (lihat modul attr). Atribut yang dimulai dengan _ bersifat pribadi, dan dapat digunakan untuk menambahkan dependensi implisit pada label. Atribut name ditambahkan secara implisit dan tidak boleh ditentukan. Atribut visibility , deprecation , tags , testonly , dan features ditambahkan secara implisit dan tidak dapat diganti. Sebagian besar aturan hanya memerlukan beberapa atribut. Untuk membatasi penggunaan memori, fungsi aturan akan menetapkan batas ukuran atribut.
|
outputs
|
dict; or None; or function ;
default = Tidak adaTidak digunakan lagi. Parameter ini tidak digunakan lagi dan akan segera dihapus. Harap tidak bergantung padanya. Layanan ini dinonaktifkan dengan ---incompatible_no_rule_outputs_param . Gunakan tanda ini untuk memverifikasi bahwa kode Anda kompatibel dengan penghapusan yang akan segera terjadi. Parameter ini tidak digunakan lagi. Migrasikan aturan untuk menggunakan OutputGroupInfo atau attr.output sebagai gantinya. Skema untuk menentukan output yang telah dideklarasikan. Tidak seperti atribut Nilai argumen ini adalah kamus atau fungsi callback yang menghasilkan kamus. Callback berfungsi mirip dengan atribut dependensi yang dihitung: Nama parameter fungsi dicocokkan dengan atribut aturan, jadi misalnya jika Anda meneruskan Tiap entri dalam kamus membuat output yang telah dideklarasikan sebelumnya, dengan kuncinya adalah ID dan nilainya adalah template string yang menentukan label output. Dalam fungsi penerapan aturan, ID menjadi nama kolom yang digunakan untuk mengakses
Dalam praktiknya, placeholder pengganti yang paling umum adalah |
executable
|
default = Salah Apakah aturan ini dianggap dapat dieksekusi, yaitu apakah aturan ini merupakan subjek perintah blaze run . Lihat halaman Aturan untuk mengetahui informasi selengkapnya.
|
output_to_genfiles
|
default = Salah Jika true (benar), file akan dibuat di direktori genfiles, bukan direktori bin. Jangan setel flag ini kecuali Anda memerlukannya untuk kompatibilitas dengan aturan yang ada (misalnya saat membuat file header untuk C++). |
fragments
|
sequence of strings ;
default = []Daftar nama fragmen konfigurasi yang diperlukan aturan dalam konfigurasi target. |
host_fragments
|
sequence of strings ;
default = []Daftar nama fragmen konfigurasi yang diperlukan aturan dalam konfigurasi host. |
_skylark_testable
|
default = Salah (Eksperimental) Jika true (benar), aturan ini akan menampilkan tindakannya untuk diperiksa oleh aturan yang bergantung padanya melalui penyedia Actions. Penyedia juga tersedia untuk aturan itu sendiri dengan memanggil ctx.created_actions(). Ini hanya boleh digunakan untuk menguji perilaku waktu analisis aturan Starlark. Tanda ini dapat dihapus pada masa mendatang. |
toolchains
|
sequence ;
default = []Jika ditetapkan, set toolchain yang diperlukan aturan ini. Daftar dapat berisi objek String, Label, atau StarlarkToolchainTypeApi, dalam kombinasi apa pun. Toolchain akan ditemukan dengan memeriksa platform saat ini, dan diberikan ke penerapan aturan melalui ctx.toolchain .
|
incompatible_use_toolchain_transition
|
default = Salah Tidak digunakan lagi, tidak lagi digunakan dan harus dihapus. |
doc
|
default = '' Deskripsi aturan yang dapat diekstrak dengan alat pembuat dokumentasi. |
provides
|
default = [] Daftar penyedia yang harus ditampilkan oleh fungsi implementasi. Muncul error jika fungsi implementasi menghilangkan salah satu jenis penyedia yang tercantum di sini dari nilai yang ditampilkannya. Namun, fungsi implementasi mungkin menampilkan penyedia tambahan yang tidak tercantum di sini. Setiap elemen daftar adalah objek |
exec_compatible_with
|
sequence of strings ;
default = []Daftar batasan pada platform eksekusi yang berlaku untuk semua target jenis aturan ini. |
analysis_test
|
default = Salah Jika true (benar), aturan ini diperlakukan sebagai pengujian analisis. Catatan: Aturan pengujian analisis terutama ditentukan menggunakan infrastruktur yang disediakan di library Starlark inti. Lihat Menguji untuk mendapatkan panduan. Jika sebuah aturan ditetapkan sebagai aturan pengujian analisis, aturan tersebut akan diizinkan untuk menggunakan transisi konfigurasi yang ditentukan menggunakan analysis_test_transition di atributnya, tetapi dapat menerapkan beberapa batasan berikut:
|
build_setting
|
BuildSetting; or None ;
default = Tidak adaJika ditetapkan, menjelaskan jenis build setting aturan ini. Lihat modul config . Jika disetel, atribut wajib bernama "build_setting_default" secara otomatis ditambahkan ke aturan ini, dengan jenis yang sesuai dengan nilai yang diteruskan di sini.
|
cfg
|
default = Tidak ada Jika ditetapkan, mengarah ke transisi konfigurasi yang akan diterapkan aturan ke konfigurasinya sendiri sebelum analisis. |
exec_groups
|
dict; or None ;
default = Tidak adaDikte nama grup eksekusi (string) ke exec_group dtk. Jika ditetapkan, mengizinkan aturan untuk menjalankan tindakan pada beberapa platform eksekusi dalam satu target. Lihat dokumentasi grup eksekusi untuk info selengkapnya.
|
compile_one_filetype
|
sequence of strings; or None ;
default = Tidak adaDigunakan oleh --compile_one_dependency: jika beberapa aturan menggunakan file yang ditentukan, apakah kita harus memilih aturan ini daripada aturan lainnya. |
name
|
string; or None ;
default = Tidak adaTidak digunakan lagi. Parameter ini tidak digunakan lagi dan akan segera dihapus. Harap tidak bergantung padanya. Layanan ini dinonaktifkan dengan --+incompatible_remove_rule_name_parameter . Gunakan tanda ini untuk memverifikasi bahwa kode Anda kompatibel dengan penghapusan yang akan segera terjadi. Tidak digunakan lagi: jangan digunakan. Nama aturan ini, seperti yang dipahami oleh Bazel dan dilaporkan dalam konteks seperti logging, Jika parameter ini dihilangkan, nama aturan ditetapkan ke nama variabel global Starlark pertama yang akan terikat dengan aturan ini dalam modul .bzl yang mendeklarasikan. Dengan demikian, Menentukan nama eksplisit untuk aturan tidak akan mengubah tempat Anda diizinkan untuk membuat instance aturan. |
pilih
unknown select(x, no_match_error='')
select()
adalah fungsi bantuan yang membuat atribut aturan dapat dikonfigurasi. Lihat membuat ensiklopedia untuk mengetahui detailnya.
Parameter
Parameter | Deskripsi |
---|---|
x
|
wajib Dikte yang memetakan kondisi konfigurasi ke nilai. Setiap kunci adalah Label atau string label yang mengidentifikasi instance config_setting atau constraint_value. Lihat dokumentasi tentang makro untuk mengetahui kapan harus menggunakan Label, bukan string. |
no_match_error
|
default = '' Error kustom opsional yang akan dilaporkan jika tidak ada kondisi yang cocok. |
single_version_override
None single_version_override(module_name, version='', registry='', patches=[], patch_cmds=[], patch_strip=0)
Parameter
Parameter | Deskripsi |
---|---|
module_name
|
wajib Nama dependensi modul Bazel tempat penggantian ini diterapkan. |
version
|
default = '' Mengganti versi yang dideklarasikan modul ini dalam grafik dependensi. Dengan kata lain, modul ini akan "disematkan" versi pengganti ini. Atribut ini dapat dihilangkan jika semua yang ingin diganti adalah registry atau patch. |
registry
|
default = '' Mengganti registry untuk modul ini; Alih-alih menemukan modul ini dari daftar default registry, Anda harus menggunakan registry yang ditentukan. |
patches
|
Iterable of strings ;
default = []Daftar label yang mengarah ke file patch yang akan diterapkan ke modul ini. File patch harus ada di hierarki sumber project tingkat atas. Aturan tersebut diterapkan dalam urutan daftar. |
patch_cmds
|
Iterable of strings ;
default = []Urutan perintah Bash yang akan diterapkan di Linux/Macos setelah patch diterapkan. |
patch_strip
|
default = 0 Sama seperti argumen --strip pada Unix patch. |
diurutkan
list sorted(iterable, *, key=None, reverse=False)
sorted([3, 5, 4]) == [3, 4, 5]
Parameter
Parameter | Deskripsi |
---|---|
iterable
|
wajib Urutan iterable untuk mengurutkan. |
key
|
default = Tidak ada Fungsi opsional yang diterapkan pada setiap elemen sebelum perbandingan. |
reverse
|
default = Salah Tampilkan hasil dalam urutan menurun. |
str
string str(x)
str("ab") == "ab" str(8) == "8"
Parameter
Parameter | Deskripsi |
---|---|
x
|
wajib Objek yang akan dikonversi. |
tag_class
tag_class tag_class(attrs={}, *, doc='')
Parameter
Parameter | Deskripsi |
---|---|
attrs
|
default = {} Kamus untuk mendeklarasikan semua atribut class tag ini. Atribut ini memetakan dari nama atribut ke objek atribut (lihat modul attr). |
doc
|
default = '' Deskripsi class tag yang dapat diekstrak dengan alat pembuat dokumentasi. |
tuple
tuple tuple(x=())
tuple([1, 2]) == (1, 2) tuple((2, 3, 2)) == (2, 3, 2) tuple({5: "a", 2: "b", 4: "c"}) == (5, 2, 4)
Parameter
Parameter | Deskripsi |
---|---|
x
|
default = () Objek yang akan dikonversi. |
jenis
string type(x)
type(2) == "int" type([1]) == "list" type(struct(a = 2)) == "struct"
if type(x) == type([]): # if x is a list
Parameter
Parameter | Deskripsi |
---|---|
x
|
wajib Objek untuk diperiksa jenisnya. |
use_extension
module_extension_proxy use_extension(extension_bzl_file, extension_name, *, dev_dependency=False)
Parameter
Parameter | Deskripsi |
---|---|
extension_bzl_file
|
wajib Label ke file Starlark yang menentukan ekstensi modul. |
extension_name
|
wajib Nama ekstensi modul yang akan digunakan. Simbol dengan nama ini harus diekspor oleh file Starlark. |
dev_dependency
|
default = Salah Jika true (benar), penggunaan ekstensi modul ini akan diabaikan jika modul saat ini bukan modul root atau `--ignore_dev_dependency` diaktifkan. |
use_repo
None use_repo(extension_proxy, *args, **kwargs)
Parameter
Parameter | Deskripsi |
---|---|
extension_proxy
|
wajib Objek proxy ekstensi modul yang ditampilkan oleh panggilan use_extension .
|
args
|
wajib Nama repositori yang akan diimpor. |
kwargs
|
wajib Menentukan repositori tertentu yang akan diimpor ke dalam cakupan modul saat ini dengan nama yang berbeda. Kunci harus berupa nama yang akan digunakan dalam cakupan saat ini, sedangkan nilai harus berupa nama asli yang diekspor oleh ekstensi modul. |
visibilitas
None visibility(value)
Menyetel visibilitas beban modul .bzl yang sedang diinisialisasi.
Visibilitas muatan modul mengatur apakah file BUILD dan .bzl lain dapat memuatnya atau tidak. (Hal ini berbeda dengan visibilitas target file sumber .bzl yang mendasarinya, yang mengatur apakah file tersebut muncul sebagai dependensi target lain.) Visibilitas beban berfungsi di level paket: Untuk memuat modul, file yang melakukan pemuatan harus berada di paket yang telah diberi visibilitas ke modul. Modul selalu dapat dimuat dalam paketnya sendiri, terlepas dari visibilitasnya.
visibility()
hanya dapat dipanggil sekali per file .bzl, dan hanya di level teratas, bukan di dalam fungsi. Gaya yang disukai adalah menempatkan panggilan ini tepat di bawah pernyataan load()
dan logika singkat yang diperlukan untuk menentukan argumen.
Jika tanda --check_bzl_visibility
ditetapkan ke salah (false), pelanggaran visibilitas pemuatan akan memberikan peringatan, tetapi tidak akan menggagalkan build.
Parameter
Parameter | Deskripsi |
---|---|
value
|
wajib Daftar string spesifikasi paket, atau string spesifikasi paket tunggal. Spesifikasi paket mengikuti format yang sama seperti
Huruf "@" {i>syntax<i} tidak diizinkan; semua spesifikasi diinterpretasikan relatif terhadap repositori modul saat ini. Jika Perhatikan bahwa flag |
ruang kerja
None workspace(name)
Fungsi ini hanya dapat digunakan dalam file WORKSPACE
dan harus dideklarasikan sebelum semua fungsi lain dalam file WORKSPACE
. Setiap file WORKSPACE
harus memiliki fungsi workspace
.
Menetapkan nama untuk ruang kerja ini. Nama ruang kerja harus berupa deskripsi project bergaya Java, menggunakan garis bawah sebagai pemisah, misalnya, github.com/bazelbuild/bazel harus menggunakan com_github_bazelbuild_bazel.
Nama ini digunakan untuk direktori tempat runfile repositori disimpan. Misalnya, jika ada foo/bar
runfile di repositori lokal dan file WORKSPACE berisi workspace(name = 'baz')
, runfile akan tersedia di bagian mytarget.runfiles/baz/foo/bar
. Jika nama ruang kerja tidak ditentukan, runfile akan di-symlink ke bar.runfiles/foo/bar
.
Nama aturan repositori jarak jauh harus berupa nama ruang kerja yang valid. Misalnya, Anda dapat memiliki maven_jar(name = 'foo')
, tetapi bukan maven_jar(name = 'foo%bar')
, karena Bazel akan mencoba menulis file WORKSPACE untuk maven_jar
yang berisi workspace(name = 'foo%bar')
.
Parameter
Parameter | Deskripsi |
---|---|
name
|
wajib nama ruang kerja. Nama harus diawali dengan huruf dan hanya berisi huruf, angka, garis bawah, tanda hubung, dan titik. |
zip
list zip(*args)
list
dari tuple
, dengan tuple ke-i berisi elemen ke-i dari setiap urutan argumen atau iterable. Daftar ini memiliki ukuran input terpendek. Dengan satu argumen iterable, fungsi ini menampilkan daftar 1-tuple. Tanpa argumen, kueri akan menampilkan daftar kosong. Contoh:zip() # == [] zip([1, 2]) # == [(1,), (2,)] zip([1, 2], [3, 4]) # == [(1, 3), (2, 4)] zip([1, 2], [3, 4, 5]) # == [(1, 3), (2, 4)]
Parameter
Parameter | Deskripsi |
---|---|
args
|
wajib ke file ZIP. |