-
package MooseX::Getopt::Meta::Attribute::NoGetopt;
-use Moose;
+# ABSTRACT: Optional meta attribute for ignoring params
-our $VERSION = '0.20';
-our $AUTHORITY = 'cpan:STEVAN';
+use Moose;
extends 'Moose::Meta::Attribute'; # << Moose extending Moose :)
with 'MooseX::Getopt::Meta::Attribute::Trait::NoGetopt';
1;
-__END__
-
-=pod
-
-=head1 NAME
-
-MooseX::Getopt::Meta::Attribute::NoGetopt - Optional meta attribute for ignoring params
-
=head1 SYNOPSIS
package App;
use Moose;
-
+
with 'MooseX::Getopt';
-
+
has 'data' => (
- metaclass => 'NoGetopt', # do not attempt to capture this param
+ metaclass => 'NoGetopt', # do not attempt to capture this param
is => 'ro',
isa => 'Str',
default => 'file.dat',
=head1 DESCRIPTION
-This is a custom attribute metaclass which can be used to specify
-that a specific attribute should B<not> be processed by
-C<MooseX::Getopt>. All you need to do is specify the C<NoGetopt>
+This is a custom attribute metaclass which can be used to specify
+that a specific attribute should B<not> be processed by
+C<MooseX::Getopt>. All you need to do is specify the C<NoGetopt>
metaclass.
- has 'foo' => (metaclass => 'NoGetopt', ... );
-
-=head1 METHODS
-
-=over 4
-
-=item B<meta>
-
-=back
-
-=head1 BUGS
-
-All complex software has bugs lurking in it, and this module is no
-exception. If you find a bug please either email me, or add the bug
-to cpan-RT.
+ has 'foo' => (metaclass => 'MooseX::Getopt::Meta::Attribute::NoGetopt', ... );
-=head1 AUTHOR
+=head2 Use 'traits' instead of 'metaclass'
-Stevan Little E<lt>stevan@iinteractive.comE<gt>
+You should rarely need to explicitly set the attribute metaclass. It is much
+preferred to simply provide a trait (a role applied to the attribute
+metaclass), which allows other code to further modify the attribute by applying
+additional roles.
-Chris Prather C<< <perigrin@cpan.org> >>
+Therefore, you should first try to do this:
-=head1 COPYRIGHT AND LICENSE
+ has 'foo' => (traits => ['NoGetopt', ...], ...);
-Copyright 2007-2008 by Infinity Interactive, Inc.
+=head2 Custom Metaclass alias
-L<http://www.iinteractive.com>
+This now takes advantage of the Moose 0.19 feature to support
+custom attribute metaclass. This means you can also
+use this as the B<NoGetopt> alias, like so:
-This library is free software; you can redistribute it and/or modify
-it under the same terms as Perl itself.
+ has 'foo' => (metaclass => 'NoGetopt', cmd_flag => 'f');
=cut