[bcn-pm] Lista de metodos de una clase/un objeto

Alex Muntada alexmaalexm.org
Dil Gen 28 10:26:19 PST 2008


* Bruno <brunorcagmail.com>:

> Buscaba por alguna solución para conseguir esto:
>
>   my @class_methods = Some::Class->methods;
>   my @object_methods = $some_object->methods;

Fins on jo sé, l'única manera de distingir un mètode de la
classe d'un dels objectes és la manera de cridar-lo (si voleu,
també d'implementar-lo). Així doncs, donat un paquet
qualsevol, no és possible determinar si un mètode és de
la classe o no sense mirar el codi.

Tens maneres d'aconseguir la llista de mètodes d'una classe,
tal com explica en MJD al seu blog, però no podrar saber si
són de la classe o no:

http://blog.plover.com/prog/perl/Help.pm.html

Em sona que al PBP hi ha alguna referència als mètodes de
la classe, potser hi ha algun mòdul com el Class::Std que
et pot ajudar si les classes que analitzes utilitzen algun tipus
de mecanismes per distingir el tipus de mètodes. Però no
crec que hi hagi una fórmula general.

D'altra banda, si ens expliques per què necessites saber
això, potser se'ns acut una altra manera de resoldre el teu
problema.

-- 
Alex Muntada <alexmaalexm.org>
http://alexm.org/


Més informació de la llista de correu Barcelona-pm