Üyeler
- all
- analysis_test_transition
- herhangi bir
- 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
- kurala
- seçme
- single_version_override
- sıralı
- str
- tag_class
- tuple
- type
- use_extension
- use_repo
- visibility
- workspace
- zip
tümü
bool all(elements)Tüm öğeler doğru olarak değerlendiriliyorsa veya koleksiyon boşsa doğru değerini döndürür. Öğeler, bool işlevi kullanılarak doğru/yanlış değerine dönüştürülür.
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-test 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ın özellikleri kısıtlıdır (örneğin, bağımlılık ağaçları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 ilgili dokümanları (veya uygulamayı) inceleyin.
Parametreler
Parametre | Açıklama |
---|---|
settings
|
required Bu yapılandırma geçişi tarafından ayarlanması gereken yapılandırma ayarları hakkında bilgi içeren bir sözlük. Anahtarlar, derleme ayarı etiketleridir ve değerler, geçiş sonrası yeni değerleridir. Diğer tüm ayarlar değişmez. Bir analiz testinin geçmesi için ayarlanması gereken belirli yapılandırma ayarlarını belirtmek amacıyla bunu kullanın. |
herhangi
bool any(elements)En az bir öğe doğru olarak değerlendirilirse doğru değerini döndürür. Öğeler, bool işlevi kullanılarak doğru/yanlış değerine dönüştürülür.
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)Bu bağımlılığın, kayıt otoritesinden değil, belirli bir konumdaki bir arşiv dosyasından (zip, gzip vb.) gelmesi gerektiğini belirtir. Bu yönerge yalnızca kök modülde geçerli olur. Diğer bir deyişle, bir modül başkaları tarafından bağımlılık olarak kullanılırsa kendi geçersiz kılma işlemleri yoksayılır.
Parametreler
Parametre | Açıklama |
---|---|
module_name
|
required Bu geçersiz kılma işleminin 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
|
varsayılan = "' Alt Kaynak Bütünlüğü biçiminde arşiv dosyasının beklenen sağlama toplamı. |
strip_prefix
|
varsayılan = '' Çıkarılan dosyalardan kaldırılacak bir dizin ön eki. |
patches
|
Iterable of strings ;
default = []Bu modüle uygulanacak yamalar dosyalarını işaret eden etiketlerin listesi. Yama dosyaları, üst düzey projenin kaynak ağacında bulunmalıdır. Bunlar liste sırasına göre uygulanır. |
patch_cmds
|
Iterable of strings ;
default = []Yamalar uygulandıktan sonra Linux/Macos'ta uygulanacak Bash komutları dizisi. |
patch_strip
|
varsayılan = 0 Unix yamasının --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)Yeni bir boyut oluşturur. Bu işlevin sonucu bir genel değerde depolanmalıdır. Daha fazla bilgi için lütfen yönlere giriş başlıklı makaleyi inceleyin.
Parametreler
Parametre | Açıklama |
---|---|
implementation
|
required Bu yönü uygulayan ve tam olarak iki parametre içeren bir Starlark işlevi: Hedef (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, analiz aşamasında bir özelliğin hedefe her uygulanması için 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ıklara göre yayılır. Buradaki yaygın değerler deps ve exports 'dur. Liste, bir hedefin tüm bağımlılıkları boyunca dağıtılacak tek bir dize "*" de içerebilir.
|
attrs
|
dict; or None ;
default = NoneBoyutun tüm özelliklerini açıklayan bir sözlük. Bir özellik adını "attr.label" veya "attr.string" gibi bir özellik nesnesine eşler (attr modülüne bakın). Yön özellik değerleri, uygulama işlevi tarafından ctx parametresinin alanları olarak kullanılabilir.
Açık atıf özellikleri |
required_providers
|
default = [] Bu özellik, özelliğin yayılmasını yalnızca kuralları gerekli sağlayıcılarının reklamını yapan hedeflerle sınırlandırmasına olanak tanır. Değer, tekil sağlayıcılar veya sağlayıcı listeleri içeren bir liste olmalıdır ancak ikisini birden içermemelidir. Örneğin, [[FooInfo], [BarInfo], [BazInfo, QuxInfo]] geçerli bir değerken [FooInfo, BarInfo, [BazInfo, QuxInfo]] geçerli değildir.İç içe yerleştirilmemiş bir sağlayıcı listesi, otomatik olarak tek 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, tekil sağlayıcılar veya sağlayıcı listeleri içeren bir liste olmalıdır ancak ikisini birden içermemelidir. Örneğin, [[FooInfo], [BarInfo], [BazInfo, QuxInfo]] geçerli bir değerken [FooInfo, BarInfo, [BazInfo, QuxInfo]] geçerli değildir.İç içe yerleştirilmemiş bir sağlayıcı listesi, otomatik olarak tek 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 özellikten önce dağıtılması gereken özelliklerin listesi. |
fragments
|
sequence of strings ;
default = []Yönelinin hedef yapılandırmada gerektirdiği yapılandırma parçalarının adları. |
host_fragments
|
sequence of strings ;
default = []Yönelinmenin ana makine yapılandırmasında gerektirdiği yapılandırma parçalarının adları. |
toolchains
|
sequence ;
default = []Ayarlanırsa bu kuralın gerektirdiği araç zinciri grubu. Liste, herhangi bir kombinasyonda String, Label veya StarlarkToolchainTypeApi nesneleri içerebilir. Araçlar zincirleri, mevcut platform kontrol edilerek bulunur ve ctx.toolchain aracılığıyla kural uygulamasına sağlanır.
|
incompatible_use_toolchain_transition
|
default = False Deprecated, this is no longer in use and should be removed. |
doc
|
default = '' Doküman oluşturma araçları tarafından ayıklanabilen yönün açıklaması. |
apply_to_generating_rules
|
varsayılan = Yanlış Doğru ise bir çıkış dosyasına uygulandığında, yön, çıkış dosyasının oluşturma kuralına uygulanır. Örneğin, bir özelliğin "deps" özelliği aracılığıyla aktarmalı olarak yayıldığını ve "alpha" hedefine uygulandığını varsayalım. "alpha"nın "deps = [':beta_output']" değerine sahip olduğunu varsayalım. Burada "beta_output", bir "beta" hedefinin tanımlanmış bir çıkışıdır. "beta"nın "deps" özelliklerinden biri olarak "charlie" hedefinin olduğunu varsayalım. Özellik için "apply_to_generating_rules=True" ise özellik "alpha", "beta" ve "charlie" aracılığıyla yayılır. Yanlış ise özellik yalnızca "alpha"ya yayılır. Varsayılan olarak yanlıştır. |
exec_compatible_with
|
sequence of strings ;
default = []Yürütme platformundaki, bu özelliğin tüm örnekleri için geçerli olan kısıtlamaların listesi. |
exec_groups
|
dict; or None ;
default = NoneYürütme grubu adının (dize) exec_group s ile dizini. Ayarlanırsa yönlerin tek bir örnek içinde birden fazla yürütme platformunda işlemler çalıştırmasına olanak tanır. Daha fazla bilgi için yürütme grupları belgelerine bakın.
|
bazel_dep
None bazel_dep(name, version='', max_compatibility_level=-1, repo_name='', dev_dependency=False)Başka bir Bazel modülüne doğrudan bağımlılık belirtir.
Parametreler
Parametre | Açıklama |
---|---|
name
|
required 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
|
default = -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 değerini ve bu özellik belirtilmemişse maksimum değeri belirtir.
|
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 ayrıntılı bilgi için bind işlevini kaldırmayı düşünün başlıklı makaleyi inceleyin.
Bir hedefe //external
paketinde takma ad verir.
Parametreler
Parametre | Açıklama |
---|---|
name
|
required "//external" altındaki etiket, takma ad olarak kullanılır. |
actual
|
string; or None ;
default = NoneTakma ad verilecek gerçek etiket |
bool
bool bool(x=False)bool türü için kurucu. Nesne
None
, False
, boş dize (""
), 0
sayısı veya boş bir koleksiyon (ör. ()
, []
) ise False
döndürür. Aksi takdirde True
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)Etiket türündeki bir özellik için geç bağlanmış varsayılan değeri referans alır. Bir değer, değeri belirlemeden önce yapılandırmanın oluşturulmasını gerektiriyorsa "geç bağlanma" özelliğine sahiptir. Bu değeri kullanan tüm özellikler özel olmalıdır.
Örnek kullanım:
Kural özelliğini tanımlama:
'_foo': attr.label(default=configuration_field(fragment='java', name='toolchain'))
Kural uygulama sırasında erişim:
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
|
required Yapılandırma parçasından alınacak değerin adı. |
depset
depset depset(direct=None, order="default", *, transitive=None)Bir depset oluşturur.
direct
parametresi, bağımlılık grubunun doğrudan öğelerinin bir listesi, transitive
parametresi ise öğeleri oluşturulan bağımlılık grubunun dolaylı öğeleri haline gelen bağımlılık gruplarının bir listesidir. Depset bir listeye dönüştürüldüğünde öğelerin döndürülme sırası order
parametresi tarafından belirtilir. Daha fazla bilgi için Depset'lere genel bakış başlıklı makaleyi inceleyin.
Bir depsetteki tüm öğeler (doğrudan ve dolaylı), type(x)
ifadesiyle elde edilen türde olmalıdır.
Yineleme sırasında yinelemeleri ortadan kaldırmak için karma oluşturmaya dayalı bir küme kullanıldığından, bir depset'in tüm öğeleri karma oluşturmaya uygun olmalıdır. Ancak bu değişmez özellik şu anda tüm kurucularda 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. Sayı 10313 sorununa bakın.
Ayrıca, öğeler şu anda değiştirilemez olmalıdır ancak bu kısıtlama gelecekte gevşetilecektir.
Oluşturulan depo grubunun sırası, transitive
depo gruplarının sırasıyla uyumlu olmalıdır. "default"
siparişi diğer tüm siparişlerle uyumludur. Diğer tüm siparişler yalnızca kendileriyle uyumludur.
Geriye dönük/ileri dönük uyumlulukla ilgili not. Bu işlev şu anda konumsal bir items
parametresini kabul etmektedir. Bu işlev için destek sonlandırılmış olup gelecekte kaldırılacaktır. Kaldırıldıktan sonra direct
, depset
işlevinin tek konumsal parametresi haline gelecektir. Bu nedenle, aşağıdaki çağrıların ikisi de eşdeğerdir ve gelecekte de geçerli olacaktır:
depset(['a', 'b'], transitive = [...]) depset(direct = ['a', 'b'], transitive = [...])
Parametreler
Parametre | Açıklama |
---|---|
direct
|
sequence; or None ;
default = NoneBir depsetin doğrudan öğelerinin listesi. |
order
|
default = "default" Yeni depset için tarama stratejisi. Olası değerler için buraya bakın. |
transitive
|
sequence of depsets; or None ;
default = NoneÖğeleri depsetin dolaylı öğeleri olacak depsetlerin listesi. |
dict
dict dict(pairs=[], **kwargs)İsteğe bağlı bir konumsal bağımsız değişkenden ve isteğe bağlı bir anahtar kelime bağımsız değişkeni grubundan bir sözlük oluşturur. Aynı anahtarın birden çok kez verildiği durumlarda son değer kullanılır. Anahtar kelime bağımsız değişkenleri aracılığıyla sağlanan girişlerin, konumsal bağımsız değişken aracılığıyla sağlanan girişlerden sonra geldiği kabul edilir.
Parametreler
Parametre | Açıklama |
---|---|
pairs
|
default = [] Bir sözlük veya öğelerinin her biri 2 uzunlukta (anahtar, değer) olan bir iterlenebilir. |
kwargs
|
required Ek girişler sözlüğü. |
dir
list dir(x)Parametre nesnesinin özelliklerinin ve yöntemlerinin adlarını içeren bir dize listesi döndürür.
Parametreler
Parametre | Açıklama |
---|---|
x
|
required Kontrol edilecek nesne. |
enumerate
list enumerate(list, start=0)Giriş dizisindeki dizini (int) ve öğeyi içeren bir çiftler listesi (iki öğeli tuple) döndürür.
enumerate([24, 21, 84]) == [(0, 24), (1, 21), (2, 84)]
Parametreler
Parametre | Açıklama |
---|---|
list
|
gerekli giriş dizisi. |
start
|
varsayılan = 0 başlangıç dizini. |
exec_group
exec_group exec_group(toolchains=[], exec_compatible_with=[], copy_from_rule=False)Kural uygulama sırasında belirli bir yürütme platformu için işlem oluşturmak üzere kullanılabilecek bir yürütme grubu oluşturur.
Parametreler
Parametre | Açıklama |
---|---|
toolchains
|
sequence ;
default = []Bu yürütme grubunun gerektirdiği araç zinciri grubu. Liste, herhangi bir kombinasyonda String, Label veya StarlarkToolchainTypeApi nesneleri içerebilir. |
exec_compatible_with
|
sequence of strings ;
default = []Yürütme platformundaki kısıtlamaların listesi. |
copy_from_rule
|
default = False Bu yürütme grubu, doğru olarak ayarlanırsa bu grubun bağlı olduğu kuralın araç zincirlerini ve kısıtlamalarını devralır. Başka bir dize olarak ayarlanırsa hata oluşur. |
başarısız
None fail(msg=None, attr=None, *args)Yürütmenin bir hatayla başarısız olmasına neden olur.
Parametreler
Parametre | Açıklama |
---|---|
msg
|
default = None Deprecated: bunun yerine konumsal bağımsız değişkenleri kullanın. Bu bağımsız değişken, açık bir başlangıç konumsal bağımsız değişkeni gibi davranır. |
attr
|
string; or None ;
default = NoneDesteği sonlandırıldı. Bu dizeyi içeren isteğe bağlı bir ön ekin hata mesajına eklenmesine neden olur. |
args
|
required Hata mesajında görünen, debugPrint ile biçimlendirilmiş (varsayılan olarak str ile eşdeğerdir) ve boşluklarla birleştirilmiş bir değer listesi. |
kayan noktalı
float float(x=unbound)x değerini kayan noktalı değer olarak döndürür.
x
zaten kayan noktalı bir değersefloat
, değeri değiştirmeden döndürür.x
bir boole isefloat
, True için 1,0 ve False için 0,0 değerini döndürür.x
bir int isefloat
, x'e en yakın sonlu kayan nokta değerini döndürür veya büyüklük çok büyükse bir hata döndürür.x
bir dize ise geçerli bir kayan noktalı değişmez değer veyaNaN
,Inf
ya daInfinity
ile eşit (büyük/küçük harf duyarlılığı yoksayılır) olmalıdır. Dilerseniz+
veya-
işareti de eklenebilir.
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)Varsa yapının, belirtilen ada sahip alanını döndürür. Aksi takdirde
default
değerini (belirtilmişse) döndürür veya hata oluşturur. getattr(x, "foobar")
, x.foobar
değerine eş değerdir.getattr(ctx.attr, "myattr") getattr(ctx.attr, "myattr", "mydefault")
Parametreler
Parametre | Açıklama |
---|---|
x
|
required Özelliğine erişilen yapı. |
name
|
required Yapı özelliğinin adı. |
default
|
default = unbound Yapının belirtilen ada sahip bir özelliği 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)Bir bağımlılık için Git deposunun belirli bir gönderiminden gelmesi gerektiğini belirtir. Bu yönerge yalnızca kök modülde geçerli olur. Diğer bir deyişle, bir modül başkaları tarafından bağımlılık olarak kullanılırsa kendi geçersiz kılma işlemleri yoksayılır.
Parametreler
Parametre | Açıklama |
---|---|
module_name
|
required Bu geçersiz kılma işleminin uygulanacağı Bazel modülü bağımlılığının adı. |
remote
|
zorunlu Uzak Git deposunun URL'si. |
commit
|
default = '' Check out yapılması gereken commit. |
patches
|
Iterable of strings ;
default = []Bu modüle uygulanacak yamalar dosyalarını işaret eden etiketlerin listesi. Yama dosyaları, üst düzey projenin kaynak ağacında bulunmalıdır. Bunlar liste sırasına göre uygulanır. |
patch_cmds
|
Iterable of strings ;
default = []Yamalar uygulandıktan sonra Linux/Macos'ta uygulanacak Bash komutları dizisi. |
patch_strip
|
varsayılan = 0 Unix yamasının --strip bağımsız değişkeniyle aynıdır. |
hasattr
bool hasattr(x, name)
x
nesnesi, belirtilen name
özelliğine veya yöntemine sahipse True (Doğru), aksi takdirde False (Yanlış) değerini döndürür. Örnek:hasattr(ctx.attr, "myattr")
Parametreler
Parametre | Açıklama |
---|---|
x
|
required Kontrol edilecek nesne. |
name
|
required Özelliğin adı. |
hash
int hash(value)Bir dize için karma oluşturma değeri döndürme. Bu değer, Java'nın
String.hashCode()
ile aynı algoritma kullanılarak belirlenir. Şöyle ki: s[0] * (31^(n-1)) + s[1] * (31^(n-2)) + ... + s[n-1]Dizeler dışındaki değerlerin karma oluşturma işlemi şu anda desteklenmiyor.
Parametreler
Parametre | Açıklama |
---|---|
value
|
required Karma oluşturma işlemi uygulanacak dize değeri. |
int
int int(x, base=unbound)x değerini tam sayı olarak döndürür.
x
zaten int iseint
, değeri değiştirilmeden döndürür.x
bir boole iseint
, True için 1 ve False için 0 değerini döndürür.x
bir dize ise<sign><prefix><digits>
biçiminde olmalıdır.<sign>
,"+"
,"-"
veya boştur (pozitif olarak yorumlanır).<digits>
, 0 ilebase
- 1 arasındaki bir basamak dizisidir. Bu dizede, 10-35 için a-z harfleri (veya eşdeğeri olarak A-Z) basamak olarak kullanılır.base
2/8/16 ise<prefix>
isteğe bağlıdır ve sırasıyla 0b/0o/0x (veya eşdeğer olarak 0B/0O/0X) olabilir;base
bu tabanlar dışında başka bir değer veya özel değer 0 ise ön ek boş olmalıdır.base
değerinin 0 olduğu durumlarda, dize bir tam sayı literali olarak yorumlanır. Yani, varsa kullanılan ön eke bağlı olarak 2/8/10/16 tabanlarından biri seçilir.base
0 ise ön ek kullanılmaz ve birden fazla basamak varsa ilk basamak 0 olamaz. Bu, sekizlik ve ondalık sistem arasındaki karışıklığı önlemek içindir. Dizeyle temsil edilen sayının büyüklüğü, int türü için izin verilen aralık içinde olmalıdır.x
bir kayan noktaysaint
, kayan noktanın tam sayı değerini sıfıra yuvarlayarak döndürür. x sonlu değilse (NaN veya sonsuz) hata oluşur.
x
başka bir türse veya değer yukarıdaki biçimi karşılamayan bir dizeyse bu işlev başarısız olur. Python'un int
işlevinin aksine bu işlev sıfır bağımsız değişkene izin vermez 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
|
required 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 (dahil) veya x bir tam sayı değişmeziymiş gibi taban değerini algılamak için 0 olmalıdır. Değer bir dize değilse bu parametre sağlanmamalıdır.
|
len
int len(x)Bir dizenin, dizinin (ör. liste veya tuple), sözlüğün veya başka bir iterlenebilir öğenin uzunluğunu döndürür.
Parametreler
Parametre | Açıklama |
---|---|
x
|
required Uzunluğu raporlanacak değer. |
list
list list(x=[])Belirtilen yinelenebilir değerle aynı öğeleri içeren yeni bir liste döndürür.
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)Bir bağımlılık öğesinin yerel diskteki belirli bir dizinden gelmesi gerektiğini belirtir. Bu yönerge yalnızca kök modülde geçerli olur. Diğer bir deyişle, bir modül başkaları tarafından bağımlılık olarak kullanılırsa kendi geçersiz kılma işlemleri yoksayılır.
Parametreler
Parametre | Açıklama |
---|---|
module_name
|
required Bu geçersiz kılma işleminin uygulanacağı Bazel modülü bağımlılığının adı. |
path
|
required Bu modülün bulunduğu dizinin yolu. |
maks.
unknown max(*args)Verilen tüm bağımsız değişkenler arasından en büyük olanı döndürür. Yalnızca bir bağımsız değişken sağlanırsa bu bağımsız değişken boş olmayan bir iteratör olmalıdır. Öğeler karşılaştırılabilir değilse (ör. tamsayı ile dize) veya bağımsız değişken sağlanmamışsa hata oluşur.
max(2, 5, 4) == 5 max([5, 6, 3]) == 6
Parametreler
Parametre | Açıklama |
---|---|
args
|
required Kontrol edilecek öğeler. |
dk
unknown min(*args)Verilen tüm bağımsız değişkenler arasından en küçük olanı döndürür. Yalnızca bir bağımsız değişken sağlanırsa bu bağımsız değişken boş olmayan bir iteratör olmalıdır. Öğeler karşılaştırılabilir değilse (ör. tamsayı ile dize) veya bağımsız değişken verilmezse hata oluşur.
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=[])Mevcut Bazel deposu tarafından temsil edilen Bazel modülünün belirli özelliklerini belirtir. Bu özellikler, modülün temel meta verileridir (ad ve sürüm gibi) veya mevcut modülün ve bağımlılarının davranışını etkiler.
En fazla bir kez çağrılmalıdır. Yalnızca bu modül kök modülse (yani başka bir modül tarafından bağımlı olmayacaksa) 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 bağımlı olmayacaksa) 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ı; 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 bağımlı olmayacaksa) atlanabilir. |
compatibility_level
|
default = 0 Modülün uyumluluk seviyesi. Bu değer, uyumsuz büyük bir değişiklik her uygulandığında değiştirilmelidir. Bu, SemVer açısından modülün "büyük sürümü"dür. Bununla birlikte, sürüm dizesine yerleştirilmez ve ayrı bir alan olarak bulunur. Farklı uyumluluk düzeylerine sahip modüller, farklı ada sahip modüllermiş gibi sürüm çözümüne katılır ancak nihai bağımlılık grafiği, aynı ada sahip ancak farklı uyumluluk düzeylerine sahip birden fazla modül içeremez ( multiple_version_override etkin değilse; daha fazla bilgi için buraya bakın).
|
repo_name
|
default = '' Bu modülün kendisinin gördüğü şekilde, modülü temsil eden deponun adı. Varsayılan olarak, deponun adı modülün adıdır. Bu, kendisi için modül adından farklı bir depo adı kullanan projelerin taşınmasını kolaylaştırmak için belirtilebilir. |
bazel_compatibility
|
Iterable of strings ;
default = []Kullanıcıların bu modülle uyumlu Bazel sürümlerini belirtmesine olanak tanıyan Bazel sürümlerinin listesi. Bağımlılık çözümünü etkilemez ancak bzlmod, mevcut Bazel sürümünüzün uyumlu olup olmadığını kontrol etmek için bu bilgileri kullanır. Bu değerin biçimi, virgülle ayrılmış bazı kısıtlama değerlerinin dizesidir. Üç kısıtlama desteklenir: <=X.X.X: Bazel sürümü X.X.X'e eşit veya bu sürümden eski olmalıdır. Daha yeni bir sürümde uyumsuz olduğu bilinen bir değişiklik olduğunda kullanılır. >=X.X.X: Bazel sürümü X.X.X ile aynı veya daha yeni olmalıdır.Yalnızca X.X.X sürümünden itibaren kullanılabilen bazı özelliklere ihtiyaç duyduğunuzda kullanılır. -X.X.X: X.X.X Bazel sürümü uyumlu değildir. X.X.X sürümünde, çalışmanızı engelleyen 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)Yeni bir modül uzantısı oluşturur. Dışa aktarılıp MODULE.bazel dosyasında kullanılabilmesi için global bir değerde saklayın.
Parametreler
Parametre | Açıklama |
---|---|
implementation
|
required Bu modül uzantısını uygulayan işlev. Tek bir parametre ( module_ctx ) almalıdır. Mevcut depo grubunu 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ı beyan etmek için bir sözlük. Etiket sınıfının adından bir tag_class nesnesine eşlenir.
|
doc
|
default = '' Doküman oluşturma araçları tarafından ayıklanabilen 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ı belirtir |
arch_dependent
|
default = False Bu uzantının mimariye bağlı olup olmadığını belirtir |
multiple_version_override
None multiple_version_override(module_name, versions, registry='')Bir bağımlılık için yine de bir kayıt defteri kullanılacağını ancak birden fazla sürümünün birlikte var olmasına izin verilmesi gerektiğini belirtir. Daha fazla ayrıntı için dokümanları inceleyin. Bu yönerge yalnızca kök modülde geçerli olur. Diğer bir deyişle, bir modül başkaları tarafından bağımlılık olarak kullanılırsa kendi geçersiz kılma işlemleri yoksayılır.
Parametreler
Parametre | Açıklama |
---|---|
module_name
|
required Bu geçersiz kılma işleminin uygulanacağı Bazel modülü bağımlılığının adı. |
versions
|
Iterable of strings ;
requiredBir arada 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ülün bağımlılıkları, aynı uyumluluk düzeyinde izin verilen en yakın üst sürüme "yükseltilir". Aynı uyumluluk düzeyinde izin verilen sürümlerden daha yüksek sürüme sahip bağımlılıklar ise hataya neden olur. |
registry
|
default = '' Bu modülün kayıt defterini geçersiz kılar; bu modül varsayılan kayıt defteri listesinden bulunmaz, belirtilen kayıt defteri kullanılır. |
yazdır
None print(sep=" ", *args)Hata ayıklama çıkışı olarak
args
yazdırır. Öncesine "DEBUG"
dizesi ve bu çağrının konumu (dosya ve satır numarası) eklenir. Argümanların dizelere dönüştürülme şekli belirtilmez ve herhangi bir zamanda değişebilir. Özellikle str()
ve repr()
tarafından yapılan biçimlendirmeden farklı (ve daha ayrıntılı) olabilir.Kullanıcılar için spam oluşturduğundan, üretim kodunda print
kullanılması önerilmez. Desteği sonlandırılan özellikler için mümkün olduğunda fail()
kullanarak kesin hata 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)Bir sağlayıcı simgesini tanımlar. Sağlayıcı, çağrılarak örneklendirilebilir veya doğrudan bir hedeften ilgili sağlayıcının bir örneğini almak için anahtar olarak kullanılabilir. Örnek:
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ın nasıl kullanılacağıyla ilgili kapsamlı bir kılavuz için Kurallar (Sağlayıcılar) başlıklı makaleyi inceleyin.
init
belirtilmezse Provider
çağrılabilir bir değer döndürür.
init
belirtilirse 2 öğeden oluşan bir tuple döndürür: Provider
çağrılabilir değer ve ham kurucu çağrılabilir değer. Ayrıntılar için Kurallar (Özel sağlayıcıların özel başlatılması) bölümüne ve aşağıdaki init
parametresi tartışmasına bakın.
Parametreler
Parametre | Açıklama |
---|---|
doc
|
default = '' Doküman oluşturma araçları tarafından ayıklanabilen sağlayıcının açıklaması. |
fields
|
sequence of strings; or dict; or None ;
default = NoneBelirtilirse izin verilen alanlar kümesini kısıtlar. Olası değerler:
|
init
|
callable; or None ;
default = NoneOluşturma sırasında sağlayıcının alan değerlerini ön işleme ve doğrulamak için isteğe bağlı bir geri çağırma işlevi. init belirtilirse provider() , 2 öğeden oluşan bir tuple döndürür: normal sağlayıcı sembolü ve bir ham kurucu.Aşağıda bu konu hakkında ayrıntılı bir açıklama verilmiştir. Anlaşılır bir tartışma ve kullanım alanları için Kurallar (Sağlayıcıların özel başlatılması) başlıklı makaleyi inceleyin.
init geri çağırma işlevi verilmediği takdirde, P simgesine yapılan çağrı, varsayılan yapıcı işlevi c 'e yapılan çağrı gibi davranır. Diğer bir deyişle, P(*args, **kwargs) c(*args, **kwargs) döndürür. Örneğin,MyInfo = provider() m = MyInfo(foo = 1) m 'un m.foo == 1 içeren bir MyInfo örneği olmasını sağlar.Ancak
Not: 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ışı kullanılarak öğelerin start
ile stop
arasında olduğu bir liste oluşturur. Tek bir bağımsız değişken sağlanırsa öğeler 0 ile ilgili öğ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
|
required durma sağlanırsa başlangıç öğesinin değeri, aksi takdirde durma değerinin değeri ve gerçek başlangıç 0 olur |
stop_or_none
|
int; or None ;
default = NoneSonuçta elde edilen listeye dahil edilmeyecek ilk öğenin isteğe bağlı dizini; liste oluşturma işlemi stop değerine ulaşılmadan durdurulur.
|
step
|
default = 1 Artış (varsayılan değer 1). Olumsuz olabilir. |
register_execution_platforms()
None register_execution_platforms(*platform_labels)Bazel'in araç zinciri çözümü sırasında çalışma platformu olarak kullanabilmesi için önceden tanımlanmış bir platformu kaydedin.
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)Bu modül seçildiğinde kaydedilecek önceden tanımlanmış yürütme platformlarını belirtir. Mutlak hedef kalıpları olmalıdır (ör.
@
veya //
ile başlar). Daha fazla bilgi için araç zinciri çözünürlüğü bölümüne bakın.
Parametreler
Parametre | Açıklama |
---|---|
dev_dependency
|
varsayılan = False Doğru ise geçerli 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)Bazel'in toolchain çözümü sırasında kullanabilmesi için önceden tanımlanmış bir toolchain'i kaydedin. Araç zincirlerini tanımlama ve kaydetme örneklerini inceleyin.
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)Bu modül seçildiğinde kaydedilecek önceden tanımlanmış araç zincirlerini belirtir. Mutlak hedef kalıpları olmalıdır (ör.
@
veya //
ile başlar). Daha fazla bilgi için araç zinciri çözünürlüğü bölümüne bakın.
Parametreler
Parametre | Açıklama |
---|---|
dev_dependency
|
varsayılan = False Doğru ise geçerli 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='')Yeni bir depo kuralı oluşturur. WORKSPACE dosyasından yüklenmesi ve çağrılabilmesi için genel bir değerde depolayın.
Parametreler
Parametre | Açıklama |
---|---|
implementation
|
required Bu kuralı uygulayan işlev. 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 = Nonekuralın tüm özelliklerini bildirmek için kullanılan sözlük. Bir özellik adından özellik nesnesine eşleme yapar (attr modülüne bakın). _ ile başlayan özellikler gizlidir ve bir dosyaya etikete yönelik gizli bir bağımlılık eklemek için kullanılabilir (depo kuralı, oluşturulan bir yapıya bağlı olamaz). name özelliği dolaylı olarak eklenir ve belirtilmemelidir.
|
local
|
default = False Bu kuralın her şeyi yerel sistemden getirdiğini ve her getirme işleminde yeniden değerlendirilmesi gerektiğini belirtir. |
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 denetlediğine dair işaret |
remotable
|
default = False Deneysel. Bu parametre deneyseldir ve herhangi bir zamanda değişebilir. Lütfen bu yönteme güvenmeyin. ---experimental_repo_remote_exec Uzaktan yürütme ile uyumlu olarak ayarlanarak deneme amaçlı olarak etkinleştirilebilir. |
doc
|
default = '' Belge oluşturma araçları tarafından ayıklanabilen depolama alanı kuralının açıklaması. |
repr
string repr(x)Herhangi bir nesneyi dize temsiline dönüştürür. Bu, hata ayıklama için yararlıdır.
repr("ab") == '"ab"'
Parametreler
Parametre | Açıklama |
---|---|
x
|
required Dönüştürülecek nesne. |
tersine çevrildi
list reversed(sequence)Orijinal yinelenebilir dizinin öğelerini ters sırada içeren yeni ve dondurulmamış bir liste döndürür.
reversed([3, 5, 4]) == [4, 5, 3]
Parametreler
Parametre | Açıklama |
---|---|
sequence
|
required Tersine çevrilecek iterlenebilir 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)Hedef oluşturmak için BUILD dosyasından veya makrodan çağrılabilecek yeni bir kural oluşturur.
Kurallar, .bzl dosyasındaki genel değişkenlere atanmalıdır. Genel değişkenin adı, kuralın adıdır.
Test kurallarının adının _test
ile bitmesi gerekir. Diğer tüm kuralların adında bu son ek bulunmamalıdır. (Bu kısıtlama yalnızca kurallar için geçerli olup hedeflerinin kapsamına girmez.)
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 test kuralı olup olmadığı, yani bir blaze test komutunun konusu olup olamayacağı. Tüm test kuralları otomatik olarak yürütülebilir olarak kabul edilir. Test kuralları için executable = True değerini açıkça ayarlamak gerekmez (ve önerilmez). Daha fazla bilgi için Kurallar sayfasına bakın.
|
attrs
|
dict; or None ;
default = Nonekuralın tüm özelliklerini bildirmek için kullanılan sözlük. Bir özellik adından özellik nesnesine eşleme yapar (attr modülüne bakın). _ ile başlayan özellikler gizlidir ve bir etikete dolaylı bağımlılık eklemek için kullanılabilir. name özelliği dolaylı olarak eklenir ve belirtilmemelidir. visibility , deprecation , tags , testonly ve features özellikleri dolaylı olarak eklenir ve geçersiz kılınamaz. Çoğu kural için yalnızca birkaç özellik gerekir. Kural işlevi, bellek kullanımını sınırlamak için attrs boyutuna bir sınır uygular.
|
outputs
|
dict; or None; or function ;
default = NoneDesteği sonlandırıldı. Bu parametrenin desteği sonlandırıldı ve yakında kaldırılacak. Lütfen bu yönteme güvenmeyin. ---incompatible_no_rule_outputs_param ile devre dışı bırakılır. Kodunuzun yakında kaldırılacak olan özellikle uyumlu olup olmadığını doğrulamak için bu işareti kullanın. Bu parametrenin desteği sonlandırılmıştır. Kuralları, OutputGroupInfo veya attr.output yerine kullanacak şekilde taşıyın. Önceden beyan edilen çıkışları tanımlamak için kullanılan bir ş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 işlevi, 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 bir tanımlayıcı ve değerin, çıktının etiketini belirleyen bir dize şablonu olduğu önceden bildirilmiş bir çıktı 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 olarak kabul edilip edilmeyeceğini, yani bir blaze run komutunun konusu olup olamayacağını belirtir. Daha fazla bilgi için Kurallar sayfasına bakın.
|
output_to_genfiles
|
varsayılan = False Doğru ise dosyalar bin dizini yerine genfiles dizininde oluşturulur. Mevcut kurallarla uyumluluk için ihtiyacınız olmadığı sürece (ör. C++ için başlık dosyaları oluştururken) bu işareti ayarlamayınız. |
fragments
|
sequence of strings ;
default = []Kuralın hedef yapılandırmada gerektirdiği yapılandırma parçalarının adları. |
host_fragments
|
sequence of strings ;
default = []Kuralın ana makine yapılandırmasında gerektirdiği yapılandırma parçalarının adları. |
_skylark_testable
|
default = False (Deneysel) Doğru ise bu kural, işlemlerini bir Actions sağlayıcı aracılığıyla kendisine bağlı kurallar tarafından incelenmek üzere gösterir. Sağlayıcı, ctx.created_actions() çağrısı yapılarak kuralın kendisi tarafından da kullanılabilir. Bu, yalnızca Starlark kurallarının analiz sırasındaki davranışını test etmek için kullanılmalıdır. Bu işaret gelecekte kaldırılabilir. |
toolchains
|
sequence ;
default = []Ayarlanırsa bu kuralın gerektirdiği araç zinciri grubu. Liste, herhangi bir kombinasyonda String, Label veya StarlarkToolchainTypeApi nesneleri içerebilir. Araçlar zincirleri, mevcut platform kontrol edilerek bulunur ve ctx.toolchain aracılığıyla kural uygulamasına sağlanır.
|
incompatible_use_toolchain_transition
|
default = False Deprecated, this is no longer in use and should be removed. |
doc
|
default = '' Belge oluşturma araçları tarafından ayıklanabilen kural 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 = []Yürütme platformundaki, bu kural türünün tüm hedefleri için geçerli olan kısıtlamaların listesi. |
analysis_test
|
default = False Doğru ise bu kural bir analiz testi olarak değerlendirilir. Not: Analiz testi kuralları, 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 etkinleştirilir:
|
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 ayarlanırsa bu kurala, burada iletilen değere karşılık gelen bir türde "build_setting_default" adlı zorunlu bir özellik otomatik olarak eklenir.
|
cfg
|
default = None 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 ile dizini. Ayarlanırsa kuralların tek bir hedef içinde birden fazla yürütme platformunda işlemler yapmasını sağlar. Daha fazla bilgi için yürütme grupları belgelerine bakın.
|
compile_one_filetype
|
sequence of strings; or None ;
default = None--compile_one_dependency tarafından kullanılır: Belirtilen dosyayı birden fazla kural kullanıyorsa diğer kurallar yerine bu kuralı seçmeli miyiz? |
name
|
string; or None ;
default = NoneDesteği sonlandırıldı. Bu parametrenin desteği sonlandırıldı ve yakında kaldırılacak. Lütfen bu yönteme güvenmeyin. --+incompatible_remove_rule_name_parameter ile devre dışı bırakılır. Kodunuzun yakında kaldırılacak olan özellikle uyumlu olup olmadığını 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ı, tanımlayan .bzl modülü içinde bu kurala bağlanacak ilk Starlark genel değişkeninin adıyla ayarlanır. Bu nedenle, ad Bir kural için açık bir ad belirtmek, kuralı örneklendirmenize izin verilen yeri değiştirmez. |
seç
unknown select(x, no_match_error='')
select()
, 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
|
required 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 etiketin ne zaman kullanılacağı hakkında bilgi edinmek için makrolarla ilgili dokümanlara bakın. |
no_match_error
|
default = '' Hiçbir koşul eşleşmezse raporlanacak isteğe bağlı özel hata. |
single_version_override
None single_version_override(module_name, version='', registry='', patches=[], patch_cmds=[], patch_strip=0)Bir bağımlılık yine de bir kayıt defteri tarafından sağlanmalıdır ancak sürümünün sabitlenmesi, kayıt defterinin geçersiz kılınması veya bir yamalar listesinin uygulanması gerekir. Bu yönerge yalnızca kök modülde geçerli olur. Diğer bir deyişle, bir modül başkaları tarafından bağımlılık olarak kullanılırsa kendi geçersiz kılma işlemleri yoksayılır.
Parametreler
Parametre | Açıklama |
---|---|
module_name
|
required Bu geçersiz kılma işleminin uygulanacağı Bazel modülü bağımlılığının adı. |
version
|
default = '' Bağımlılık grafiğinde bu modülün bildirilen sürümünü geçersiz kılar. Diğer bir deyişle, bu modül bu geçersiz kılma sürümüne "sabitlenir". Yalnızca kayıt otoritesini veya yamaları geçersiz kılmak istiyorsanız bu özellik atlanabilir. |
registry
|
default = '' Bu modülün kayıt defterini geçersiz kılar; bu modül varsayılan kayıt defteri listesinden bulunmaz, belirtilen kayıt defteri kullanılır. |
patches
|
Iterable of strings ;
default = []Bu modüle uygulanacak yamalar dosyalarını işaret eden etiketlerin listesi. Yama dosyaları, üst düzey projenin kaynak ağacında bulunmalıdır. Bunlar liste sırasına göre uygulanır. |
patch_cmds
|
Iterable of strings ;
default = []Yamalar uygulandıktan sonra Linux/Macos'ta uygulanacak Bash komutları dizisi. |
patch_strip
|
varsayılan = 0 Unix yamasının --strip bağımsız değişkeniyle aynıdır. |
sıralanmış
list sorted(iterable, *, key=None, reverse=False)Sağlanan iterlenebilir dizinin tüm öğelerini içeren yeni bir sıralanmış liste döndürür. x < y kullanılarak x, y öğe çifti karşılaştırılamazsa hata oluşabilir. Ters bağımsız değişkeni doğru olmadığı sürece öğeler artan düzende sıralanır. Ters bağımsız değişken doğruysa sıralama azalan düzende olur. Sıralama sabit kalır: Eşit olarak karşılaştırılan öğeler orijinal göreceli sıralarını korur.
sorted([3, 5, 4]) == [3, 4, 5]
Parametreler
Parametre | Açıklama |
---|---|
iterable
|
required Sırlanacak iterlenebilir sıra. |
key
|
default = None 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)Herhangi bir nesneyi dizeye dönüştürür. Bu, hata ayıklama için yararlıdır.
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='')Bir modül uzantısı tarafından kullanılabilen veri nesneleri olan etiket sınıfı için bir özellik şemasını tanımlayan yeni bir tag_class nesnesi oluşturur.
Parametreler
Parametre | Açıklama |
---|---|
attrs
|
default = {} Bu etiket sınıfının tüm özelliklerini bildirmek için kullanılan bir sözlük. Bir özellik adından özellik nesnesine eşleme yapar (attr modülüne bakın). |
doc
|
default = '' Etiket sınıfının, doküman oluşturma araçları tarafından ayıklanabilen açıklaması. |
tuple
tuple tuple(x=())Belirtilen yinelenebilir değerle aynı öğeleri içeren bir tuple döndürür.
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)Bağımsız değişkeninin tür adını döndürür. Bu, hata ayıklama ve tür kontrolü için kullanışlıdır. Örnekler:
type(2) == "int" type([1]) == "list" type(struct(a = 2)) == "struct"Bu işlev gelecekte değişebilir. Python ile uyumlu kod yazmak ve gelecekte sorun yaşamamak için bu işlevi yalnızca döndürülen değerleri karşılaştırmak için kullanın:
if type(x) == type([]): # if x is a list
Parametreler
Parametre | Açıklama |
---|---|
x
|
required Kontrol edilecek nesnenin türü. |
use_extension
module_extension_proxy use_extension(extension_bzl_file, extension_name, *, dev_dependency=False, isolate=False)Modül uzantısını temsil eden bir proxy nesnesi döndürür. Modül uzantısı etiketleri oluşturmak için yöntemleri çağrılabilir.
Parametreler
Parametre | Açıklama |
---|---|
extension_bzl_file
|
required Starlark dosyasında modül uzantısını tanımlayan bir etiket. |
extension_name
|
required Kullanılacak modül uzantısının adı. Starlark dosyası bu ada sahip bir simge dışa aktarmalıdır. |
dev_dependency
|
varsayılan = False Doğru ise 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 yönteme güvenmeyin. ---experimental_isolated_extension_usages ayarlanarak deneysel olarak etkinleştirilebilir. Doğru ise modül uzantısının bu kullanımı hem bu modülde hem de diğer modüllerdeki 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ı olur. Bu parametre şu anda deneyseldir ve yalnızca |
use_repo
None use_repo(extension_proxy, *args, **kwargs)Belirtilen modül uzantısı tarafından oluşturulan bir veya daha fazla deposu mevcut modülün kapsamına aktarır.
Parametreler
Parametre | Açıklama |
---|---|
extension_proxy
|
required Bir use_extension çağrısı tarafından döndürülen modül uzantısı proxy nesnesi.
|
args
|
required İçe aktarılacak depoların adları. |
kwargs
|
required Mevcut modülün kapsamına farklı adlarla içe aktarılacak belirli depoları belirtir. Anahtarlar, geçerli kapsamda kullanılacak ad, 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 yöneten 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ün yüklenmesi için yüklemeyi 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 paketinde yüklenebilir.
visibility()
, .bzl dosyası başına yalnızca bir kez çağrılabilir ve işlev içinde değil, yalnızca üst düzeyde ç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ış değerine ayarlanırsa yük görünürlüğü ihlalleri uyarı verir ancak derleme başarısız olmaz.
Parametreler
Parametre | Açıklama |
---|---|
value
|
required Paket spesifikasyonu dizelerinin listesi veya tek bir paket spesifikasyonu dizesi. Paket özellikleri, negatif paket özelliklerine izin verilmemesi dışında
"@" söz dizimine izin verilmez; tüm özellikler geçerli 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ı belirler. Workspace adları, ayırıcı olarak alt çizgilerin kullanıldığı, projenin Java paketi tarzında bir açıklaması olmalıdır. Örneğin, github.com/bazelbuild/bazel için com_github_bazelbuild_bazel kullanılmalıdır.
Bu ad, deposunun çalışma 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ı workspace(name = 'baz')
içeriyorsa çalıştırma dosyası mytarget.runfiles/baz/foo/bar
altında kullanılabilir. Workspace adı belirtilmezse çalıştırma dosyası bar.runfiles/foo/bar
ile sembolik bağlantı oluşturur.
Uzak depo kural adları geçerli çalışma alanı adları olmalıdır. Örneğin, Bazel workspace(name = 'foo%bar')
içeren maven_jar
için bir WORKSPACE dosyası yazmaya çalışacağından maven_jar(name = 'foo')
olabilir ancak maven_jar(name = 'foo%bar')
olamaz.
Parametreler
Parametre | Açıklama |
---|---|
name
|
zorunlu ç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)i. tuplinin, bağımsız değişken dizilerinin veya yinelenebilir öğelerin her birinden i. öğeyi içerdiği bir
tuple
döndürür.list
Liste, en kısa girişin boyutuna sahiptir. Tek bir iterlenebilir bağımsız değişkenle 1-tuple listesi döndürür. Bağımsız değişken olmadan çağrıldığında 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 sıkıştırın. |