stop closing over the method metaobject
[gitmo/Moose.git] / lib / Moose / Error / Croak.pm
1 package Moose::Error::Croak;
2
3 use strict;
4 use warnings;
5
6 use base qw(Moose::Error::Default);
7
8 sub new {
9     my ( $self, @args ) = @_;
10     $self->create_error_croak(@args);
11 }
12
13 sub _inline_new {
14     my ( $self, @args ) = @_;
15
16     return $self->_inline_create_error_carpmess(@args);
17 }
18
19 1;
20
21 # ABSTRACT: Prefer C<croak>
22
23 __END__
24
25 =pod
26
27 =head1 SYNOPSIS
28
29     # Metaclass definition must come before Moose is used.
30     use metaclass (
31         metaclass => 'Moose::Meta::Class',
32         error_class => 'Moose::Error::Croak',
33     );
34     use Moose;
35     # ...
36
37 =head1 DESCRIPTION
38
39 This error class uses L<Carp/croak> to raise errors generated in your
40 metaclass.
41
42 =head1 METHODS
43
44 =over 4
45
46 =item new
47
48 Overrides L<Moose::Error::Default/new> to prefer C<croak>.
49
50 =back
51
52 =cut
53
54