TUI-Vision

 view release on metacpan or  search on metacpan

lib/TUI/toolkit/Types.pm  view on Meta::CPAN

  sub DOES {
    my ( $proto, $role ) = @_;
    return !!1 if $roles{$role};
    return $proto->SUPER::DOES( $role );
  }

  sub new {
    my ( $class, %spec ) = @_;
    die "missing name"       unless exists $spec{name};
    die "missing constraint" unless exists $spec{constraint};
    return bless \%spec => $class;
  }

  sub check {
    my ( $param, $value ) = ( shift, @_ );
    if ( $param->{parent} ) {
      return !!0 unless $param->{parent}->check( $value );
    }
    local $_ = $value;
    return $param->{constraint}->( $value );
  }



( run in 2.113 seconds using v1.01-cache-2.11-cpan-0bb4e1dffa6 )