Help for this page
sub load { my $self = shift; ... # load lazy object $self->{_loaded}=1; };
package Weapon; use base qw(LazyObject); ... sub can_fire { $self->{_loaded} && $self->{_working}; };