Valeu pessoal!
2012/12/4 Renato Santos <[email protected]> > Sim, > > e não tem 'na teoria', ta programado pra receber um scalar! > > > 2012/12/4 Andre Carneiro <[email protected]> > >> Hummm... acho que entendi... na verdade \@_ tem as referências para: >> $foo, $baz e $gorch. Os outros parâmetros são apenas a especificação de >> como eu quero que esses dados sejam validados, é isso? >> >> Se for assim, em 'teoria', eu poderia fazer isso de uma outra forma: >> >> <code> >> >> sub bar { >> my $self = shift; >> my @Values_to_validate = ('val1','val2','val3'); >> my ( $foo, $baz, $gorch ) = validated_list( >> \@Values_to_validate, >> foo => { isa => 'Foo' }, >> baz => { isa => 'ArrayRef | HashRef', optional => 1 }, >> gorch => { isa => 'ArrayRef[Int]', optional => 1 } >> ); >> [ $foo, $baz, $gorch ]; >> } >> >> </code> >> >> >> Correto? >> >> >> Cheers! >> >> >> >> >> 2012/12/4 Eden Cardim <[email protected]> >> >>> The following message is a courtesy copy of an article >>> that has been posted to gmane.comp.lang.perl.perl-mongers.saopaulo as >>> well. >>> >>> >>>>> "Andre" == Andre Carneiro < >>> [email protected]> writes: >>> >>> Andre> Hummm... acho que fui vago demais! Vamos ver se consigo me >>> Andre> expressar melhor... >>> >>> Andre> A pergunta é a seguinte: tudo o que eu passo de útil para o >>> Andre> método ' validated_list' não tem nada a ver com \@_. Então >>> Andre> por que eu preciso passar isso como referência? Referência >>> Andre> de que? >>> >>> Andre> Mesmo olhando o código do módulo, não consegui entender >>> Andre> direito o que ele leva nessa referência, e ainda por cima, >>> Andre> o método é estático! Que diabos tem dentro desse \@_ ? E >>> Andre> como isso vai parar lá, já que não tem instância nenhuma do >>> Andre> módulo, só um 'use'...(método estático, tá >>> Andre> ligado?). Desconfio que a resposta tenha a ver com o 'use', >>> Andre> mas não tenho certeza. >>> >>> Observe que a assinatura do método é >>> validated_hash($argumentos,%especificacao). >>> >>> O único motivo pelo qual você precisa passar o @_ por referência é pra >>> não misturar os argumentos com a especificação, que vem depois. >>> >>> -- >>> Eden Cardim -- Insolide Soluções de TI Ltda. >>> +55 11 9644 8225 >>> http://insoli.de >>> =begin disclaimer >>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>> SaoPaulo-pm mailing list: [email protected] >>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>> =end disclaimer >>> >> >> >> >> -- >> André Garcia Carneiro >> Software Engineer >> (11)982907780 >> >> =begin disclaimer >> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >> SaoPaulo-pm mailing list: [email protected] >> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >> =end disclaimer >> >> > > > -- > Saravá, > Renato CRON > http://www.renatocron.com/blog/ > @renato_cron <http://twitter.com/#!/renato_cron> > > > =begin disclaimer > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ > SaoPaulo-pm mailing list: [email protected] > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> > =end disclaimer > > -- André Garcia Carneiro Software Engineer (11)982907780
=begin disclaimer Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ SaoPaulo-pm mailing list: [email protected] L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> =end disclaimer
