Re: Re: Re: Re[4]: Популяризация
Alexandr Ciornii
alexchorny at gmail.com
Sun Aug 8 12:56:42 PDT 2010
Привет
2010/8/8 Евгений Карпенко <notformat at gmail.com>:
>> Мы говорим о типизации, так вот сделайте мне, пожалуйста, в Java такие два
>> типа:
>> 1. "любые числа больше нуля"
>> 2. "все четные числа".
>
> Честно, я даже не знаю как это реализовать не в перле ни в джаве.
Более интересный пример: IP-адреса, Perl5
файл IPType.pm
package IPType;
use Regexp::Common 2.105;
use MooseX::Types::Moose qw( Str );
use MooseX::Types -declare => [ qw(IP) ];
subtype IP, as Str, where {
$_ =~ /\A $RE{net}{IPv4} \z/msx
}, message {
"'$_' is not a valid IP";
};
файл typed.pl
use IPType qw/IP/;
use MooseX::Lexical::Types qw/IP/;
my IP $foo; # declare typed variable
$foo = '192.168.1.1'; # works
$foo = 'bar'; # fails
--
Alexandr Ciornii, http://chorny.net
More information about the Kiev-pm
mailing list