rule() ve aspect() işlevlerinin attrs sözlük bağımsız değişkeninin değerleri olarak kullanılır.Özellikleri tanımlama ve kullanma hakkında daha fazla bilgi için Kurallar sayfasını inceleyin.
Üyeler
- bool
- int
- int_list
- label
- label_keyed_string_dict
- label_list
- output
- output_list
- string
- string_dict
- string_keyed_label_dict
- string_list
- string_list_dict
bool
Attribute attr.bool(default=False, doc=None, mandatory=False)
ctx.attr özelliği bool türünde olur.
          
      Parametreler
| Parametre | Açıklama | 
|---|---|
| default | varsayılan değer FalseKural oluşturulurken bu özellik için değer verilmezse kullanılacak varsayılan değer. | 
| doc | string veya None;
                                     varsayılan değerNoneÖzelliğin, doküman oluşturma araçları tarafından çıkarılabilen açıklaması. | 
| mandatory | Varsayılan değer False'dır. Doğruysa değer açıkça belirtilmelidir ( defaultolsa bile). | 
int
Attribute attr.int(default=0, doc=None, mandatory=False, values=[])
ctx.attr özelliği int türünde olur.
          
      Parametreler
| Parametre | Açıklama | 
|---|---|
| default | varsayılan değer 0Kural oluşturulurken bu özellik için değer verilmezse kullanılacak varsayılan değer. | 
| doc | string veya None;
                                     varsayılan değerNoneÖzelliğin, doküman oluşturma araçları tarafından çıkarılabilen açıklaması. | 
| mandatory | Varsayılan değer False'dır. Doğruysa değer açıkça belirtilmelidir ( defaultolsa bile). | 
| values | int'lerin sequence'ı;
                                     varsayılan değer []Özellik için izin verilen değerlerin listesi. Başka bir değer verilirse hata oluşur. | 
int_list
Attribute attr.int_list(mandatory=False, allow_empty=True, *, default=[], doc=None)
Parametreler
| Parametre | Açıklama | 
|---|---|
| mandatory | Varsayılan değer False'dır. Doğruysa değer açıkça belirtilmelidir ( defaultolsa bile). | 
| allow_empty | Varsayılan değer TrueÖznitelik boş olabilirse True. | 
| default | int'lerin sırası;
                                     varsayılan değer []Kural oluşturulurken bu özellik için değer verilmezse kullanılacak varsayılan değer. | 
| doc | string veya None;
                                     varsayılan değerNoneÖzelliğin, doküman oluşturma araçları tarafından çıkarılabilen açıklaması. | 
etiket
Attribute attr.label(default=None, doc=None, executable=False, allow_files=None, allow_single_file=None, mandatory=False, providers=[], allow_rules=None, cfg=None, aspects=[], flags=[])
Etiket özelliği için şema oluşturur. Bu, bir bağımlılık özelliğidir.
Bu özellik, benzersiz Label değerleri içeriyor. Label yerine bir dize sağlanırsa etiket oluşturucu kullanılarak dönüştürülür. Etiket yolunun göreli kısımları (depo dahil, yeniden adlandırılmış olabilir), oluşturulan hedefin paketiyle ilgili olarak çözülür.
Analiz sırasında (kuralın uygulama işlevi içinde), ctx.attr öğesinden özellik değeri alınırken etiketler ilgili Target ile değiştirilir. Bu sayede, mevcut hedefin bağımlılıklarının sağlayıcılarına erişebilirsiniz.
Bu tür özellik, normal kaynak dosyaların yanı sıra genellikle bir araca (ör. derleyici) atıfta bulunmak için kullanılır. Bu tür araçlar, kaynak dosyalar gibi bağımlılık olarak kabul edilir. Kullanıcıların, kuralı BUILD dosyalarında her kullandıklarında aracın etiketini belirtmelerini önlemek için kanonik bir aracın etiketini bu özelliğin default değeri olarak sabit kodlayabilirsiniz. Kullanıcıların bu varsayılanı geçersiz kılmasını da engellemek istiyorsanız alt çizgiyle başlayan bir ad vererek özelliği özel yapabilirsiniz. Daha fazla bilgi için Kurallar sayfasına bakın.
          
      
Parametreler
| Parametre | Açıklama | 
|---|---|
| default | Etiket; veya dize; veya LateBoundDefault; veya NativeComputedDefault; veya işlev; veya None;
                                     varsayılan değerNoneKural oluşturulurken bu özellik için değer verilmezse kullanılacak varsayılan değer. Varsayılan değeri belirtmek için dize veya Labelişlevini kullanın. Örneğin,attr.label(default = "//a:b"). | 
