Thread Moose-Attribut weiterleiten (7 answers)
Opened by Martin at 2014-04-28 00:04

Gast Martin
 2014-04-29 13:36
#175108 #175108
Danke, das habe ich zwar mal überflogen, aber unterschätzt. Ich verstehe traits noch nicht so recht.

Das bringt mich einen Schritt weiter, und ich brauche nun zumindest lesenderweise nicht mehr direkt auf das ArrayRef container zugreifen.

Ich bräuchte jedoch noch sowas wie (quick'n'dirty):
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package ABC;
use Moose;

has 'container' => (
    is      => 'rw',
    isa     => 'ArrayRef',
    default => sub { return [ 0..10 ] },
    traits  => [ 'Array' ],
    handles => {
        get_piece_by_id => 'get',    # funktioniert
        # die folgenden funktionieren nicht
        get_color => sub {
            return shift->get_piece_by_id(0)->{color}->[0]; 
        }, 
        set_color => sub {
            shift->container->[0]->{color}->[0]) = shift; # leider kein set
        },
    },
);


Dank deiner Hilfe vermute ich, dass ich das mit Traits lösen kann. Ich versuche es.

Vielen Dank
Last edited: 2014-04-29 13:58:47 +0200 (CEST)

View full thread Moose-Attribut weiterleiten