Classe :: adereços.

Classe :: Props é uma pragma para implementar acessadores de Lvalue com opções.
Baixe Agora

Classe :: adereços. Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • Perl Artistic License
  • Preço:
  • FREE
  • Nome do editor:
  • Domizio Demichelis
  • Site do editor:
  • http://search.cpan.org/~domizio/CGI-Application-Plus-1.21/lib/CGI/Application/CheckRM.pm

Classe :: adereços. Tag


Classe :: adereços. Descrição

Classe :: Props é uma pragma para implementar acessadores de Lvalue com opções. Classe :: Props é um pragma para implementar acessadores de Lvalue com opções.SynopsisClass pacote MyClass; # Implementar construtor sem opções Use Classe :: Const; # Apenas acessadores sem opções (lista de strings) Use Classe :: Props @PROP_NAMES; # @PROP_NAMES (1) # Uma propriedade com validação e padrão (lista de hash refs) Use Classe :: Props {nome => 'dígitos', validação => sub {/ ^ d + z /}, # apenas dígitos padrão = > 10}; # Um grupo de propriedades com opções completas comuns use class :: aderePs {name => @ prop_names2, # @ prop_names2 (1) padrão => sub {$ _ -> Other_default}, validação => sub {/ w + / }, protegido => 1, no_strict => 1, permitido => qr / :: permitido_sub $ /}; # todos os itens acima em apenas uma etapa (lista de strings e hash refs) Use Classe :: Props @prop_names, # @prop_names (1) {nome => 'dígitos', validação => sub {/ ^ d + z /} , padrão => 10}, {nome => @ prop_names2, # @ prop_names2 (1) padrão => sub {$ _ -> Other_default}, validação => sub {/ w + /}, protegido => 1, No_strict => 1, permitido => qr / :: permitido_sub $ /}; # (1) deve ser definido em um bloco de início para ter efeito no timeusage de compilação: $ Object = MyClass-> Novo (Dígitos => '123'); $ Object-> Dígitos = '123'; MyClass-> dígitos = '123'; # mesma coisa $ objeto-> dígitos ('123'); # antiga maneira suportada $ D = $ object-> dígitos; # $ D == 123 $ d = $ myclass :: dígitos # $ D == 123 UNDEF $ Object-> Dígitos # $ Object-> dígitos == 10 (padrão) # estes croak $ objeto-> dígitos = "xyz "; MyClass-> dígitos = "xyz"; # Isto irá contornar o Accessor Whithout Croakout $ Myclass :: Dígitos = "xyz"; Este pragma implementa facilmente os métodos de Accessor de Lvalue para as propriedades de sua classe (LVALUE significa que você pode criar uma referência a ela, atribuir a ele e aplicar um regex Para isso, veja também "problema conhecido"), que são modelos de função muito eficientes que seus módulos podem importar no tempo de compilação. "Esta técnica economiza no tempo de compilação e no uso da memória, e é menos propenso a erros, já que as verificações de sintaxe acontecem no momento do compilado." (citado de "modelos de função" no manpage Perlref). Você pode evitar completamente o Accessor, apenas declarando os nomes e, eventualmente, o valor padrão, o código de validação e outra opção de suas propriedades. O método de acesso criou um escalar na classe Isso implementa (por exemplo, $ classe :: any_property) e define / obtém usando as opções que você definiu. Este módulo permite também "preguiçoso" Computação de dados (consulte a opção padrão) .Requirements: · Versão Perl> = 5.6.1instalação: CPAN Perl -mcpan -e 'instalar o Otools'standard InstallationFrom O diretório onde este arquivo está localizado, digite: perl makefile.pl Fazer o teste Fazer a instalação


Classe :: adereços. Software Relacionado