DADOS :: RMAP.

mapa recursivo, aplique um bloco a uma estrutura de dados
Baixe Agora

DADOS :: RMAP. Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • Perl Artistic License
  • Nome do editor:
  • Brad Bowman
  • Site do editor:
  • http://search.cpan.org/~bowmanbs/Regexp-Genex-0.07/lib/Regexp/Genex.pm

DADOS :: RMAP. Tag


DADOS :: RMAP. Descrição

Mapa recursivo, aplique um bloco a uma estrutura de dados Dados :: RMAP é um módulo Perl para avaliar recursivamente um bloco em uma lista de estruturas de dados (configurando localmente $ _ para cada elemento) e devolva a lista composta dos resultados de tais avaliações. $ _ pode ser usado para modificar os elementos.data::RMap atualmente atravessa hash, matriz, escalar e glob tipos de referência e ignora os outros. Dependendo do qual Rmap_ * Wrapper é usado, o bloco é chamado apenas para valores escalares, matrizes, hashes, referências, todos os elementos ou uma combinação personalizável. A lista de estruturas de dados é percorrida pré-ordem em uma profundidade-primeira moda. Ou seja, o bloco é chamado para a referência do contêiner antes é que é chamado de seus elementos (embora consulte "Recurse" abaixo para a ordem pós-ordem). Os valores de um hash são percorridos no pedido usual "valores" que podem afetar alguns aplicativos. Se a sub-rotina "corte" for chamada no bloco, então a travessia pára para essa ramificação, digamos se você "cortar" uma matriz, então o código nunca é chamado por seus elementos (ou seus sub-elementos). Para retornar simultaneamente valores e corte, basta passar a lista de retorno para cortar: corte ('adicionar', 'para', 'retornado'); o primeiro parâmetro para o bloco é um objeto que mantém o estado da travessia. Os métodos disponíveis neste objeto são descritos em "Objeto State" abaixo.Synopsis $ Perl -mdata :: RMap -e 'Imprimir RMAP {$ _} 1, , \ 4, "\ n" 1234 $ Perl -mdata :: RMAP =: TODA RMAP_ALL {PRINT ($ _) || "?") "\ n"} \ \ @ARRAY, \% hash, \ * glob; # Saída (Nota: um glob sempre tem um escalar, daí os dois últimos itens) # array # hash # glob # escalar #? # Maiúsculas suas folhas em lugar $ array = ; $ hash = {key => "um valor"}; RMap {$ _ = UC $ _; } $ array, $ hash; Use dados :: dumper; $ Data :: Dumper :: terceiro = 1; $ Data :: Dumper :: Indent = 0; Imprimir dumper ($ matriz), "", dumper ($ hash), "\ n"; # Saída # {'key' => 'um valor'} # simples dumper array. # Usa $ self-> Recurse método para alterar a ordem travessia ($ despejo) = rmap_to {return "'$ _'" a menos que ref ($ _); # Scalars são citados e devolvidos a sua auto = mudança; # Use $ self-> Recurse para obter resultados e envolva-os devolução ''; } Array | Valor, , 4]], 5]; imprimir "$ despejo \ n"; # Saída # ,' 4 ']],' 5 '] Requisitos: · Perl.


DADOS :: RMAP. Software Relacionado