package mop::manual::details::attributes;
# ABSTRACT: A manual for p5-mop
__END__
=pod
=head1 NAME
mop::manual::details::attributes - A manual for p5-mop
=head1 DESCRIPTION
TODO
=head1 GRAMMAR
Attributes in the p5-mop are defined in the following way:
has SCALAR
?(meta NAME)
?(is TRAIT ?(, TRAIT)*)
?(= EXPR);
The C<has> keyword is followed by a scalar variable name.
Which is optionally followed by the C<meta> keyword
that is followed by the name of the attribute metaclass
you wish to be used in constructing this attribute.
Which is optionally followed by the C<is> keyword that is
followed by a comma separated list of traits you wish to
be applied to your attribute.
Which is optionally followed by the assignment operator
(C<=>) which is then followed by a perl expression.
An attribute definition must be terminated by a semicolon.
=head1 BUGS
Since this module is still under development we would prefer to not
use the RT bug queue and instead use the built in issue tracker on
L<Github|http://www.github.com>.
=head2 L<Git Repository|https://github.com/stevan/p5-mop-redux>
=head2 L<Issue Tracker|https://github.com/stevan/p5-mop-redux/issues>
=head1 AUTHOR
Stevan Little <stevan.little@iinteractive.com>
Jesse Luehrs <doy@tozt.net>
=head1 COPYRIGHT AND LICENSE
This software is copyright (c) 2013 by Infinity Interactive.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
=cut