Class-Meta-Declare INSTALLATION To install this module, run the following commands: perl Build.PL ./Build ./Build test ./Build install DESCRIPTION IMPORTANT: you want this class or Class::Meta if you need an introspection API for your classes. If you do not need this, these modules are overkill. This class provides an alternate interface for Class::Meta. Class::Meta is a useful module which allows one to create Perl classes which support introspection (also known as reflection). Typically Perl classes, when created, don't supply a lot of metadata. Helper functions which are imported show up when you call $object->can($method). Private, protected and trusted methods are not readily supported. Fetching a list of attributes or methods is a haphazard affair. Class::Meta solves that by building the classes for you and allowing you to fetch a class object: my $class_object = $object->my_class; foreach my $attribute ( $class_object->attributes ) { print $attribute->name, "\n"; } foreach my $method ( $class_object->methods ) { print $method->name, "\n"; } If you've set up your class correctly, these properties are now easy to discover. Unfortunately, many find the Class::Meta interface to be a bit clumsy. This Class::Meta::Declare allows you to declare your entire class in a single argument list to the constructor and have the class built for you automatically. Further, reasonable defaults are provided for just about everything. COPYRIGHT AND LICENCE Copyright (C) 2005 Curtis "Ovid" Poe This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.