Frage

Perl Data :: rmap können Sie rekursiv einen Block über eine Liste auswerten von Datenstrukturen (lokal $ _ an jedes Element gesetzt wird) und die Liste kehren die Ergebnisse dieser Bewertungen zusammengesetzt aus. $ _ Kann verwendet werden, um die Elemente zu ändern.

Dies ist nützlich für über Dinge wie verschachtelte Hashes Iterieren oder Hierarchien von Arrays von Hashes und dergleichen.

War es hilfreich?

Lösung

Rubys Enumerable tut alles, was Sie wollen, glaube ich. „... und die Liste zurückzukehren, bestehend aus den Ergebnissen dieser Bewertungen“ zeigen Sie Enumerable#map wollen. Mein erster Sprung würde wie folgt sein:

[ {...}, {...}, {...}, ... ].map do |hash|
  hash.something
  do_other_stuff_with(hash)
  hash                  # important to have as last line b/c of how #map works
end

Andere Tipps

Ohne wirklich auf der Suche in die Details, ich bin nicht sicher, ob Sie das in Ruby ein Modul benötigen. Iteratoren und Blöcke gibt es zu tun, was Sie wollen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top