Provider

Laporkan masalah Lihat sumber Malam · 7,3 · 7,2 · 7,1 · 7,0 · 6,5

Konstruktor untuk objek nilai sederhana, yang disebut instance penyedia.
Nilai ini memiliki tujuan ganda:

  • Ini adalah fungsi yang dapat dipanggil untuk membuat nilai seperti 'struct':
    DataInfo = provider()
    d = DataInfo(x = 2, y = 3)
    print(d.x + d.y) # prints 5
    Catatan: Beberapa penyedia, yang ditetapkan 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.