Mercurial > pub > Impl
comparison lib/IMPL/lang.pm @ 419:bbc4739c4d48 ref20150831
working on IMPL::Config::Container
| author | cin |
|---|---|
| date | Sun, 29 Jan 2017 10:30:20 +0300 |
| parents | 30e8c6a74937 |
| children | 7798345304bc |
comparison
equal
deleted
inserted
replaced
| 418:3f38dabaf5cc | 419:bbc4739c4d48 |
|---|---|
| 1 package IMPL::lang; | 1 package IMPL::lang; |
| 2 use strict; | 2 use strict; |
| 3 use warnings; | 3 use warnings; |
| 4 | 4 |
| 5 use parent qw(Exporter); | 5 use parent qw(Exporter); |
| 6 use IMPL::_core::version; | |
| 7 use IMPL::clone qw(clone); | 6 use IMPL::clone qw(clone); |
| 8 use Scalar::Util qw(blessed); | 7 use Scalar::Util qw(blessed); |
| 9 use POSIX; | 8 use POSIX; |
| 10 use Carp qw(carp); | 9 use Carp qw(carp); |
| 11 | 10 |
| 17 &clone | 16 &clone |
| 18 &isclass | 17 &isclass |
| 19 &typeof | 18 &typeof |
| 20 &ishash | 19 &ishash |
| 21 &isarray | 20 &isarray |
| 21 &isscalar | |
| 22 &isglob | |
| 22 ) | 23 ) |
| 23 ], | 24 ], |
| 24 | 25 |
| 25 declare => [ | 26 declare => [ |
| 26 qw( | 27 qw( |
| 88 | 89 |
| 89 sub ishash { | 90 sub ishash { |
| 90 not blessed($_[0]) and ref $_[0] eq 'HASH'; | 91 not blessed($_[0]) and ref $_[0] eq 'HASH'; |
| 91 } | 92 } |
| 92 | 93 |
| 94 sub isscalar { | |
| 95 not blessed($_[0]) and ref $_[0] eq 'SCALAR'; | |
| 96 } | |
| 97 | |
| 98 sub isglob { | |
| 99 not blessed($_[0]) and ref $_[0] eq 'GLOB'; | |
| 100 } | |
| 101 | |
| 93 sub public($) { | 102 sub public($) { |
| 94 my $info = shift; | 103 my $info = shift; |
| 95 $info->{access} = ACCESS_PUBLIC; | 104 $info->{access} = ACCESS_PUBLIC; |
| 96 my $implementor = delete $info->{implementor}; | 105 my $implementor = delete $info->{implementor}; |
| 97 $implementor->Implement($info); | 106 $implementor->Implement($info); |
