Tie :: OneOff.

Tie :: OneOff é um módulo Perl para criar variáveis amarradas sem definir um pacote separado.
Baixe Agora

Tie :: OneOff. Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • Perl Artistic License
  • Preço:
  • FREE
  • Nome do editor:
  • Yuval Kogman
  • Site do editor:
  • http://search.cpan.org/~nobull/

Tie :: OneOff. Tag


Tie :: OneOff. Descrição

Tie :: OneOff é um módulo Perl para criar variáveis amarradas sem definir um pacote separado. Tie :: OneOff é um módulo Perl para criar variáveis amarradas sem definir um pacote separado.Synopsis exigir gravata: OneOff; Gravata My% Rev, 'Tie :: OneOff' => Sub {REVERSER SHIFT; }; Imprimir "$ Rev {OLLEH} N"; # Olá sub mak_counter {my $ step = shift; meu $ i = 0; Tie :: OneOff-> Scalar ({Base => $ i, # implica: store => sub {$ i = shift} fetch => sub {$ i + = $ step},}); } Meu $ c1 = make_counter (1); meu $ c2 = make_counter (2); $$ C2 = 10; Imprimir "$$ C1 $$ C2 $$ C2 $$ C2 $$ $$ C1 $$ C1N"; # 11214162 3 Sub foo: lvalue {+ tie :: oneoff-> lvalue ({armazenamento => sub {print "foo () = $ _ n"}, busck => sub {"wble" },}); } foo = 'Wobble'; # foo () = wobble print "foo () =", foo, "n"; # foo () = wibblethe perl laço mecanismo amarra uma variável perl para um objeto Perl. Isso significa que, convencionalmente, para cada conjunto distinto de semânticas variáveis amarradas, é necessário criar um novo pacote. A tabela de símbolos de pacote, em seguida, atua como uma tabela de despacho para as ações intrínsecas (como busca, armazenar, buscar) que podem ser executadas em variáveis perl.setimos que pareceria mais natural associar um hash de mesa de despacho diretamente com a variável e fingir Se o objeto intermediário não existisse. Isto é o que o empate: OneOff faz.Est é importante notar que neste modelo não há objeto para manter os dados da instância para a variável amarrada. Os callbacks na tabela de despacho são chamados não como métodos de objeto, mas como sub-rotinas simples. Se houver alguma informação de instância para uma variável amarrada usando o empate: OneOff, ele deve estar em variáveis lexicais que são referenciadas pelo fechamento de callback.tie :: OneOff não fornece quaisquer chullbacks padrão. Isso pode definir uma interface de hash completa em destaque bastante tedioso. Para simplificar as questões, a base de elementos na tabela de despacho pode ser usada para especificar um "objeto base" cujos métodos fornecem os chullbacks padrão. Se uma referência a uma variável perl desencadeada for especificada como a base, a variável será abençoada no pacote apropriado :: STDXXXX. Neste caso, a variável desencadeada usada como a base deve, é claro, ser do mesmo tipo que a variável que está sendo amarrada.in make_counter () na sinopse acima, a variável $ eu é abençoada em gravata :: Stdscalar. Como não há nenhuma loja de explicção na tabela de despacho, uma tentativa de armazenar em um contador é implementada por chamadas ($ i) -> armazenamento (@_) que por sua vez é resolvido como empate :: Stdscalar :: Loja ($ i, @_) que por sua vez é equivalente a $ i = shift.since muitas variáveis amarradas precisam apenas de um texto de busca :: OneOff laços também pode ser especificado, fornecendo uma referência de código simples que é tomada para ser a chamada de chamada de busca da variável. Os métodos de classe escalar, hash e matrizes assumem os mesmos argumentos que o Tie Inferface e retornam uma referência a uma variável amarrada anônima. O método de classe lvalue é como escalar, mas retorna um lvalue em vez de uma referência.Requirements: · Requisitos de Perl: · Perl.


Tie :: OneOff. Software Relacionado