| doc | string veya None;
                                     varsayılan değerNoneÖzelliğin, doküman oluşturma araçları tarafından çıkarılabilen açıklaması. | 
| executable | Varsayılan değer FalseBağımlılığın yürütülebilir olması gerekiyorsa True. Bu nedenle, etiketin yürütülebilir bir dosyayı veya yürütülebilir bir dosya çıkışı veren bir kuralı ifade etmesi gerekir. ctx.executable.<attribute_name>ile etikete erişin. | 
| allow_files | bool; veya string'lerin sequence'ı; veya None;
                                     varsayılan değerNoneFilehedeflerine izin verilip verilmeyeceği.True,False(varsayılan) veya izin verilen dosya uzantılarının listesi (örneğin,[".cc", ".cpp"]) olabilir. | 
| allow_single_file | varsayılan değer NoneBu, etiketin tek bir Dosya ile eşleşmesi kısıtlaması dışında allow_filesile benzerdir.ctx.file.<attribute_name>üzerinden erişebilirsiniz. | 
| mandatory | Varsayılan değer False'dır. Doğruysa değer açıkça belirtilmelidir ( defaultolsa bile). | 
| providers | Varsayılan değer []'dir. Bu özellikte görünen bağımlılıklar tarafından sağlanması gereken sağlayıcılar. Bu bağımsız değişkenin biçimi, sağlayıcı listelerinin listesidir.  | 
| allow_rules | Dize dizisi veya None;
                                     varsayılan değerNoneHangi kural hedeflerine (sınıfların adı) izin verilir? Bu işlevin desteği sonlandırıldı (yalnızca uyumluluk için tutuluyor). Bunun yerine sağlayıcıları kullanın. | 
| cfg | varsayılan değer NoneÖzelliğin yapılandırması. Bağımlılığın execution platformiçin oluşturulduğunu belirten"exec"veya bağımlılığıntarget platformiçin oluşturulduğunu belirten"target"olabilir. Bu farkın tipik bir örneği, mobil uygulamalar oluşturulurken görülür. Bu durumdatarget platform,AndroidveyaiOSikenexecution platform,Linux,macOSveyaWindowsolur. Hedef yapılandırmada yanlışlıkla ana makine araçları oluşturulmasını önlemek içinexecutableTrue ise bu parametre gereklidir."target"'nın anlamsal bir etkisi yoktur. Bu nedenle, niyetinizi netleştirmeye gerçekten yardımcı olmadığı süreceexecutableYanlış olduğunda bu parametreyi ayarlamayın. | 
| aspects | Aspect'lerin sequence'ı;
                                     varsayılan değer []Bu özellik tarafından belirtilen bağımlılığa veya bağımlılıklara uygulanması gereken yönler. | 
| flags | string'lerin sequence'ı;
                                     varsayılan değer []Kullanımdan kaldırıldı, kaldırılacak. | 
label_keyed_string_dict
Attribute attr.label_keyed_string_dict(allow_empty=True, *, default={}, doc=None, allow_files=None, allow_rules=None, providers=[], flags=[], mandatory=False, cfg=None, aspects=[])
Anahtarların etiket, değerlerin ise dize olduğu bir sözlük içeren özellik için şema oluşturur. Bu, bir bağımlılık özelliğidir.
Bu özellik, benzersiz Label değerleri içeriyor. Label yerine bir dize sağlanırsa etiket oluşturucu kullanılarak dönüştürülür. Etiket yolunun göreli kısımları (depo dahil, yeniden adlandırılmış olabilir), oluşturulan hedefin paketiyle ilgili olarak çözülür.
Analiz sırasında (kuralın uygulama işlevi içinde), ctx.attr öğesinden özellik değeri alınırken etiketler ilgili Target ile değiştirilir. Bu sayede, mevcut hedefin bağımlılıklarının sağlayıcılarına erişebilirsiniz.
          
      
Parametreler
| Parametre | Açıklama | 
|---|---|
| allow_empty | Varsayılan değer TrueÖznitelik boş olabilirse True. | 
| default | dict veya function;
                                     varsayılan değer {}Kural oluşturulurken bu özellik için değer verilmezse kullanılacak varsayılan değer. Varsayılan değerleri belirtmek için dizeleri veya Labelişlevini kullanın. Örneğin,attr.label_keyed_string_dict(default = {"//a:b": "value", "//a:c": "string"}). | 
