ReleaseAction.

ReleaseAction - Call Ações no lançamento.
Baixe Agora

ReleaseAction. Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • Perl Artistic License
  • Preço:
  • FREE
  • Nome do editor:
  • Ben Tilly
  • Site do editor:
  • http://search.cpan.org/~tilly/Text-xSV-0.16/lib/Text/xSV.pm

ReleaseAction. Tag


ReleaseAction. Descrição

ReleasEAction - Call Ações no lançamento. ReleaseAction - Call Ações no lançamento.Synopsis Use ReleaseAction 'On_release'; {# OO Estilo Minha $ Handle = ReleaseAction-> Novo (Sub {Imprimir "Exitando Scopen"}); Imprimir "no Scopen"; } {# Estilo funcional meu $ handle = on_release {Imprimir "Exigir Scopen"}; Imprimir "no Scopen"; } {my $ rollback = on_release {rollback_trans ()}; if (do_stuff ()) {$ rollback-> cancelar (); }} Isso fornece uma maneira fácil de criar alças opacas que farão algo quando forem destruídas. Existem duas maneiras de criar uma alça nova. Ambos levam um ou mais argumentos, com o primeiro sendo a ação a tomar quando a alça é liberada e a (opcional) restante sendo os argumentos que a alça vai conseguir .NEW é o construtor orientado para o método. Minha $ Handle = ReleaseAction-> Novo (Sub {Imprimir Shift}, "adeus Cruel Worldn"); e uma função opcional on_release que você pode importar. Para aqueles que gostam desse tipo de coisa, eu forneci o protótipo @ para o açúcar sintático. Meu $ handle = on_release {Imprimir "adeus Cruel Worldn"}; e se você decidir que não quer fazer a ação no lançamento depois de tudo, você pode ligar para o método Cancel (). Como sugerido na sinopse, isso é útil se você deseja configurar a mecânica transacional. Faça a ação de liberação Faça sua limpeza. E, em seguida, quando você confirma suas alterações, cancele a limpeza.Exemplo Use ReleaseAction 'on_release'; # Isso faz a mesma coisa que o módulo selectsaver. sub tmp_select {on_release {Selecionar Shift} Selecione Shift; } Imprimir "Esta impressão vai para stdoutn"; {MY $ HOLD_SELECT = TMP_SELECT (* stderr); Imprimir "Esta impressão vai para Stderrn"; } Imprimir "Impressão para Stdout AGASN"; um exemplo mais longo usa carpa; Use CWD; Use o ReleasEAction; sub cd_to {chdir ($ _ ) ou confessar ("não pode chdir para $ _ : $!"); } sub tmp_cd {my $ cwd = cwd (); cd_to (turno); ReleasEAction-> Novo (CD_TO, $ CWD); } Sub algo_Interesting {my $ in_dir = tmp_cd ("some_dir"); # Faça algo interessante no novo dir # Eu irei retornar automaticamente ao velho dir # quando eu sair da sub-rotina e $ in_dir vai # fora do escopo. } Requisitos: · Perl.


ReleaseAction. Software Relacionado

ftp4che.

ftp4che é uma biblioteca FTP para Java 1.4 e 5.0 que apresenta suporte para SSL implícito. ...

354

Download