¿Hay un equivalente de Ruby a los datos de Perl :: Rmap?
-
03-07-2019 - |
Pregunta
Data :: Rmap de Perl le permite evaluar recursivamente un BLOQUE sobre una lista de estructuras de datos (estableciendo localmente $ _ para cada elemento) y devuelva la lista compuesta por los resultados de dichas evaluaciones. $ _ se puede usar para modificar los elementos.
Esto es útil para iterar sobre elementos como hashes anidados, o jerarquías de matrices de hashes y similares.
Solución
Enumerable
de Ruby hace todo lo que quieres, creo. " ... y devolver la lista compuesta por los resultados de dichas evaluaciones " indica que desea Enumerable # map
. Mi primer intento sería algo como esto:
[ {...}, {...}, {...}, ... ].map do |hash|
hash.something
do_other_stuff_with(hash)
hash # important to have as last line b/c of how #map works
end
Otros consejos
Sin mirar realmente los detalles, no estoy seguro de que necesites un módulo para eso en Ruby. Los iteradores y los bloques están ahí para hacer lo que quieras.