Provider

Konstruktor untuk objek nilai sederhana, yang dikenal sebagai instance penyedia.
Nilai ini memiliki fungsi ganda:
  • Ini adalah fungsi yang dapat dipanggil untuk membuat 'struct'-seperti nilai:
    DataInfo = provider()
    d = DataInfo(x = 2, y = 3)
    print(d.x + d.y) # prints 5
    Catatan: Beberapa penyedia, yang ditentukan secara internal, tidak mengizinkan pembuatan instance
  • Ini adalah kunci untuk mengakses instance penyedia di Target
    DataInfo = provider()
    def _rule_impl(ctx)
      ... ctx.attr.dep[DataInfo]
Buat Provider baru menggunakan fungsi penyedia.