| doc | string veya None;
                                     varsayılan değerNoneÖzelliğin, doküman oluşturma araçları tarafından çıkarılabilen açıklaması. | 
| allow_files | bool; veya string'lerin sequence'ı; veya None;
                                     varsayılan değerNoneFilehedeflerine izin verilip verilmeyeceği.True,False(varsayılan) veya izin verilen dosya uzantılarının listesi (örneğin,[".cc", ".cpp"]) olabilir. | 
| allow_rules | Dize dizisi veya None;
                                     varsayılan değerNoneHangi kural hedeflerine (sınıfların adı) izin verilir? Bu işlevin desteği sonlandırıldı (yalnızca uyumluluk için tutuluyor). Bunun yerine sağlayıcıları kullanın. | 
| providers | Varsayılan değer []'dir. Bu özellikte görünen bağımlılıklar tarafından sağlanması gereken sağlayıcılar. Bu bağımsız değişkenin biçimi, sağlayıcı listelerinin listesidir.  | 
| flags | string'lerin sequence'ı;
                                     varsayılan değer []Kullanımdan kaldırıldı, kaldırılacak. | 
| mandatory | Varsayılan değer False'dır. Doğruysa değer açıkça belirtilmelidir ( defaultolsa bile). | 
| cfg | varsayılan değer NoneÖzelliğin yapılandırması. Bağımlılığın execution platformiçin oluşturulduğunu belirten"exec"veya bağımlılığıntarget platformiçin oluşturulduğunu belirten"target"olabilir. Bu farkın tipik bir örneği, mobil uygulamalar oluşturulurken görülür. Bu durumdatarget platform,AndroidveyaiOSikenexecution platform,Linux,macOSveyaWindowsolur. | 
| aspects | Aspect'lerin sequence'ı;
                                     varsayılan değer []Bu özellik tarafından belirtilen bağımlılığa veya bağımlılıklara uygulanması gereken yönler. | 
label_list
Attribute attr.label_list(allow_empty=True, *, default=[], doc=None, allow_files=None, allow_rules=None, providers=[], flags=[], mandatory=False, cfg=None, aspects=[])
Bir etiket listesi özelliği için şema oluşturur. Bu, bir bağımlılık özelliğidir. İlgili ctx.attr özelliği, Targets list türünde olacaktır.
Bu özellik, benzersiz Label değerleri içeriyor. Label yerine bir dize sağlanırsa etiket oluşturucu kullanılarak dönüştürülür. Etiket yolunun göreli kısımları (depo dahil, yeniden adlandırılmış olabilir), oluşturulan hedefin paketiyle ilgili olarak çözülür.
Analiz sırasında (kuralın uygulama işlevi içinde), ctx.attr öğesinden özellik değeri alınırken etiketler ilgili Target ile değiştirilir. Bu sayede, mevcut hedefin bağımlılıklarının sağlayıcılarına erişebilirsiniz.
          
      
Parametreler
| Parametre | Açıklama | 
|---|---|
| allow_empty | Varsayılan değer TrueÖznitelik boş olabilirse True. | 
| default | Etiket'lerin sırası veya işlev;
                                     varsayılan değer []Kural oluşturulurken bu özellik için değer verilmezse kullanılacak varsayılan değer. Varsayılan değerleri belirtmek için dizeleri veya Labelişlevini kullanın (ör.attr.label_list(default = ["//a:b", "//a:c"])). | 
| doc | string veya None;
                                     varsayılan değerNoneÖzelliğin, doküman oluşturma araçları tarafından çıkarılabilen açıklaması. | 
| allow_files | bool; veya string'lerin sequence'ı; veya None;
                                     varsayılan değerNoneFilehedeflerine izin verilip verilmeyeceği.True,False(varsayılan) veya izin verilen dosya uzantılarının listesi (örneğin,[".cc", ".cpp"]) olabilir. | 
| allow_rules | Dize dizisi veya None;
                                     varsayılan değerNoneHangi kural hedeflerine (sınıfların adı) izin verilir? Bu işlevin desteği sonlandırıldı (yalnızca uyumluluk için tutuluyor). Bunun yerine sağlayıcıları kullanın. | 
| providers | Varsayılan değer []'dir. Bu özellikte görünen bağımlılıklar tarafından sağlanması gereken sağlayıcılar. Bu bağımsız değişkenin biçimi, sağlayıcı listelerinin listesidir.  | 
| flags | string'lerin sequence'ı;
                                     varsayılan değer []Kullanımdan kaldırıldı, kaldırılacak. | 
