X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=lib%2FLexical%2FTypes.pm;h=b22c2cc16e454a54bcf4dc220927ff4f631a54e7;hb=d7bc605f5faa98d26edda28996af1377d5ec1bcf;hp=85df03982bc19897735fa4cfbb50726a87db3a4f;hpb=cdabc1884bd85c70f2cb491a669113fdf7aba11c;p=perl%2Fmodules%2FLexical-Types.git diff --git a/lib/Lexical/Types.pm b/lib/Lexical/Types.pm index 85df039..b22c2cc 100644 --- a/lib/Lexical/Types.pm +++ b/lib/Lexical/Types.pm @@ -24,15 +24,29 @@ BEGIN { =head1 SYNOPSIS + { package Str; } + + { + package My::Types::Str; + + sub new { bless { }, shift } + } + + use Lexical::Types as => sub { 'My::Types::' . $_[0] => 'new' }; + + my Str $x; # $x is now a My::Types::Str object + { - package Str; + package My::Types::Int; - sub TYPEDSCALAR { Some::String::Implementation->new } + sub TYPEDSCALAR { bless { }, shift } } use Lexical::Types; - my Str $x; # $x is now a Some::String::Implementation object + use constant Int => 'My::Types::Int'; + + my Int $y; # $y is now a My::Types::Int object =head1 DESCRIPTION