NAME
    MooseX::BatmanBeforeRobin - Ordered Moose sugar

VERSION
    0.0201

SYNOPSIS
        package MyClass;
        use MooseX::BatmanBeforeRobin;

        extends ...;
        with ...;
        has ...;

        one; # instead of 1;

DESCRIPTION
    This class will take over some of the exported functions from Moose and
    call them in "the right order":

        1: extends()
        2: has()
        3: with()
        4: override()/augment()
        5: before()/after()/around()

    This is done by stashing the statements away, and applying them once the
    "one" function is called. An alternative to "one" is "__PACKAGE__",
    which allows you to do

        (require MyMoose::Class)->some_method;

    since "require" will return the last value in the package.

    This module will also export all other functions from Moose, so "use
    Moose" is not required.

EXPORTED FUNCTIONS
    See Moose.

  one
    This function should replace "1;" on the last line in your class. It
    will call the Moose keywords in "the right order" and afterwards make
    the class immutable and clear the namespace, using namespace::autoclean.

  __PACKAGE__
    Alternative to "one".

METHODS
  init_meta
    This method is called on "import()" and sets up namespace::autoclean and
    Moose.

BUGS
COPYRIGHT & LICENSE
AUTHOR
    Jan Henning Thorsen "jhthorsen at cpan.org"

