[Cascavel-pm] Sintaxe
Luis Campos de Carvalho
monsieur_champs em yahoo.com.br
Quarta Dezembro 21 09:19:31 PST 2005
--- Alceu <glasswalk3r em yahoo.com.br> escreveu:
> --- Paulo <paulo.ricardo em expresso.com.br> escreveu:
> > $varipavelX :: $varipavelY
>
> O correto é $variavelx::variavely. A variavely é uma
> variável do pacote variavelx.
Opa! Cuidado! Muita hora nessa calma... ;-)
Posso escrever
$DynaPack::$DynaVar
para resolver uma variável dinâmicamente nomeada dentro de um pacote dinâmicamente nomeado. Eu
acredito que com /strict/ isso não funciona muito bem (acho que existe uma ou duas mensagens de
erro com palavrões especialmente para este caso...).
Aqui tem uma amostra grátis:
__PERL__
# -*- perl -*-
package PacoteA;
$variavel1 = 'Pacote A - Variavel 1';
$variavel2 = 'Ainda outra variavel';
package PacoteB;
$variavel1 = 'Pacote B - Variavel 1';
$variavel2 = 'Outra variavel';
package main;
for my $pack ( qw( PacoteA PacoteB ) ){
for my $var ( qw( variavel1 variavel2 ) ){
print $pack.'::'.$var.' = "'. ${"$pack::$var"} .'".'."\n";
}
}
__END__
Claro, eu tenho uns poucos usos para este tipo de brincadeira... mas é certamente um recurso
interessante para o meu próximo JAPH... ;-)
Putamplexos!
--
Luis Campos de Carvalho
Member of "São Paulo Perl Mongers",
Unix SysAdmin & OCP/DBA Oracle
_______________________________________________________
Yahoo! doce lar. Faça do Yahoo! sua homepage.
http://br.yahoo.com/homepageset.html
Mais detalhes sobre a lista de discussão Cascavel-pm