Üyeler
- all
- analysis_test_transition
- herhangi biri
- archive_override
- aspect
- bazel_dep
- bind
- bool
- configuration_field
- depset
- dict
- dir
- enumerate
- exec_group
- fail
- float
- getattr
- git_override
- hasattr
- hash
- int
- len
- list
- local_path_override
- max
- dk.
- module
- module_extension
- multiple_version_override
- sağlayıcı
- aralık
- register_execution_platforms()
- register_execution_platforms(dev_dependency)
- register_toolchains()
- register_toolchains(dev_dependency)
- repository_rule
- repr
- reversed
- kural
- seç
- single_version_override
- sıralanmış
- str
- tag_class
- tuple
- type
- use_extension
- use_repo
- visibility
- workspace
- zip
tümü
bool all(elements)
all(["hello", 3, True]) == True all([-1, 0, 1]) == False
Parametreler
| Parametre | Açıklama |
|---|---|
elements
|
required Bir dize veya öğe koleksiyonu. |
analysis_test_transition
transition analysis_test_transition(settings)
Bir analiz testi kuralının bağımlılıklarına uygulanacak bir yapılandırma geçişi oluşturur. Bu geçiş yalnızca analysis_test = True içeren kuralların özelliklerine uygulanabilir. Bu tür kurallar özellikler açısından sınırlıdır (ör. bağımlılık ağacının boyutu sınırlıdır). Bu nedenle, bu işlev kullanılarak oluşturulan geçişler, transition kullanılarak oluşturulan geçişlere kıyasla potansiyel kapsam açısından sınırlıdır.
Bu işlev öncelikle Analysis Test Framework temel kitaplığını kolaylaştırmak için tasarlanmıştır. En iyi uygulamalar için dokümanlarını (veya uygulamasını) inceleyin.
Parametreler
| Parametre | Açıklama |
|---|---|
settings
|
required Bu yapılandırma geçişiyle ayarlanması gereken yapılandırma ayarlarıyla ilgili bilgileri içeren bir sözlük. Anahtarlar, derleme ayarı etiketleridir ve değerler, geçiş sonrası yeni değerlerdir. Diğer tüm ayarlar değiştirilmez. Bir analiz testinin geçmesi için ayarlanması gereken belirli yapılandırma ayarlarını bildirmek için bu özelliği kullanın. |
herhangi
bool any(elements)
any([-1, 0, 1]) == True any([False, 0, ""]) == False
Parametreler
| Parametre | Açıklama |
|---|---|
elements
|
required Bir dize veya öğe koleksiyonu. |
archive_override
None archive_override(module_name, urls, integrity='', strip_prefix='', patches=[], patch_cmds=[], patch_strip=0)
Parametreler
| Parametre | Açıklama |
|---|---|
module_name
|
gerekli Bu geçersiz kılmanın uygulanacağı Bazel modülü bağımlılığının adı. |
urls
|
string; or Iterable of strings;
zorunluArşivin URL'leri; http(s):// veya file:// URL'leri olabilir. |
integrity
|
default = "" Arşiv dosyasının, alt kaynak bütünlüğü biçimindeki beklenen sağlama toplamı. |
strip_prefix
|
default = '' Çıkarılan dosyalardan kaldırılacak bir dizin öneki. |
patches
|
Iterable of strings;
default = []Bu modüle uygulanacak yama dosyalarını gösteren etiketlerin listesi. Yama dosyaları, üst düzey projenin kaynak ağacında bulunmalıdır. Listelenen sırayla uygulanır. |
patch_cmds
|
Iterable of strings;
default = []Yama uygulandıktan sonra Linux/MacOS'te uygulanacak Bash komutlarının sırası. |
patch_strip
|
varsayılan = 0 Unix patch'in --strip bağımsız değişkeniyle aynıdır. |
ilişkili program
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)
Parametreler
| Parametre | Açıklama |
|---|---|
implementation
|
gerekli Bu yönü uygulayan bir Starlark işlevi. Tam olarak iki parametreye sahiptir: Target (yönün uygulandığı hedef) ve ctx (hedefin oluşturulduğu kural bağlamı). Hedefin özellikleri ctx.rule alanı üzerinden kullanılabilir. Bu işlev, bir yönün bir hedefe her uygulanması için analiz aşamasında değerlendirilir.
|
attr_aspects
|
sequence of strings;
default = []Özellik adlarının listesi. Yön, bu adlara sahip bir hedefin özelliklerinde belirtilen bağımlılıklar boyunca yayılır. Buradaki yaygın değerler arasında deps ve exports yer alır. Liste, bir hedefin tüm bağımlılıklarına yayılacak tek bir dize "*" da içerebilir.
|
attrs
|
dict; or None;
default = NoneYönün tüm özelliklerini bildiren bir sözlük. Özellik adından özellik nesnesine eşleme yapar (ör. `attr.label` veya `attr.string`) (attr modülüne bakın). Görünüm özellikleri, ctx parametresinin alanları olarak uygulama işlevinde kullanılabilir.
Açık özellikler |
required_providers
|
default = [] Bu özellik, yönün yayılımını yalnızca kuralları gerekli sağlayıcılarının reklamını yapan hedeflerle sınırlamasına olanak tanır. Değer, tek tek sağlayıcıları veya sağlayıcı listelerini içeren bir liste olmalı ancak ikisini birden içermemelidir. Örneğin, [[FooInfo], [BarInfo], [BazInfo, QuxInfo]] geçerli bir değerdir ancak [FooInfo, BarInfo, [BazInfo, QuxInfo]] geçerli değildir.İç içe yerleştirilmemiş sağlayıcı listesi, otomatik olarak bir sağlayıcı listesi içeren bir listeye dönüştürülür. Yani Bazı kuralların (ör. |
required_aspect_providers
|
default = [] Bu özellik, bu yönün diğer yönleri incelemesine olanak tanır. Değer, tek tek sağlayıcıları veya sağlayıcı listelerini içeren bir liste olmalı ancak ikisini birden içermemelidir. Örneğin, [[FooInfo], [BarInfo], [BazInfo, QuxInfo]] geçerli bir değerdir ancak [FooInfo, BarInfo, [BazInfo, QuxInfo]] geçerli değildir.İç içe yerleştirilmemiş sağlayıcı listesi, otomatik olarak bir sağlayıcı listesi içeren bir listeye dönüştürülür. Yani Başka bir yönü (ör. |
provides
|
default = [] Uygulama işlevinin döndürmesi gereken sağlayıcıların listesi. Uygulama işlevi, burada listelenen sağlayıcı türlerinden herhangi birini dönüş değerinden çıkarırsa hata oluşur. Ancak uygulama işlevi, burada listelenmeyen ek sağlayıcılar döndürebilir. Listenin her öğesi, |
requires
|
sequence of Aspects;
default = []Bu yönün yayılması için önceden yayılması gereken yönlerin listesi. |
fragments
|
sequence of strings;
default = []Aspect'in hedef yapılandırmada gerektirdiği yapılandırma parçalarının adlarının listesi. |
host_fragments
|
sequence of strings;
default = []List of names of configuration fragments that the aspect requires in host configuration. |
toolchains
|
sequence;
default = []Ayarlandığında, bu kuralın gerektirdiği araç zincirleri kümesi. Liste, herhangi bir kombinasyonda String, Label veya StarlarkToolchainTypeApi nesnelerini içerebilir. Araç zincirleri, mevcut platform kontrol edilerek bulunur ve ctx.toolchain aracılığıyla kural uygulamasına sağlanır.
|
incompatible_use_toolchain_transition
|
default = False Kullanımdan kaldırıldı. Artık kullanılmıyor ve kaldırılması gerekiyor. |
doc
|
default = '' Belge oluşturma araçları tarafından ayıklanabilen yönün açıklaması. |
apply_to_generating_rules
|
default = False Doğruysa yön, çıkış dosyasına uygulandığında çıkış dosyasının oluşturma kuralına uygulanır. Örneğin, bir yönün "deps" özelliği aracılığıyla geçişli olarak yayıldığını ve "alpha" hedefine uygulandığını varsayalım. "alpha"nın "deps = [':beta_output']" olduğunu varsayalım. Burada "beta_output", "beta" hedefinin bildirilmiş bir çıkışıdır. "beta"nın "deps"lerinden biri olarak "charlie" hedefi olduğunu varsayalım. Yön için "apply_to_generating_rules=True" ise yön, "alpha", "beta" ve "charlie" aracılığıyla yayılır. False ise yön yalnızca "alpha"ya yayılır. Varsayılan olarak yanlış değerini alır. |
exec_compatible_with
|
sequence of strings;
default = []Yürütme platformunda bu yönün tüm örnekleri için geçerli olan kısıtlamaların listesi. |
exec_groups
|
dict; or None;
default = NoneDict of execution group name (string) to exec_groups. Ayarlanırsa yönlerin tek bir örnek içinde birden fazla yürütme platformunda işlem yapmasına izin verir. Daha fazla bilgi için yürütme grupları dokümanlarını inceleyin.
|
bazel_dep
None bazel_dep(name, version='', max_compatibility_level=-1, repo_name='', dev_dependency=False)
Parametreler
| Parametre | Açıklama |
|---|---|
name
|
zorunlu Doğrudan bağımlılık olarak eklenecek modülün adı. |
version
|
default = '' Doğrudan bağımlılık olarak eklenecek modülün sürümü. |
max_compatibility_level
|
varsayılan = -1 Modülün doğrudan bağımlılık olarak eklenmesi için desteklenen maksimum compatibility_level. Modülün sürümü, desteklenen minimum compatibility_level'ı ve bu özellik belirtilmemişse maksimum compatibility_level'ı ifade eder.
|
repo_name
|
default = '' Bu bağımlılığı temsil eden harici deponun adı. Bu, varsayılan olarak modülün adıdır. |
dev_dependency
|
varsayılan = False Doğruysa mevcut modül kök modül değilse veya `--ignore_dev_dependency` etkinse bu bağımlılık yoksayılır. |
bind
None bind(name, actual=None)
Uyarı: bind() kullanılması önerilmez. Sorunları ve alternatifleri hakkında uzun bir tartışma için Bağlamayı kaldırmayı düşünün başlıklı makaleyi inceleyin.
//external paketinde bir hedefe takma ad verir.
Parametreler
| Parametre | Açıklama |
|---|---|
name
|
gerekli Takma ad olarak kullanılacak, "//external" altındaki etiket |
actual
|
string; or None;
default = NoneThe real label to be aliased |
bool
bool bool(x=False)
None, False, boş bir dize (""), 0 sayısı veya boş bir koleksiyon (ör. (), []) ise False değerini döndürür. Aksi takdirde True değerini döndürür.
Parametreler
| Parametre | Açıklama |
|---|---|
x
|
default = False Dönüştürülecek değişken. |
configuration_field
LateBoundDefault configuration_field(fragment, name)
Örnek kullanım:
Kural özelliği tanımlama:
'_foo': attr.label(default=configuration_field(fragment='java', name='toolchain'))
Kural uygulamasına erişme:
def _rule_impl(ctx):
foo_info = ctx.attr._foo
...Parametreler
| Parametre | Açıklama |
|---|---|
fragment
|
required Geç bağlanan değeri içeren bir yapılandırma parçasının adı. |
name
|
zorunlu Yapılandırma parçasından alınacak değerin adı. |
depset
depset depset(direct=None, order="default", *, transitive=None)
direct parametresi, depset'in doğrudan öğelerinin listesidir. transitive parametresi ise öğeleri oluşturulan depset'in dolaylı öğeleri haline gelen depset'lerin listesidir. Depsset bir listeye dönüştürüldüğünde öğelerin döndürülme sırası order parametresiyle belirtilir. Daha fazla bilgi için Depsets'e genel bakış bölümüne bakın.
Bir depset'in tüm öğeleri (doğrudan ve dolaylı), type(x) ifadesiyle elde edildiği gibi aynı türde olmalıdır.
Tekrarlama sırasında yinelenenleri ortadan kaldırmak için karma tabanlı bir küme kullanıldığından, bir depset'in tüm öğeleri karma oluşturulabilir olmalıdır. Ancak bu değişmez, şu anda tüm oluşturucularda tutarlı bir şekilde kontrol edilmemektedir. Tutarlı kontrolü etkinleştirmek için --incompatible_always_check_depset_elements işaretini kullanın. Bu, gelecekteki sürümlerde varsayılan davranış olacaktır. 10313 numaralı soruna bakın.
Ayrıca, öğeler şu anda değişmez olmalıdır. Ancak bu kısıtlama gelecekte gevşetilecektir.
Oluşturulan bağımlılık kümesinin sırası, transitive bağımlılık kümelerinin sırasıyla uyumlu olmalıdır. "default" sırası diğer sıralarla uyumludur, diğer tüm sıralar yalnızca kendi aralarında uyumludur.
Geriye/ileri dönük uyumlulukla ilgili not. Bu işlev şu anda konumsal bir items parametresini kabul etmektedir. Bu işlevin desteği sonlandırıldı ve gelecekte kaldırılacak. Kaldırıldıktan sonra direct, depset işlevinin tek konum parametresi olacak. Bu nedenle, aşağıdaki iki çağrı da eşdeğerdir ve gelecekte sorunsuz çalışır:
depset(['a', 'b'], transitive = [...]) depset(direct = ['a', 'b'], transitive = [...])
Parametreler
| Parametre | Açıklama |
|---|---|
direct
|
sequence; or None;
default = NoneBir depset'in doğrudan öğelerinin listesi. |
order
|
varsayılan = "varsayılan" Yeni depset için geçiş stratejisi. Olası değerler için buraya bakın. |
transitive
|
sequence of depsets; or None;
default = NoneÖğeleri depset'in dolaylı öğeleri haline gelecek olan depset'lerin listesi. |
dict
dict dict(pairs=[], **kwargs)
Parametreler
| Parametre | Açıklama |
|---|---|
pairs
|
default = [] Bir sözlük veya öğeleri her biri 2 uzunluğunda (anahtar, değer) olan bir yinelenebilir. |
kwargs
|
gerekli Ek girişlerin sözlüğü. |
dir
list dir(x)
Parametreler
| Parametre | Açıklama |
|---|---|
x
|
gerekli Kontrol edilecek nesne. |
numaralandırmak
list enumerate(list, start=0)
enumerate([24, 21, 84]) == [(0, 24), (1, 21), (2, 84)]
Parametreler
| Parametre | Açıklama |
|---|---|
list
|
gerekli giriş dizisi. |
start
|
default = 0 başlangıç dizini. |
exec_group
exec_group exec_group(toolchains=[], exec_compatible_with=[], copy_from_rule=False)
Parametreler
| Parametre | Açıklama |
|---|---|
toolchains
|
sequence;
default = []Bu yürütme grubunun gerektirdiği araç zincirleri kümesi. Liste, herhangi bir kombinasyonda String, Label veya StarlarkToolchainTypeApi nesnelerini içerebilir. |
exec_compatible_with
|
sequence of strings;
default = []Yürütme platformundaki kısıtlamaların listesi. |
copy_from_rule
|
default = False Doğru olarak ayarlanırsa bu yürütme grubu, eklendiği kuralın araç zincirlerini ve kısıtlamalarını devralır. Başka bir dizeye ayarlanırsa hata verilir. |
başarısız
None fail(msg=None, attr=None, *args)
Parametreler
| Parametre | Açıklama |
|---|---|
msg
|
varsayılan = Yok Kullanımdan kaldırıldı: Bunun yerine konumsal bağımsız değişkenleri kullanın. Bu bağımsız değişken, örtülü bir önde gelen konumsal bağımsız değişken gibi davranır. |
attr
|
string; or None;
default = NoneKullanımdan kaldırıldı. Bu dizeyi içeren isteğe bağlı bir önekin hata mesajına eklenmesine neden olur. |
args
|
zorunlu Hata mesajında görünen, debugPrint ile biçimlendirilmiş (varsayılan olarak str ile eşdeğerdir) ve boşluklarla birleştirilmiş değerler listesi. |
kayan noktalı
float float(x=unbound)
xzaten bir kayan nokta sayısıysafloat, bu sayıyı olduğu gibi döndürür.xbir boole değeri isefloat, True için 1,0 ve False için 0,0 değerini döndürür.xbir tamsafloat, x'e en yakın sonlu kayan nokta değerini veya büyüklük çok büyükse bir hata döndürür.xbir dizeyse geçerli bir kayan nokta değişmezi olmalı veya büyük/küçük harf duyarlılığı göz ardı edilerekNaN,Infya daInfinitydeğerine eşit olmalıdır. İsteğe bağlı olarak+veya-işaretiyle başlayabilir.
float() işlevi 0, 0 değerini döndürür.
Parametreler
| Parametre | Açıklama |
|---|---|
x
|
default = unbound Dönüştürülecek değer. |
getattr
unknown getattr(x, name, default=unbound)
default (belirtilmişse) döndürülür veya hata oluşturulur. getattr(x, "foobar"), x.foobar ile eş değerdir.getattr(ctx.attr, "myattr") getattr(ctx.attr, "myattr", "mydefault")
Parametreler
| Parametre | Açıklama |
|---|---|
x
|
required Özelliğine erişilen yapı. |
name
|
zorunlu Yapı özelliğinin adı. |
default
|
default = unbound Yapıda, verilen ada sahip bir özellik olmaması durumunda döndürülecek varsayılan değer. |
git_override
None git_override(module_name, remote, commit='', patches=[], patch_cmds=[], patch_strip=0)
Parametreler
| Parametre | Açıklama |
|---|---|
module_name
|
gerekli Bu geçersiz kılmanın uygulanacağı Bazel modülü bağımlılığının adı. |
remote
|
gerekli Uzak Git deposunun URL'si. |
commit
|
varsayılan = "" Ödeme yapılması gereken işlem. |
patches
|
Iterable of strings;
default = []Bu modüle uygulanacak yama dosyalarını gösteren etiketlerin listesi. Yama dosyaları, üst düzey projenin kaynak ağacında bulunmalıdır. Listelenen sırayla uygulanır. |
patch_cmds
|
Iterable of strings;
default = []Yama uygulandıktan sonra Linux/MacOS'te uygulanacak Bash komutlarının sırası. |
patch_strip
|
varsayılan = 0 Unix patch'in --strip bağımsız değişkeniyle aynıdır. |
hasattr
bool hasattr(x, name)
x nesnesi, verilen name özelliğine veya yöntemine sahipse True, aksi takdirde False değerini döndürür. Örnek:hasattr(ctx.attr, "myattr")
Parametreler
| Parametre | Açıklama |
|---|---|
x
|
gerekli Kontrol edilecek nesne. |
name
|
zorunlu Özelliğin adı. |
hash
int hash(value)
String.hashCode() ile aynı algoritma kullanılarak deterministik olarak hesaplanır. Bu algoritma şöyledir: s[0] * (31^(n-1)) + s[1] * (31^(n-2)) + ... + s[n-1]
Parametreler
| Parametre | Açıklama |
|---|---|
value
|
required Karma oluşturulacak dize değeri. |
int
int int(x, base=unbound)
xzaten bir tamsaintbunu değiştirmeden döndürür.xbir boole değeri iseint, True için 1, False için 0 değerini döndürür.xbir dizeyse<sign><prefix><digits>biçiminde olmalıdır.<sign>,"+","-"veya boş (pozitif olarak yorumlanır) olmalıdır.<digits>, 0'danbase- 1'e kadar olan bir basamak dizisidir. Burada a-z harfleri (veya eşdeğeri olan A-Z) 10-35 için basamak olarak kullanılır.base2/8/16 ise<prefix>isteğe bağlıdır ve sırasıyla 0b/0o/0x (veya eşdeğeri olarak 0B/0O/0X) olabilir.basebu tabanlar veya özel değer 0 dışında herhangi bir değerse önek boş olmalıdır.basedeğerinin 0 olduğu durumlarda, dize bir tam sayı değişmezi olarak yorumlanır. Bu durumda, hangi önekin kullanıldığına bağlı olarak 2/8/10/16 tabanlarından biri seçilir.base0 ise önek kullanılmaz ve birden fazla basamak varsa baştaki basamak 0 olamaz. Bunun nedeni, sekizlik ve ondalık sayılar arasındaki karışıklığı önlemektir. Dizeyle gösterilen sayının büyüklüğü, int türü için izin verilen aralıkta olmalıdır.xbir kayan nokta sayısıysaint, sıfıra doğru yuvarlayarak kayan nokta sayısının tam sayı değerini döndürür. X sonlu değilse (NaN veya sonsuz) hata döndürülür.
x başka bir türdeyse veya değer yukarıdaki biçimi karşılamayan bir dizeyse bu işlev başarısız olur. Python'daki int işlevinin aksine, bu işlev sıfır bağımsız değişkene ve dize bağımsız değişkenleri için gereksiz boşluklara izin vermez.Örnekler:
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
Parametreler
| Parametre | Açıklama |
|---|---|
x
|
zorunlu Dönüştürülecek dize. |
base
|
default = unbound Bir dize değerini yorumlamak için kullanılan taban; varsayılan olarak 10'dur. 2 ile 36 arasında (2 ve 36 dahil) veya 0 olmalıdır. 0 değeri, tabanı x tam sayı değişmezmiş gibi algılamak için kullanılır. Değer bir dize değilse bu parametre sağlanmamalıdır.
|
len
int len(x)
Parametreler
| Parametre | Açıklama |
|---|---|
x
|
gerekli Uzunluğu raporlanacak değer. |
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]Parametreler
| Parametre | Açıklama |
|---|---|
x
|
default = [] Dönüştürülecek nesne. |
local_path_override
None local_path_override(module_name, path)
Parametreler
| Parametre | Açıklama |
|---|---|
module_name
|
gerekli Bu geçersiz kılmanın uygulanacağı Bazel modülü bağımlılığının adı. |
path
|
required Bu modülün bulunduğu dizinin yolu. |
maks.
unknown max(*args)
max(2, 5, 4) == 5 max([5, 6, 3]) == 6
Parametreler
| Parametre | Açıklama |
|---|---|
args
|
required Kontrol edilecek öğeler. |
dk
unknown min(*args)
min(2, 5, 4) == 2 min([5, 6, 3]) == 3
Parametreler
| Parametre | Açıklama |
|---|---|
args
|
required Kontrol edilecek öğeler. |
modül
None module(name='', version='', compatibility_level=0, repo_name='', bazel_compatibility=[])
En fazla bir kez çağrılmalıdır. Bu modül yalnızca kök modülse (yani başka bir modül tarafından kullanılmayacaksa) atlanabilir.
Parametreler
| Parametre | Açıklama |
|---|---|
name
|
default = '' Modülün adı. Yalnızca bu modül kök modülse (yani başka bir modül tarafından kullanılmayacaksa) atlanabilir. Geçerli bir modül adı: 1) yalnızca küçük harf (a-z), rakam (0-9), nokta (.), kısa çizgi (-) ve alt çizgi (_) içermelidir; 2) küçük harfle başlamalıdır; 3) küçük harf veya rakamla bitmelidir. |
version
|
default = "" Modülün sürümü. Yalnızca bu modül kök modülse (yani başka bir modül tarafından kullanılmayacaksa) atlanabilir. |
compatibility_level
|
varsayılan = 0 Modülün uyumluluk düzeyi. Bu değer, uyumsuz büyük bir değişiklik yapıldığında her seferinde değiştirilmelidir. Bu, SemVer açısından modülün "ana sürümü"dür. Ancak sürüm dizesine yerleştirilmez ve ayrı bir alan olarak bulunur. Farklı uyumluluk düzeylerine sahip modüller, farklı adlara sahip modüller gibi sürüm çözümlemeye katılır. Ancak son bağımlılık grafiği, aynı ada ancak farklı uyumluluk düzeylerine sahip birden fazla modül içeremez ( multiple_version_override geçerli olmadığı sürece; daha fazla ayrıntı için buraya bakın).
|
repo_name
|
default = '' Bu modülü temsil eden deponun, modülün kendisi tarafından görünen adı. Varsayılan olarak, depodaki modülün adı kullanılır. Bu, modül adından farklı bir depo adı kullanan projelerin geçişini kolaylaştırmak için belirtilebilir. |
bazel_compatibility
|
Iterable of strings;
default = []Kullanıcıların, hangi Bazel sürümlerinin bu modülle uyumlu olduğunu bildirmesine olanak tanıyan Bazel sürümlerinin listesi. Bu bilgi, bağımlılık çözümlemesini ETKİLEMEZ ancak bzlmod, mevcut Bazel sürümünüzün uyumlu olup olmadığını kontrol etmek için bu bilgiyi kullanır. Bu değerin biçimi, virgülle ayrılmış bazı kısıtlama değerlerinden oluşan bir dizedir. Üç kısıtlama desteklenir: <=X.X.X: Bazel sürümü, X.X.X sürümüne eşit veya daha eski olmalıdır. Daha yeni bir sürümde bilinen bir uyumsuz değişiklik olduğunda kullanılır. >=X.X.X: Bazel sürümü, X.X.X sürümüne eşit veya daha yeni olmalıdır.Yalnızca X.X.X sürümünden itibaren kullanılabilen bazı özelliklere bağlı olduğunuzda kullanılır. -X.X.X: Bazel X.X.X sürümü uyumlu değildir. X.X.X sürümünde sizi etkileyen ancak sonraki sürümlerde düzeltilen bir hata olduğunda kullanılır. |
module_extension
unknown module_extension(implementation, *, tag_classes={}, doc='', environ=[], os_dependent=False, arch_dependent=False)Parametreler
| Parametre | Açıklama |
|---|---|
implementation
|
gerekli Bu modül uzantısını uygulayan işlev. Tek bir parametre ( module_ctx) almalıdır. Kullanılabilir depoların kümesini belirlemek için işlev, derlemenin başında bir kez çağrılır.
|
tag_classes
|
default = {} Uzantı tarafından kullanılan tüm etiket sınıflarını bildirmek için kullanılan sözlük. Etiket sınıfının adından bir tag_class nesnesine eşleme yapar.
|
doc
|
default = '' Belge oluşturma araçları tarafından çıkarılabilen modül uzantısının açıklaması. |
environ
|
sequence of strings;
default = []Bu modül uzantısının bağlı olduğu ortam değişkenlerinin listesini sağlar. Bu listedeki bir ortam değişkeni değişirse uzantı yeniden değerlendirilir. |
os_dependent
|
default = False Bu uzantının işletim sistemine bağlı olup olmadığını gösterir. |
arch_dependent
|
default = False Bu uzantının mimariye bağlı olup olmadığını gösterir. |
multiple_version_override
None multiple_version_override(module_name, versions, registry='')
Parametreler
| Parametre | Açıklama |
|---|---|
module_name
|
gerekli Bu geçersiz kılmanın uygulanacağı Bazel modülü bağımlılığının adı. |
versions
|
Iterable of strings;
requiredBirlikte bulunmasına izin verilen sürümleri açıkça belirtir. Bu sürümler, bağımlılık grafiği ön seçiminde zaten mevcut olmalıdır. Bu modüldeki bağımlılıklar, aynı uyumluluk düzeyinde izin verilen en yakın yüksek sürüme "yükseltilirken", aynı uyumluluk düzeyinde izin verilen sürümlerden daha yüksek bir sürüme sahip bağımlılıklar hataya neden olur. |
registry
|
default = "" Bu modül için kayıt defterini geçersiz kılar. Bu modül, varsayılan kayıt defteri listesinden bulunmak yerine belirtilen kayıt defteri kullanılmalıdır. |
yazdır
None print(sep=" ", *args)
args yazdırır. Bu çağrının konumu (dosya ve satır numarası) ve "DEBUG" dizesiyle başlar. Bağımsız değişkenlerin tam olarak nasıl dizelere dönüştürüldüğü belirtilmemiştir ve bu işlem herhangi bir zamanda değişebilir. Özellikle de str() ve repr() tarafından yapılan biçimlendirmeden farklı (ve daha ayrıntılı) olabilir.Üretim kodunda print kullanılması, kullanıcılar için oluşturduğu spam nedeniyle önerilmez. Kullanımdan kaldırma işlemleri için mümkün olduğunda fail() kullanarak kesin bir hata vermeyi tercih edin.
Parametreler
| Parametre | Açıklama |
|---|---|
sep
|
default = " " Nesneler arasındaki ayırıcı dize. Varsayılan olarak boşluk (" ") kullanılır. |
args
|
required Yazdırılacak nesneler. |
sağlayıcı
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
...Sağlayıcıları kullanmayla ilgili kapsamlı bir kılavuz için Kurallar (Sağlayıcılar) başlıklı makaleyi inceleyin.
init belirtilmemişse çağrılabilir bir Provider değeri döndürür.
init belirtilirse 2 öğeden oluşan bir demet döndürür: Provider çağrılabilir değeri ve raw constructor çağrılabilir değeri. Ayrıntılar için Kurallar (Özel sağlayıcıların özel olarak başlatılması) başlıklı makaleyi ve aşağıdaki init parametresiyle ilgili tartışmayı inceleyin.
Parametreler
| Parametre | Açıklama |
|---|---|
doc
|
default = '' Belge oluşturma araçları tarafından çıkarılabilen sağlayıcı açıklaması. |
fields
|
sequence of strings; or dict; or None;
varsayılan = YokBelirtilirse izin verilen alanlar kümesini kısıtlar. Olası değerler:
|
init
|
callable; or None;
default = NoneSağlayıcının alan değerlerini örnekleme sırasında önceden işlemek ve doğrulamak için isteğe bağlı geri çağırma. init belirtilirse provider(), 2 öğeli bir demet döndürür: normal sağlayıcı sembolü ve bir raw constructor.Ayrıntılı bir açıklama aşağıda verilmiştir. Sezgisel bir tartışma ve kullanım alanları için Kurallar (Sağlayıcıların özel olarak başlatılması) başlıklı makaleye bakın.
init geri çağırması verilmediği durumda, P sembolüne yapılan bir çağrı, varsayılan oluşturucu işlevi c'a yapılan bir çağrı gibi davranır. Başka bir deyişle, P(*args, **kwargs), c(*args, **kwargs) değerini döndürür. Örneğin,MyInfo = provider() m = MyInfo(foo = 1) m öğesinin m.foo == 1 ile birlikte bir MyInfo örneği olmasını doğrudan sağlar.Ancak
NB: Yukarıdaki adımlar, Bu şekilde,
MyInfo, _new_myinfo = provider(init = ...) |
aralık
sequence range(start_or_stop, stop_or_none=None, step=1)
step artışıyla start'dan stop'a gittiği bir liste oluşturur. Tek bir bağımsız değişken sağlanırsa öğeler 0 ile bu öğe arasında değişir.range(4) == [0, 1, 2, 3] range(3, 9, 2) == [3, 5, 7] range(3, 0, -1) == [3, 2, 1]
Parametreler
| Parametre | Açıklama |
|---|---|
start_or_stop
|
zorunlu Durdurma sağlanırsa başlangıç öğesinin değeri, aksi takdirde durdurma değeri ve gerçek başlangıç 0 olur |
stop_or_none
|
int; or None;
default = Noneoptional index of the first item not to be included in the resulting list; generation of the list stops before stop is reached.
|
step
|
varsayılan = 1 Artış (varsayılan değer 1'dir). Negatif olabilir. |
register_execution_platforms()
None register_execution_platforms(*platform_labels)
Parametreler
| Parametre | Açıklama |
|---|---|
platform_labels
|
sequence of strings;
requiredKaydedilecek platformların etiketleri. |
register_execution_platforms(dev_dependency)
None register_execution_platforms(dev_dependency=False, *platform_labels)
@ veya // ile başlamalıdır). Daha fazla bilgi için toolchain çözümü bölümüne bakın.
Parametreler
| Parametre | Açıklama |
|---|---|
dev_dependency
|
varsayılan = False Doğruysa mevcut modül kök modül değilse veya `--ignore_dev_dependency` etkinse yürütme platformları kaydedilmez. |
platform_labels
|
sequence of strings;
requiredKaydedilecek platformların etiketleri. |
register_toolchains()
None register_toolchains(*toolchain_labels)
Parametreler
| Parametre | Açıklama |
|---|---|
toolchain_labels
|
sequence of strings;
requiredKaydedilecek araç zincirlerinin etiketleri. |
register_toolchains(dev_dependency)
None register_toolchains(dev_dependency=False, *toolchain_labels)
@ veya // ile başlamalıdır). Daha fazla bilgi için toolchain çözümü bölümüne bakın.
Parametreler
| Parametre | Açıklama |
|---|---|
dev_dependency
|
varsayılan = False Doğruysa mevcut modül kök modül değilse veya `--ignore_dev_dependency` etkinse araç zincirleri kaydedilmez. |
toolchain_labels
|
sequence of strings;
requiredKaydedilecek araç zincirlerinin etiketleri. |
repository_rule
callable repository_rule(implementation, *, attrs=None, local=False, environ=[], configure=False, remotable=False, doc='')
Parametreler
| Parametre | Açıklama |
|---|---|
implementation
|
required the function that implements this rule. Tek bir parametre ( repository_ctx) içermelidir. İşlev, kuralın her örneği için yükleme aşamasında çağrılır.
|
attrs
|
dict; or None;
default = Nonedictionary to declare all the attributes of the rule. Bir özellik adından bir özellik nesnesine eşleme yapar (attr modülüne bakın). _ ile başlayan özellikler özeldir ve bir dosyaya etikete yönelik örtülü bir bağımlılık eklemek için kullanılabilir (bir depo kuralı, oluşturulan bir yapıya bağlı olamaz). name özelliği örtülü olarak eklenir ve belirtilmemelidir.
|
local
|
default = False Bu kuralın yerel sistemden her şeyi getirdiğini ve her getirme işleminde yeniden değerlendirilmesi gerektiğini belirtin. |
environ
|
sequence of strings;
default = []Bu depo kuralının bağlı olduğu ortam değişkenlerinin listesini sağlar. Bu listedeki bir ortam değişkeni değişirse depo yeniden getirilir. |
configure
|
varsayılan = False Deponun, yapılandırma amacıyla sistemi incelediğini belirtin. |
remotable
|
default = False Deneysel. Bu parametre deneyseldir ve herhangi bir zamanda değişebilir. Lütfen bu bilgileri kullanmayın. ---experimental_repo_remote_exec Uzaktan yürütmeyle uyumlu ayarını yaparak deneysel olarak etkinleştirilebilir. |
doc
|
default = '' Belge oluşturma araçları tarafından çıkarılabilen, depo kuralının açıklaması. |
repr
string repr(x)
repr("ab") == '"ab"'Parametreler
| Parametre | Açıklama |
|---|---|
x
|
required Dönüştürülecek nesne. |
tersine çevrilmiş
list reversed(sequence)
reversed([3, 5, 4]) == [4, 5, 3]
Parametreler
| Parametre | Açıklama |
|---|---|
sequence
|
required Ters çevrilecek yinelenebilir sıra (ör. liste). |
kural
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)
Kurallar, .bzl dosyasındaki global değişkenlere atanmalıdır. Global değişkenin adı, kuralın adıdır.
Test kurallarının adı _test ile bitmelidir. Diğer tüm kurallar bu soneki içermemelidir. (Bu kısıtlama yalnızca kurallar için geçerli olup hedefleri için geçerli değildir.)
Parametreler
| Parametre | Açıklama |
|---|---|
implementation
|
required Bu kuralı uygulayan Starlark işlevi tam olarak bir parametreye sahip olmalıdır: ctx. İşlev, kuralın her örneği için analiz aşamasında çağrılır. Kullanıcı tarafından sağlanan özelliklere erişebilir. Bildirilen tüm çıkışları oluşturmak için işlemler oluşturmalıdır. |
test
|
default = False Bu kuralın bir test kuralı olup olmadığı, yani blaze test komutuna tabi olup olamayacağı. Tüm test kuralları otomatik olarak yürütülebilir kabul edilir. Bir test kuralı için executable = True değerini açıkça ayarlamak gereksizdir (ve önerilmez). Daha fazla bilgi için Kurallar sayfası'na bakın.
|
attrs
|
dict; or None;
default = Nonedictionary to declare all the attributes of the rule. Bir özellik adından bir özellik nesnesine eşleme yapar (attr modülüne bakın). _ ile başlayan özellikler özeldir ve bir etikete örtülü bağımlılık eklemek için kullanılabilir. name özelliği örtülü olarak eklenir ve belirtilmemelidir. visibility, deprecation, tags, testonly ve features özellikleri örtülü olarak eklenir ve geçersiz kılınamaz. Çoğu kural için yalnızca birkaç özellik gerekir. Bellek kullanımını sınırlamak için kural işlevi, attrs boyutuna bir sınır uygular.
|
outputs
|
dict; or None; or function;
default = NoneKullanımdan kaldırıldı. Bu parametrenin desteği sonlandırıldı ve yakında kaldırılacak. Lütfen bu bilgileri kullanmayın. ---incompatible_no_rule_outputs_param ile devre dışı bırakılır. Kodunuzun, bu özelliğin yakında kaldırılmasıyla uyumlu olduğunu doğrulamak için bu işareti kullanın. Bu parametrenin desteği sonlandırılmıştır. Kuralları OutputGroupInfo veya attr.output kullanacak şekilde taşıyın. Önceden bildirilmiş çıkışları tanımlamak için kullanılan şema. Bu bağımsız değişkenin değeri bir sözlük veya sözlük oluşturan bir geri çağırma işlevidir. Geri çağırma, hesaplanmış bağımlılık özelliklerine benzer şekilde çalışır: İşlevin parametre adları, kuralın özellikleriyle eşleştirilir. Örneğin, Sözlükteki her giriş, anahtarın tanımlayıcı, değerin ise çıkışın etiketini belirleyen bir dize şablonu olduğu önceden bildirilmiş bir çıkış oluşturur. Kuralın uygulama işlevinde tanımlayıcı,
Uygulamada, en yaygın yer tutucu |
executable
|
default = False Bu kuralın yürütülebilir olup olmadığı, yani blaze run komutuna tabi olup olamayacağı. Daha fazla bilgi için Kurallar sayfası'na bakın.
|
output_to_genfiles
|
default = False True ise dosyalar bin dizini yerine genfiles dizininde oluşturulur. Mevcut kurallarla uyumluluk için (ör. C++ için başlık dosyaları oluştururken) gerekli olmadığı sürece bu işareti ayarlamayın. |
fragments
|
sequence of strings;
default = []Kuralın hedef yapılandırmada gerektirdiği yapılandırma parçalarının adlarının listesi. |
host_fragments
|
sequence of strings;
default = []Kuralın ana makine yapılandırmasında gerektirdiği yapılandırma parçalarının adlarının listesi. |
_skylark_testable
|
default = False (Deneysel) Doğruysa bu kural, Actions sağlayıcısı aracılığıyla kendisine bağlı olan kurallar tarafından incelenmek üzere işlemlerini kullanıma sunar. Sağlayıcı, ctx.created_actions() çağrılarak kuralın kendisi için de kullanılabilir. Bu, yalnızca Starlark kurallarının analiz zamanı davranışını test etmek için kullanılmalıdır. Bu işaret gelecekte kaldırılabilir. |
toolchains
|
sequence;
default = []Ayarlandığında, bu kuralın gerektirdiği araç zincirleri kümesi. Liste, herhangi bir kombinasyonda String, Label veya StarlarkToolchainTypeApi nesnelerini içerebilir. Araç zincirleri, mevcut platform kontrol edilerek bulunur ve ctx.toolchain aracılığıyla kural uygulamasına sağlanır.
|
incompatible_use_toolchain_transition
|
default = False Kullanımdan kaldırıldı. Artık kullanılmıyor ve kaldırılması gerekiyor. |
doc
|
default = '' Belge oluşturma araçları tarafından çıkarılabilen kuralın açıklaması. |
provides
|
default = [] Uygulama işlevinin döndürmesi gereken sağlayıcıların listesi. Uygulama işlevi, burada listelenen sağlayıcı türlerinden herhangi birini dönüş değerinden çıkarırsa hata oluşur. Ancak uygulama işlevi, burada listelenmeyen ek sağlayıcılar döndürebilir. Listenin her öğesi, |
exec_compatible_with
|
sequence of strings;
default = []Bu kural türünün tüm hedefleri için geçerli olan, yürütme platformundaki kısıtlamaların listesi. |
analysis_test
|
varsayılan = False true ise bu kural analiz testi olarak değerlendirilir. Not: Analiz testi kuralları öncelikli olarak temel Starlark kitaplıklarında sağlanan altyapı kullanılarak tanımlanır. Yardım için Test bölümüne bakın. Bir kural analiz testi kuralı olarak tanımlanırsa özelliklerinde analysis_test_transition kullanılarak tanımlanan yapılandırma geçişlerinin kullanılmasına izin verilir ancak bazı kısıtlamalar uygulanır:
|
build_setting
|
BuildSetting; or None;
default = NoneAyarlanırsa bu kuralın ne tür bir build setting olduğunu açıklar. config modülüne bakın. Bu ayar belirlenirse bu kurala, buraya iletilen değere karşılık gelen bir türle birlikte "build_setting_default" adlı zorunlu bir özellik otomatik olarak eklenir.
|
cfg
|
varsayılan = Yok Ayarlanırsa kuralın analizden önce kendi yapılandırmasına uygulayacağı yapılandırma geçişini gösterir. |
exec_groups
|
dict; or None;
default = NoneYürütme grubu adının (dize) exec_group sözlüğü. Ayarlanırsa kuralların tek bir hedef içinde birden fazla yürütme platformunda işlem yapmasına olanak tanır. Daha fazla bilgi için yürütme grupları dokümanlarını inceleyin.
|
compile_one_filetype
|
sequence of strings; or None;
default = NoneUsed by --compile_one_dependency: if multiple rules consume the specified file, should we choose this rule over others. |
name
|
string; or None;
default = NoneKullanımdan kaldırıldı. Bu parametrenin desteği sonlandırıldı ve yakında kaldırılacak. Lütfen bu bilgileri kullanmayın. --+incompatible_remove_rule_name_parameter ile devre dışı bırakılır. Kodunuzun, bu özelliğin yakında kaldırılmasıyla uyumlu olduğunu doğrulamak için bu işareti kullanın. Kullanımdan kaldırıldı: Kullanmayın. Bazel tarafından anlaşılan ve günlük kaydı, Bu parametre atlanırsa kuralın adı, bildiren .bzl modülünde bu kurala bağlanacak ilk Starlark genel değişkeninin adı olarak ayarlanır. Bu nedenle, ad Bir kural için açık bir ad belirtmek, kuralı oluşturmanıza izin verilen yeri değiştirmez. |
seç
unknown select(x, no_match_error='')
select(), bir kural özelliğini yapılandırılabilir hale getiren yardımcı işlevdir. Ayrıntılar için derleme ansiklopedisine bakın.
Parametreler
| Parametre | Açıklama |
|---|---|
x
|
gerekli Yapılandırma koşullarını değerlerle eşleyen bir sözlük. Her anahtar, bir config_setting veya constraint_value örneğini tanımlayan bir etiket ya da etiket dizesidir. Dize yerine ne zaman etiket kullanacağınız hakkında bilgi edinmek için makrolarla ilgili dokümanları inceleyin. |
no_match_error
|
varsayılan = "" Hiçbir koşul eşleşmezse bildirilecek isteğe bağlı özel hata. |
single_version_override
None single_version_override(module_name, version='', registry='', patches=[], patch_cmds=[], patch_strip=0)
Parametreler
| Parametre | Açıklama |
|---|---|
module_name
|
gerekli Bu geçersiz kılmanın uygulanacağı Bazel modülü bağımlılığının adı. |
version
|
default = '' Bu modülün bağımlılık grafiğinde belirtilen sürümünü geçersiz kılar. Yani bu modül, bu geçersiz kılma sürümüne "sabitlenir". Yalnızca kayıt otoritesi veya yamalar geçersiz kılınmak isteniyorsa bu özellik atlanabilir. |
registry
|
default = "" Bu modül için kayıt defterini geçersiz kılar. Bu modül, varsayılan kayıt defteri listesinden bulunmak yerine belirtilen kayıt defteri kullanılmalıdır. |
patches
|
Iterable of strings;
default = []Bu modüle uygulanacak yama dosyalarını gösteren etiketlerin listesi. Yama dosyaları, üst düzey projenin kaynak ağacında bulunmalıdır. Listelenen sırayla uygulanır. |
patch_cmds
|
Iterable of strings;
default = []Yama uygulandıktan sonra Linux/MacOS'te uygulanacak Bash komutlarının sırası. |
patch_strip
|
varsayılan = 0 Unix patch'in --strip bağımsız değişkeniyle aynıdır. |
sıralanmış
list sorted(iterable, *, key=None, reverse=False)
sorted([3, 5, 4]) == [3, 4, 5]
Parametreler
| Parametre | Açıklama |
|---|---|
iterable
|
gerekli Sıralanacak yinelenebilir dizi. |
key
|
varsayılan = Yok Karşılaştırmadan önce her öğeye uygulanan isteğe bağlı bir işlev. |
reverse
|
default = False Sonuçları azalan düzende döndürür. |
str
string str(x)
str("ab") == "ab"
str(8) == "8"Parametreler
| Parametre | Açıklama |
|---|---|
x
|
required Dönüştürülecek nesne. |
tag_class
tag_class tag_class(attrs={}, *, doc='')
Parametreler
| Parametre | Açıklama |
|---|---|
attrs
|
default = {} Bu etiket sınıfının tüm özelliklerini bildirmek için kullanılan sözlük. Bir özellik adından bir özellik nesnesine eşleme yapar (attr modülüne bakın). |
doc
|
varsayılan = "" Doküman oluşturma araçları tarafından ayıklanabilen etiket sınıfının açıklaması. |
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)Parametreler
| Parametre | Açıklama |
|---|---|
x
|
default = () Dönüştürülecek nesne. |
tür
string type(x)
type(2) == "int" type([1]) == "list" type(struct(a = 2)) == "struct"
if type(x) == type([]): # if x is a list
Parametreler
| Parametre | Açıklama |
|---|---|
x
|
required Türünün kontrol edileceği nesne. |
use_extension
module_extension_proxy use_extension(extension_bzl_file, extension_name, *, dev_dependency=False, isolate=False)
Parametreler
| Parametre | Açıklama |
|---|---|
extension_bzl_file
|
required Modül uzantısını tanımlayan Starlark dosyasının etiketi. |
extension_name
|
zorunlu Kullanılacak modül uzantısının adı. Bu ada sahip bir sembol, Starlark dosyası tarafından dışa aktarılmalıdır. |
dev_dependency
|
varsayılan = False Doğruysa mevcut modül kök modül değilse veya `--ignore_dev_dependency` etkinse modül uzantısının bu kullanımı yoksayılır. |
isolate
|
default = False Deneysel. Bu parametre deneyseldir ve herhangi bir zamanda değişebilir. Lütfen bu bilgileri kullanmayın. ---experimental_isolated_extension_usages olarak ayarlanarak deneysel olarak etkinleştirilebilir. Doğruysa modül uzantısının bu kullanımı, hem bu modüldeki hem de diğer modüllerdeki tüm diğer kullanımlardan izole edilir. Bu kullanım için oluşturulan etiketler diğer kullanımları etkilemez ve uzantı tarafından bu kullanım için oluşturulan depolar, uzantı tarafından oluşturulan diğer tüm depolardan farklıdır. Bu parametre şu anda deneyseldir ve yalnızca |
use_repo
None use_repo(extension_proxy, *args, **kwargs)
Parametreler
| Parametre | Açıklama |
|---|---|
extension_proxy
|
required Bir use_extension çağrısı tarafından döndürülen bir modül uzantısı proxy nesnesi.
|
args
|
gerekli İçe aktarılacak depoların adları. |
kwargs
|
gerekli Belirli depoların, farklı adlarla mevcut modülün kapsamına aktarılacağını belirtir. Anahtarlar, geçerli kapsamda kullanılacak ad olmalı, değerler ise modül uzantısı tarafından dışa aktarılan orijinal adlar olmalıdır. |
görünürlük
None visibility(value)
Şu anda başlatılmakta olan .bzl modülünün yükleme görünürlüğünü ayarlar.
Bir modülün yükleme görünürlüğü, diğer BUILD ve .bzl dosyalarının bu modülü yükleyip yükleyemeyeceğini belirler. (Bu, dosyanın diğer hedeflerin bağımlılığı olarak görünüp görünmeyeceğini belirleyen temel .bzl kaynak dosyasının hedef görünürlüğünden farklıdır.) Yükleme görünürlüğü, paket düzeyinde çalışır: Bir modülü yüklemek için yükleme işlemini yapan dosyanın, modüle görünürlük izni verilmiş bir pakette bulunması gerekir. Bir modül, görünürlüğünden bağımsız olarak her zaman kendi paketi içinde yüklenebilir.
visibility(), .bzl dosyası başına yalnızca bir kez ve yalnızca üst düzeyde (bir işlevin içinde değil) çağrılabilir. Tercih edilen stil, bu çağrıyı load() ifadelerinin ve bağımsız değişkeni belirlemek için gereken kısa mantığın hemen altına yerleştirmektir.
--check_bzl_visibility işareti yanlış (false) olarak ayarlanırsa yükleme görünürlüğü ihlalleri uyarı verir ancak derleme başarısız olmaz.
Parametreler
| Parametre | Açıklama |
|---|---|
value
|
gerekli Paket belirtimi dizelerinin listesi veya tek bir paket belirtimi dizesi. Paket özellikleri,
"@" söz dizimine izin verilmez. Tüm özellikler, mevcut modülün deposuna göre yorumlanır.
|
çalışma alanı
None workspace(name)
Bu işlev yalnızca bir WORKSPACE dosyasında kullanılabilir ve WORKSPACE dosyasındaki diğer tüm işlevlerden önce tanımlanmalıdır. Her WORKSPACE dosyasında bir workspace işlevi olmalıdır.
Bu çalışma alanının adını ayarlar. Çalışma alanı adları, ayırıcı olarak alt çizgiler kullanılarak projenin Java paketi tarzı bir açıklaması olmalıdır. Örneğin, github.com/bazelbuild/bazel için com_github_bazelbuild_bazel kullanılmalıdır.
Bu ad, depodaki çalıştırma dosyalarının depolandığı dizin için kullanılır. Örneğin, yerel depoda foo/bar adlı bir çalıştırma dosyası varsa ve WORKSPACE dosyasında workspace(name = 'baz') varsa çalıştırma dosyası mytarget.runfiles/baz/foo/bar altında kullanılabilir. Çalışma alanı adı belirtilmezse runfile, bar.runfiles/foo/bar ile sembolik olarak bağlanır.
Uzak depo kural adları, geçerli çalışma alanı adları olmalıdır. Örneğin, maven_jar(name = 'foo') olabilir ancak maven_jar(name = 'foo%bar') olamaz. Çünkü Bazel, workspace(name = 'foo%bar') içeren maven_jar için bir WORKSPACE dosyası yazmaya çalışır.
Parametreler
| Parametre | Açıklama |
|---|---|
name
|
gerekli Çalışma alanının adı. Adlar harfle başlamalıdır ve yalnızca harf, rakam, alt çizgi, kısa çizgi ve nokta içerebilir. |
zip
list zip(*args)
list dizisi döndürür. Buradaki i. demet, bağımsız değişken dizilerinin veya yinelenebilirlerin her birinden i. öğeyi içerir.tuple Liste, en kısa girişin boyutuna sahiptir. Tek bir yinelenebilir bağımsız değişkenle 1 öğeli demetlerin listesini döndürür. Bağımsız değişken olmadan boş bir liste döndürür. Örnekler: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)]
Parametreler
| Parametre | Açıklama |
|---|---|
args
|
gerekli listeleri ZIP olarak sıkıştırın. |