| mandatory | Varsayılan değer False'dır. Doğruysa değer açıkça belirtilmelidir ( defaultolsa bile). | 
| cfg | varsayılan değer NoneÖzelliğin yapılandırması. Bağımlılığın execution platformiçin oluşturulduğunu belirten"exec"veya bağımlılığıntarget platformiçin oluşturulduğunu belirten"target"olabilir. Bu farkın tipik bir örneği, mobil uygulamalar oluşturulurken görülür. Bu durumdatarget platform,AndroidveyaiOSikenexecution platform,Linux,macOSveyaWindowsolur. | 
| aspects | Aspect'lerin sequence'ı;
                                     varsayılan değer []Bu özellik tarafından belirtilen bağımlılığa veya bağımlılıklara uygulanması gereken yönler. | 
çıkış
Attribute attr.output(doc=None, mandatory=False)
Bir çıkış (etiket) özelliği için şema oluşturur.
Bu özellik, benzersiz Label değerleri içeriyor. Label yerine bir dize sağlanırsa etiket oluşturucu kullanılarak dönüştürülür. Etiket yolunun göreli kısımları (depo dahil, yeniden adlandırılmış olabilir), oluşturulan hedefin paketiyle ilgili olarak çözülür.
Analiz sırasında, ilgili File, ctx.outputs kullanılarak alınabilir.
          
      
Parametreler
| Parametre | Açıklama | 
|---|---|
| doc | string veya None;
                                     varsayılan değerNoneÖzelliğin, doküman oluşturma araçları tarafından çıkarılabilen açıklaması. | 
| mandatory | Varsayılan değer False'dır. Doğruysa değer açıkça belirtilmelidir ( defaultolsa bile). | 
output_list
Attribute attr.output_list(allow_empty=True, *, doc=None, mandatory=False)
Bu özellik, benzersiz Label değerleri içeriyor. Label yerine bir dize sağlanırsa etiket oluşturucu kullanılarak dönüştürülür. Etiket yolunun göreli kısımları (depo dahil, yeniden adlandırılmış olabilir), oluşturulan hedefin paketiyle ilgili olarak çözülür.
Analiz sırasında, ilgili File, ctx.outputs kullanılarak alınabilir.
          
      
Parametreler
| Parametre | Açıklama | 
|---|---|
| allow_empty | Varsayılan değer TrueÖznitelik boş olabilirse True. | 
| doc | string veya None;
                                     varsayılan değerNoneÖzelliğin, doküman oluşturma araçları tarafından çıkarılabilen açıklaması. | 
| mandatory | Varsayılan değer False'dır. Doğruysa değer açıkça belirtilmelidir ( defaultolsa bile). | 
dize
Attribute attr.string(default='', doc=None, mandatory=False, values=[])
Parametreler
| Parametre | Açıklama | 
|---|---|
| default | string; veya NativeComputedDefault;
                                     varsayılan değer ''Kural oluşturulurken bu özellik için değer verilmezse kullanılacak varsayılan değer. | 
| doc | string veya None;
                                     varsayılan değerNoneÖzelliğin, doküman oluşturma araçları tarafından çıkarılabilen açıklaması. | 
| mandatory | Varsayılan değer False'dır. Doğruysa değer açıkça belirtilmelidir ( defaultolsa bile). | 
| values | string'lerin sequence'ı;
                                     varsayılan değer []Özellik için izin verilen değerlerin listesi. Başka bir değer verilirse hata oluşur. | 
string_dict
Attribute attr.string_dict(allow_empty=True, *, default={}, doc=None, mandatory=False)
Parametreler
| Parametre | Açıklama | 
|---|---|
| allow_empty | Varsayılan değer TrueÖznitelik boş olabilirse True. | 
| default | varsayılan değer {}Kural oluşturulurken bu özellik için değer verilmezse kullanılacak varsayılan değer. | 
| doc | string veya None;
                                     varsayılan değerNoneÖzelliğin, doküman oluşturma araçları tarafından çıkarılabilen açıklaması. | 
