The following code shows that Class::Delegation does two things wrong. It masks the real exception and it misreports the exception as a non-existant table method. So what's a perl hacker to do? Write all my delegation code manually and toss C::D?
$w = wrapper->instance; $w->table; # Dies with the error "Could not delegate wrapper::table" package wrapper; sub instance { return bless { schema => database->new() }, shift(); } sub schema { $_[0]->{schema} } use Class::Delegation send => '-ALL', to => 'schema'; package database; sub new { bless {}, shift() } sub table { $_[0]->column } sub column { die "Some exception" }
In reply to Class::Delegation is incompatible with exceptions? by diotalevi
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |