[bcn-pm] En un objecte, fer servir el varlor d'un atribut per crear dinàmicament els altres atributs

mimosinnet mimosinnet a gmail.com
div gen 11 15:48:25 PST 2013


He escrit la pregunta als Perl Mongers:
http://www.perlmonks.org/?node_id=1012994

Però ho pregunto també aquí que m'és més fàcil d'expressar-me. 

Al fer servir la distribució Acpi::Battery me n'he adonat que fa servir
els valors del directory /proc/acpi/battery/, mentre que actualment els
valors es guarden a /sys/class/power_supply/. Jugant amb el Moose per
tal de recuperar els valors de /sys/class/power_supply/ he acabat amb
aquest codi:

----
package Acpi::Battery::Values;
use Acpi::Arxiu;  # Reads the content of the file
use Moose;

has 'directory' => (
    is => "ro",
    isa => "Str",
);

my $dir = "/sys/class/power_supply/BAT1/uevent";
my $object = Acpi::Arxiu->new(filename => "$dir");
my $content = $object->content;
my %value = $content =~ /^POWER_SUPPLY_(\w+)=(.+)$/mg;

foreach (keys %value) {
    has lc($_) => (
        is => "ro",
        default => $value{$_},
    );
}
1;
----

Meravellós per definir d'un cop tots els valors com atributs de
Acpi::Battery::Values. No he aconseguit, però, que l'atribut
'directory' el pugui fer servir en la variable $dir per tal de crear
posteriorment els altres atributs de manera dinàmica. Qualsevol pista
serà agraïda.

Gràcies!


-- 
Mimosinnet
Linux User: #463211
41:24:51N (41.4141) 2:11:24E (2.1902)

Ningún Lugar
Activisme Cultural per a la Transformació Social
http://generatech.org/ningunlugar

Fractalitats en Investigació Crítica
Investigació Crítica per a la Transformació Social
http://psicologiasocial.uab.es/fic

-------------- part següent --------------
A non-text attachment was scrubbed...
Name: no disponible
Type: application/pgp-signature
Size: 198 bytes
Desc: no disponible
URL: <http://mail.pm.org/pipermail/barcelona-pm/attachments/20130112/13e30f3d/attachment.bin>


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