for mst and phaylon
Stevan Little [Sat, 17 Mar 2007 16:42:31 +0000 (16:42 +0000)]
Changes
lib/Moose/Util/TypeConstraints.pm

diff --git a/Changes b/Changes
index 9c356a7..731e8f1 100644 (file)
--- a/Changes
+++ b/Changes
@@ -5,6 +5,9 @@ Revision history for Perl extension Moose
       - type now supports messages as well
         (thanks to phaylon for finding this)
         - added tests for this
+      - added list_all_type_constraints and 
+        list_all_builtin_type_constraints
+        functions to facilitate introspection.
 
 0.18 Sat. March 10, 2007
     ~~ Many, many documentation updates ~~
index 0c1270f..583861f 100644 (file)
@@ -220,6 +220,11 @@ subtype 'Role'
     => where { $_->can('does') }
     => optimize_as { blessed($_[0]) && $_[0]->can('does') };
 
+{
+    my @BUILTINS = list_all_type_constraints();
+    sub list_all_builtin_type_constraints { @BUILTINS }
+}
+
 1;
 
 __END__
@@ -381,6 +386,12 @@ This will return a list of type constraint names, you can then
 fetch them using C<find_type_constraint ($type_name)> if you 
 want to.
 
+=item B<list_all_builtin_type_constraints>
+
+This will return a list of builtin type constraints, meaning, 
+those which are defined in this module. See the section 
+labeled L<Default Type Constraints> for a complete list.
+
 =back
 
 =head2 Type Constraint Constructors