Raku-Kurs / Funktionale, nebenläufige, reaktive und Web-Programmierung / Reaktive Programmierung / Supplies
Ein Supply anzapfen
Um ein Supply zu abonnieren, zapfen Sie es an: Sie geben
.tap einen Block, und dieser Block läuft für jeden Wert,
den das Supply aussendet. Am einfachsten experimentiert es sich mit
Supply.from-list, das die Werte einer Liste aussendet:
my $s = Supply.from-list(1, 2, 3);
$s.tap(-> $v { say $v });Das gibt aus:
1
2
3Der Block -> $v { say $v } ist die
Zapfstelle. Das Supply schiebt jeden Wert der Reihe nach
hinein, der Block läuft also dreimal, einmal je Wert.
Die Zapfstelle darf mit dem Wert alles tun, auch ein Ergebnis aufsummieren:
my $total = 0;
Supply.from-list(1, 2, 3).tap(-> $v { $total += $v });
say $total; # 6Hier wird jeder ausgesandte Wert zu $total addiert, das
bei 6 endet. Das Anzapfen ist die Grundhandlung der
reaktiven Programmierung: ein Stück Verhalten mit einem Strom verbinden
und den Strom es antreiben lassen.
Praxis
Lösen Sie 1 Quiz zum Inhalt dieses Themas.
Kursnavigation
← Supplies | Quiz — Supplies →
💪 Oder springen Sie direkt zu den Übungen dieses
Abschnitts.