]> git.vpit.fr Git - perl/modules/Lexical-Types.git/commitdiff
Revamp the description so that the important discussion about what the type can be...
authorVincent Pit <vince@profvince.com>
Sat, 7 Mar 2009 12:04:18 +0000 (13:04 +0100)
committerVincent Pit <vince@profvince.com>
Sat, 7 Mar 2009 12:04:18 +0000 (13:04 +0100)
lib/Lexical/Types.pm

index 841c3aad3393d64ab2117ba0b1e606479c4a1761..36960d88603cac0621c2a7620332192b8990c93a 100644 (file)
@@ -50,10 +50,26 @@ BEGIN {
 
 =head1 DESCRIPTION
 
-This pragma allows you to hook the execution of typed lexicals declarations (C<my Str $x>).
-In particular, it can be used to automatically tie or bless typed lexicals.
+This pragma allows you to hook the execution of typed lexicals declarations (C<my Str $x>) by calling a configurable method in a configurable package at each run.
+In particular, it can be used to automatically tie or bless typed lexicals whenever they are initialized.
 
-It is B<not> implemented with a source filter.
+Remind that for C<perl> to be able to parse C<my Str $x>, you need :
+
+=over 4
+
+=item *
+
+either the C<Str> package to be defined ;
+
+=item *
+
+or for C<Str> to be a constant sub returning a valid defined package.
+
+=back
+
+so make sure you follow one of those two strategies to define your types.
+
+This pragma is B<not> implemented with a source filter.
 
 =cut
 
@@ -193,7 +209,7 @@ or for C<Str> to be a constant sub returning a valid defined package.
 
 =back
 
-Those restrictions apply even if you use the C<'as'> option to redirect to another package, and are unlikely to find a workaround as this happens deep inside the lexer - far from the reach of an extension.
+The restrictions on the type (being either a defined package name or a constant) apply even if you use the C<'as'> option to redirect to another package, and are unlikely to find a workaround as this happens deep inside the lexer - far from the reach of an extension.
 
 Only one mangler or prefix can be in use at the same time in a given scope.