use Scalar::Util 'blessed';
-our $VERSION = '0.01';
+our $VERSION = '0.02';
+our $AUTHORITY = 'cpan:STEVAN';
use base 'Class::MOP::Package';
sub version {
my $self = shift;
- ${$self->get_package_variable('$VERSION')};
+ ${$self->get_package_symbol('$VERSION')};
+}
+
+sub authority {
+ my $self = shift;
+ ${$self->get_package_symbol('$AUTHORITY')};
+}
+
+sub identifier {
+ my $self = shift;
+ join '-' => (
+ $self->name,
+ ($self->version || ()),
+ ($self->authority || ()),
+ );
}
1;
=item B<version>
+This is a read-only attribute which returns the C<$VERSION> of the
+package for the given instance.
+
+=item B<authority>
+
+This is a read-only attribute which returns the C<$AUTHORITY> of the
+package for the given instance.
+
+=item B<identifier>
+
+This constructs a string of the name, version and authrity.
+
=back
-=head1 AUTHOR
+=head1 AUTHORS
Stevan Little E<lt>stevan@iinteractive.comE<gt>
+Yuval Kogman E<lt>nothingmuch@woobling.comE<gt>
+
=head1 COPYRIGHT AND LICENSE
Copyright 2006 by Infinity Interactive, Inc.