# use Class::XSAccessor { getters => ['foo'] }; # is equivalent to: sub foo { my $self = shift; if (@_) { $self->{foo} = $_[0]; } $self->{foo}; } # use YourModule { getters => { bar => { isa => "HASH" } } } # is equivalent to: sub bar { my $self = shift; if (@_) { die "not a HASH" unless ref $_[0] eq "HASH"; $self->{bar} = $_[0]; } $self->{bar}; }