MooseX::MetaDescription allows you to add arbitrary out of band metadata to your
Moose classes and attributes. This will allow you to track out of band data
along with attributes, which is very useful for say serializing Moose classes in
HTML or XML.
MooseX::MethodAttributes allows code attributes of methods to be
introspected using Moose meta method objects.
MooseX::MultiInitArg - Attributes with aliases for constructor
arguments.
MooseX::MultiMethods provides multi method dispatch based on Moose type
constraints. It does so by providing a multi keyword that extends the
method keyword provided by MooseX::Method::Signatures.
When invoking a method declared as multi a matching variant is being searched
in all the declared multi variants based on the passed parameters and the
declared type constraints. If a variant has been found, it will be invoked.
If no variant could be found, an exception will be thrown.
MooseX::NonMoose allows for easily subclassing non-Moose classes with
Moose, taking care of the annoying details connected with doing this,
such as setting up proper inheritance from Moose::Object and installing
(and inlining, at make_immutable time) a constructor that makes sure
things like BUILD methods are called. It tries to be as non-intrusive
as possible - when this module is used, inheriting from non-Moose classes
and inheriting from Moose classes should work identically, aside from the
few caveats mentioned below. One of the goals of this module is that
including it in a Moose::Exporter-based package used across an entire
application should be possible, without interfering with classes that
only inherit from Moose modules, or even classes that don't inherit from
anything at all.
MooseX::OneArgNew lets your constructor take a single argument,
which will be translated into the value for a one-entry hashref.
MooseX::POE::Object is a Moose wrapper around a POE::Session.
Apply roles to a class related to yours
Net::DBus provides a Perl XS API to the dbus inter-application
messaging system. The Perl API covers the core base level
of the dbus APIs, not concerning itself yet with the GLib
or QT wrappers
MooseX::Runnable is a framework for making classes runnable applications. This
role doesn't do anything other than tell the rest of the framework that your
class is a runnable application that has a "run" method which accepts arguments
and returns the process' exit code.
This is a convention that the community has been using for a while. This role
tells the computer that your class uses this convention, and let's the computer
abstract away some of the tedium this entails.