| mandatory | Varsayılan değer False'dır. Doğruysa değer açıkça belirtilmelidir ( defaultolsa bile). | 
string_keyed_label_dict
Attribute attr.string_keyed_label_dict(allow_empty=True, *, default={}, doc=None, allow_files=None, allow_rules=None, providers=[], flags=[], mandatory=False, cfg=None, aspects=[])
Değeri, anahtarların dize, değerlerin ise etiket olduğu bir sözlük olan bir özellik için şema oluşturur. Bu, bir bağımlılık özelliğidir.
Bu özellik, benzersiz Label değerleri içeriyor. Label yerine bir dize sağlanırsa etiket oluşturucu kullanılarak dönüştürülür. Etiket yolunun göreli kısımları (depo dahil, yeniden adlandırılmış olabilir), oluşturulan hedefin paketiyle ilgili olarak çözülür.
Analiz sırasında (kuralın uygulama işlevi içinde), ctx.attr öğesinden özellik değeri alınırken etiketler ilgili Target ile değiştirilir. Bu sayede, mevcut hedefin bağımlılıklarının sağlayıcılarına erişebilirsiniz.
          
      
Parametreler
| Parametre | Açıklama | 
|---|---|
| allow_empty | Varsayılan değer TrueÖznitelik boş olabilirse True. | 
| default | dict veya function;
                                     varsayılan değer {}Kural oluşturulurken bu özellik için değer verilmezse kullanılacak varsayılan değer. Varsayılan değerleri belirtmek için dizeleri veya Labelişlevini kullanın. Örneğin,attr.string_keyed_label_dict(default = {"foo": "//a:b", "bar": "//a:c"}). | 
| doc | string veya None;
                                     varsayılan değerNoneÖzelliğin, doküman oluşturma araçları tarafından çıkarılabilen açıklaması. | 
| allow_files | bool; veya string'lerin sequence'ı; veya None;
                                     varsayılan değerNoneFilehedeflerine izin verilip verilmeyeceği.True,False(varsayılan) veya izin verilen dosya uzantılarının listesi (örneğin,[".cc", ".cpp"]) olabilir. | 
| allow_rules | Dize dizisi veya None;
                                     varsayılan değerNoneHangi kural hedeflerine (sınıfların adı) izin verilir? Bu işlevin desteği sonlandırıldı (yalnızca uyumluluk için tutuluyor). Bunun yerine sağlayıcıları kullanın. | 
| providers | Varsayılan değer []'dir. Bu özellikte görünen bağımlılıklar tarafından sağlanması gereken sağlayıcılar. Bu bağımsız değişkenin biçimi, sağlayıcı listelerinin listesidir.  | 
| flags | string'lerin sequence'ı;
                                     varsayılan değer []Kullanımdan kaldırıldı, kaldırılacak. | 
| mandatory | Varsayılan değer False'dır. Doğruysa değer açıkça belirtilmelidir ( defaultolsa bile). | 
| cfg | varsayılan değer NoneÖzelliğin yapılandırması. Bağımlılığın execution platformiçin oluşturulduğunu belirten"exec"veya bağımlılığıntarget platformiçin oluşturulduğunu belirten"target"olabilir. Bu farkın tipik bir örneği, mobil uygulamalar oluşturulurken görülür. Bu durumdatarget platform,AndroidveyaiOSikenexecution platform,Linux,macOSveyaWindowsolur. | 
| aspects | Aspect'lerin sequence'ı;
                                     varsayılan değer []Bu özellik tarafından belirtilen bağımlılığa veya bağımlılıklara uygulanması gereken yönler. | 
string_list
Attribute attr.string_list(mandatory=False, allow_empty=True, *, default=[], doc=None)
Parametreler
| Parametre | Açıklama | 
|---|---|
| mandatory | Varsayılan değer False'dır. Doğruysa değer açıkça belirtilmelidir ( defaultolsa bile). | 
| allow_empty | Varsayılan değer TrueÖznitelik boş olabilirse True. | 
| default | string'lerin sequence'ı veya NativeComputedDefault;
                                     varsayılan değer []Kural oluşturulurken bu özellik için değer verilmezse kullanılacak varsayılan değer. | 
| doc | string veya None;
                                     varsayılan değerNoneÖzelliğin, doküman oluşturma araçları tarafından çıkarılabilen açıklaması. | 
string_list_dict
Attribute attr.string_list_dict(allow_empty=True, *, default={}, doc=None, mandatory=False)
Parametreler
| Parametre | Açıklama | 
|---|---|
| allow_empty | Varsayılan değer TrueÖznitelik boş olabilirse True. | 
| default | varsayılan değer {}Kural oluşturulurken bu özellik için değer verilmezse kullanılacak varsayılan değer. | 
| doc | string veya None;
                                     varsayılan değerNoneÖzelliğin, doküman oluşturma araçları tarafından çıkarılabilen açıklaması. | 
| mandatory | Varsayılan değer False'dır. Doğruysa değer açıkça belirtilmelidir ( defaultolsa bile). |