=head1 NAME

Class::MakeMethods::ToDo - Ideas, problems, and suggestions


=head1 SYNOPSIS

There are lots of things that could be done to improve this module.


=head1 DISTRIBUTION ISSUES

Issues about the distribution and supporting files, rather than the code:

=head2 Documentation

=over 4

=item *

Make sure that the documentation is broken up into appropriately-sized
chunks, and that people will know which section to look at.

=item *

As user questions arrive, add the answers as documentation points or examples.

=item *

Assemble annotated examples and tutorials, and either link to or distribute them.

=back

=head2 Tests

=over 4

=item *

Use Devel::Coverage to measure test coverage, and fill in missing
cases.

=back


=head1 GENERAL ISSUES

=over 4

=item *

For scalar methods (and others) it would be nice to have a simple
bounds-checking interface to approve or reject (with an exception)
new values that were passed in.

As pointed out by Terrence Brannon, the right interface to
adopt is probably that of Attribute::Types:

  use Class::MakeMethods::Standard::Hash (
    'scalar' => [ 'count' => { TYPE => 'INTEGER' } ],
    'scalar' => [ 'name' => { TYPE => qr/^[A-Z]\w*$/ } ],
    'scalar' => [ 'account' => { TYPE => &checksum_account_number } ]
  );

=item *

Improve use of _diagnostic hooks for debugging. Add various "(Q)"
warning diagnostics.

=back


=head1 GENERATOR CLASSES

=over 4

=item *

Finish tests for Standard modules.

=item *

Finish building Inheritable array and object accessors.

=item *

Finish building and testing of Composite::* packages.

=item *

Resolve DESTROY-time issues with Standard::Inheritable, Composite::Inheritable, and Template::Flyweight.

=item *

Add slice and splice functionality to Standard::*:hash and Composite::*:hash.

=back


=head1 SEE ALSO

See L<Class::MakeMethods> for an overview of the method-generation
framework.

See L<Class::MakeMethods::ReadMe> for distribution, installation,
version and support information.

=cut
