1package Base1; 2use Class::Std; 3 4my %foo : ATTR( :init_arg<foo> ); 5my %bar : ATTR( :init_arg<bar> ); 6 7sub foo {} 8 9package Base2; 10use Class::Std; 11 12my %baz : ATTR( :set<baz> ); 13 14sub foo {} 15 16package Der; 17use base qw( Base1 Base2 ); 18 19 20package Other; 21use Class::Std; 22 23my %qux : ATTR( :set<qux> ); 24 25 26package main; 27 28my $obj = Der->new({foo=>'foo val', bar=>42}); 29print $obj->_DUMP(); 30 31my $obj2 = Other->new(); 32print $obj2->_DUMP(); 33 34