OVH Cloud OVH Cloud

méthodes prototypées

2 réponses
Avatar
Alex Marandon
Une petite recherche sur google vient de me confirmer ce dont je me suis
aperçu empiriquement : les prototypes ne sont pas appliqués aux méthodes
d'objets.

Cela sera-t-il possible avec Perl 6 ?

Y a-t-il des hacks ou des modules qui permettent ce type de contrôle ?

J'imagine une petite routine, appelée en début de méthode, qui vérifirait
le nombre et le type des arguments reçus, mais j'imagine que je ne suis
pas le premier à avoir l'idée...

--
http://alpage.org

2 réponses

Avatar
Alain BARBET
Alex Marandon wrote:
Une petite recherche sur google vient de me confirmer ce dont je me suis
aperçu empiriquement : les prototypes ne sont pas appliqués aux méthodes
d'objets.

Cela sera-t-il possible avec Perl 6 ?


Don't know.

Y a-t-il des hacks ou des modules qui permettent ce type de contrôle ?


Le controle du nombre d'arguments du tableau @_ ?
use Carp qw!confess!;
sub toto {
confess "Need 3 args" if ($#_<2);
}

Ou l'utilisation de ref - perldoc -f ref
--
Alain BARBET

Avatar
Jedaï
Alain BARBET wrote:
Alex Marandon wrote:

Une petite recherche sur google vient de me confirmer ce dont je me suis
aperçu empiriquement : les prototypes ne sont pas appliqués aux méthodes
d'objets.

Cela sera-t-il possible avec Perl 6 ?



Don't know.


C'est presque certain, vu que le passage d'argument en Perl 6 se fera
principalement par la voix des arguments nommés (avec une très grande
souplesse, et des possibilités très intéressantes), le passage par @_
étant maintenu surtout pour la portabilité de perl5 vers perl6.

Jedaï