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.
This module is meant to be loaded as a role from Moose-based classes
it will add five methods and four attributes to assist you with the
loading and handling of plugins and extensions for plugins. I
understand that this may pollute your namespace, however I took great
care in using the least ambiguous names possible.
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.
This module fills a gap in Moose by adding method parameter
validation to Moose. This is just one of many developing options,
it should not be considered the "official" one by any means though.
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
Extensive, yet simple, logging role using Log::Dispatchouli
MooseX::Role::Matcher - generic object matching based on
attributes and methods