]> git.vpit.fr Git - perl/modules/Sub-Nary.git/commitdiff
keys/values return a 'list', each return zero or two scalars
authorVincent Pit <vince@profvince.com>
Tue, 5 Aug 2008 10:30:57 +0000 (12:30 +0200)
committerVincent Pit <vince@profvince.com>
Tue, 5 Aug 2008 10:30:57 +0000 (12:30 +0200)
lib/Sub/Nary.pm
t/20-return.t
t/21-list.t
t/23-branch.t

index 4a02bc2524b6c397f618e568f1870fbd3b57f16f..eb26dfce3d24a411987ab91e49aba22a3fcbb10c 100644 (file)
@@ -204,6 +204,7 @@ $ops{$_} = 1      for qw/padsv/;
 $ops{$_} = 'list' for qw/padav/;
 $ops{$_} = 'list' for qw/padhv rv2hv/;
 $ops{$_} = 'list' for qw/padany flip match entereval readline/;
+$ops{each}      = { 0 => 0.5, 2 => 0.5 };
 $ops{stat}      = { 0 => 0.5, 13 => 0.5 };
 $ops{caller}    = sub { my @a = caller 0; scalar @a }->();
 $ops{localtime} = do { my @a = localtime; scalar @a };
index b47babb997e86d08dcad4edb886cb300e065ce51..98fecc9b68185d74afdb9eeadf9a1110c31c6463 100644 (file)
@@ -3,7 +3,7 @@
 use strict;
 use warnings;
 
-use Test::More tests => 53;
+use Test::More tests => 55;
 
 use Sub::Nary;
 
@@ -39,6 +39,8 @@ my @tests = (
  [ sub { return @h{qw/a b/} },     2 ],
  [ sub { return @h{@a[1 .. 3]} },  3 ],
  [ sub { return @h{@a[$y .. 3]} }, 'list' ],
+ [ sub { return keys %h },         'list' ],
+ [ sub { return values %h },       'list' ],
 
  [ sub { return $x, $a[3], $h{c} }, 3 ],
  [ sub { return $x, @a },           'list' ],
index 4f973586ab13bba9390c0a2d48f2eaef97bdae9e..62c9bc0764ade9c79b63b091df112d399ffdeb00 100644 (file)
@@ -3,7 +3,7 @@
 use strict;
 use warnings;
 
-use Test::More tests => 39;
+use Test::More tests => 41;
 
 use Sub::Nary;
 
@@ -33,6 +33,8 @@ my @tests = (
  [ sub { %h },          'list' ],
  [ sub { $h{a} },       1 ],
  [ sub { @h{qw/a b/} }, 2 ],
+ [ sub { keys %h },     'list' ],
+ [ sub { values %h },   'list' ],
 
  [ sub { $x, $a[3], $h{c} }, 3 ],
  [ sub { $x, @a },           'list' ],
index 914b975cfa319bf4541b960f32320b66a63f3863..72451e40e80c45ecdff391facdcce0902df62e73 100644 (file)
@@ -3,7 +3,7 @@
 use strict;
 use warnings;
 
-use Test::More tests => 16;
+use Test::More tests => 17;
 
 use Sub::Nary;
 
@@ -60,8 +60,10 @@ my @tests = (
 
  [ \&retinif, { 2 => 1 } ],
 
- [ sub { <*.*> },   { list => 1 / 3, 1 => 2 / 3 } ],
+ [ sub { each %h }, { 0 => 0.5, 2 => 0.5 } ],
  [ sub { stat $0 }, { 0 => 0.5, 13 => 0.5 } ],
+
+ [ sub { <*.*> }, { list => 1 / 3, 1 => 2 / 3 } ],
 );
 
 my $i = 1;