package MooseX::Role::Parameterized;
-# ABSTRACT: parameterized roles
-
use Moose (
extends => { -as => 'moose_extends' },
around => { -as => 'moose_around' },
__END__
+=head1 NAME
+
+MooseX::Role::Parameterized - parameterized roles
+
=head1 SYNOPSIS
package MyRole::Counter;
use Moose;
extends 'Moose::Meta::Role';
-# ABSTRACT: metaclass for parameterizable roles
-
use MooseX::Role::Parameterized::Meta::Role::Parameterized;
use MooseX::Role::Parameterized::Parameters;
__END__
+=head1 NAME
+
+MooseX::Role::Parameterized::Meta::Role::Parameterizable - metaclass for parameterizable roles
+
=head1 DESCRIPTION
This is the metaclass for parameteriz-able roles, roles that have their
use Moose;
extends 'Moose::Meta::Role';
-# ABSTRACT: metaclass for parameterized roles
-
use MooseX::Role::Parameterized::Parameters;
has parameters => (
__END__
+=head1 NAME
+
+MooseX::Role::Parameterized::Meta::Role::Parameterized - metaclass for parameterized roles
+
=head1 DESCRIPTION
This is the metaclass for parameteriz-ed roles; that is, parameteriz-able roles
package MooseX::Role::Parameterized::Parameters;
use Moose;
-# ABSTRACT: base class for parameters
-
__PACKAGE__->meta->make_immutable;
no Moose;
__END__
+=head1 NAME
+
+MooseX::Role::Parameterized::Parameters - base class for parameters
+
=head1 DESCRIPTION
This is the base class for parameter objects. Currently empty, but I reserve
package MooseX::Role::Parameterized::Tutorial;
confess "Don't use this module, read it!";
-# ABSTRACT: why and how
-
__END__
+=head1 NAME
+
+MooseX::Role::Parameterized::Tutorial - why and how
+
=head1 MOTIVATION
Roles are composable units of behavior. They are useful for factoring out