Dati :: RMAP.

Mappa ricorsiva, applicare un blocco a una struttura dati
Scarica ora

Dati :: RMAP. Classifica e riepilogo

Annuncio pubblicitario

  • Rating:
  • Licenza:
  • Perl Artistic License
  • Nome editore:
  • Brad Bowman
  • Sito web dell'editore:
  • http://search.cpan.org/~bowmanbs/Regexp-Genex-0.07/lib/Regexp/Genex.pm

Dati :: RMAP. Tag


Dati :: RMAP. Descrizione

Mappa ricorsiva, applicare un blocco a una struttura dei dati Dati :: RMAP è un modulo perl per valutare ricorsivamente un blocco su un elenco di strutture di dati (impostando localmente $ _ a ciascun elemento) e restituire l'elenco composto dai risultati di tali valutazioni. $ _ può essere utilizzato per modificare gli elementi.Data ::RMAP attualmente attraversa i tipi di riferimento di hash, array, scalare e glob e ignora gli altri. A seconda del quale viene utilizzato il wrapper RMAP_ *, il blocco è chiamato solo per valori scalari, array, hash, riferimenti, tutti gli elementi o una combinazione personalizzabile. L'elenco delle strutture dei dati è attraversato il pre-ordine in una profondità prima moda. Cioè, il blocco è chiamato per il riferimento del contenitore prima è chiamato per gli elementi dei suoi elementi (anche se vedere "Ricorre" di seguito per il post-ordine). I valori di un hash sono attraversati nel solito ordine "valori" che possono influire su alcune applicazioni. Se la subroutine "tagliata" è chiamata nel blocco, quindi la traversata si arresta per quel ramo, dì se si "taglia" un array allora il codice non è mai chiamato per gli elementi (oi loro sub-elementi). Per restituire simultaneamente valori e tagliare, passa semplicemente l'elenco di ritorno per tagliare: tagliare ('Aggiungi', 'a', 'restituito'); il primo parametro al blocco è un oggetto che mantiene lo stato del traversal. I metodi disponibili su questo oggetto sono descritti in "Stato oggetto" di seguito.Synopsis $ perl -mdata :: rmap -e 'stampa rmap {$ _} 1, , \ 4, "\ n"' 1234 $ perl -mdata :: rmap =: all rmap_all {stampa (ref ($ _) || "?"), "\ n"} @ @array, \% hash, \ * glob; # Output (nota: un glob ha sempre uno scalare, quindi gli ultimi due elementi) # array # hash # glob # scalare #? # Maiuscolo le tue foglie in-place $ array = ; $ hash = {key => "un valore"}; rmap {$ _ = UC $ _; } $ array, $ hash; Utilizzare i dati :: Dumper; $ Dati :: Dumper :: Terse = 1; $ Dati :: Dumper :: rient = 0; Stampa Dumper ($ array), ", dumper ($ hash)," \ n "; # Output # {'tasto' => 'un valore'} # Dumper di array semplice. # Utilizza $ self-> Metodo di riconoscimento per alterare l'ordine di attraversamento ($ $ dump) = rmap_to {return "'$ _'" a meno di ref ($ _); # Scalari sono citati e restituiti il mio $ Self = Shift; # Utilizzare $ self-> ricursi per afferrare risultati e avvolgili il ritorno ''; } Array | Valore, , 4]], 5]; Stampa "$ dump \ n"; # Output # , '4']]] Requisiti: "5 ']: · Perl.


Dati :: RMAP. Software correlato