]> git.vpit.fr Git - perl/modules/Scope-Upper.git/commitdiff
This is 0.19 v0.19
authorVincent Pit <vince@profvince.com>
Sat, 1 Sep 2012 13:25:22 +0000 (15:25 +0200)
committerVincent Pit <vince@profvince.com>
Sat, 1 Sep 2012 13:25:22 +0000 (15:25 +0200)
Changes
META.json
META.yml
README
lib/Scope/Upper.pm

diff --git a/Changes b/Changes
index 6a27bd6e8ea15a7a1bd45c8ee08d5c8f28fb8608..6a9695192f17387641c51c6098775aa63689bbb2 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,5 +1,13 @@
 Revision history for Scope-Upper
 
+0.19    2012-09-01 13:25 UTC
+        + Doc : POD headings have been made linkable.
+        + Fix : Building with perl 5.17.4.
+        + Fix : BUILD_PREREQS are now set for ExtUtils::MakeMaker.
+        + Opt : uplevel() private data structure is 7% smaller on 64 bits
+                architectures.
+        + Tst : Author tests overhaul.
+
 0.18    2011-10-10 20:50 UTC
         + Add : The uid() function returns an unique identifier for each dynamic
                 scope. The validate_uid() function can be used to check whether
index d32dc6e57a4c78ab72c3db566c16e8f6b125dfbc..544e4ce0c9014d728ecc367ba60ce35e1e0d1da3 100644 (file)
--- a/META.json
+++ b/META.json
@@ -4,7 +4,7 @@
       "Vincent Pit <perl@profvince.com>"
    ],
    "dynamic_config" : 1,
-   "generated_by" : "ExtUtils::MakeMaker version 6.59, CPAN::Meta::Converter version 2.112621",
+   "generated_by" : "ExtUtils::MakeMaker version 6.6302, CPAN::Meta::Converter version 2.120921",
    "license" : [
       "perl_5"
    ],
    "prereqs" : {
       "build" : {
          "requires" : {
-            "Exporter" : 0,
-            "ExtUtils::MakeMaker" : 0,
-            "Test::More" : 0,
-            "XSLoader" : 0,
-            "base" : 0
+            "Exporter" : "0",
+            "ExtUtils::MakeMaker" : "0",
+            "Test::More" : "0",
+            "XSLoader" : "0",
+            "base" : "0"
          }
       },
       "configure" : {
          "requires" : {
-            "Config" : 0,
-            "ExtUtils::MakeMaker" : 0
+            "Config" : "0",
+            "ExtUtils::MakeMaker" : "0"
          }
       },
       "runtime" : {
          "requires" : {
-            "Exporter" : 0,
-            "XSLoader" : 0,
-            "base" : 0,
+            "Exporter" : "0",
+            "XSLoader" : "0",
+            "base" : "0",
             "perl" : "5.006"
          }
       }
@@ -57,5 +57,5 @@
          "url" : "http://git.profvince.com/?p=perl%2Fmodules%2FScope-Upper.git"
       }
    },
-   "version" : "0.18"
+   "version" : "0.19"
 }
index 80f4c8d241221c6cfb71061d89dabf6ff813bd1d..572d3741814f0a4bf277246900919b1b421c1de7 100644 (file)
--- a/META.yml
+++ b/META.yml
@@ -12,7 +12,7 @@ configure_requires:
   Config: 0
   ExtUtils::MakeMaker: 0
 dynamic_config: 1
-generated_by: 'ExtUtils::MakeMaker version 6.59, CPAN::Meta::Converter version 2.112621'
+generated_by: 'ExtUtils::MakeMaker version 6.6302, CPAN::Meta::Converter version 2.120921'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -32,4 +32,4 @@ resources:
   homepage: http://search.cpan.org/dist/Scope-Upper/
   license: http://dev.perl.org/licenses/
   repository: http://git.profvince.com/?p=perl%2Fmodules%2FScope-Upper.git
-version: 0.18
+version: 0.19
diff --git a/README b/README
index 7d441b7558fa36830cac4af0e6297130b6b95c27..e09bd1230a0ccc5c13b1fd17e90188bb56a9a6c5 100644 (file)
--- a/README
+++ b/README
@@ -2,7 +2,7 @@ NAME
     Scope::Upper - Act on upper scopes.
 
 VERSION
-    Version 0.18
+    Version 0.19
 
 SYNOPSIS
     "reap", "localize", "localize_elem", "localize_delete" and "WORDS" :
@@ -166,11 +166,18 @@ FUNCTIONS
     which means that you can safely store it at some point and use it when
     needed, and it will still denote the original scope.
 
-  "reap $callback, $context"
+  "reap"
+        reap { ... };
+        reap { ... } $context;
+        &reap($callback, $context);
+
     Adds a destructor that calls $callback (in void context) when the upper
     scope represented by $context ends.
 
-  "localize $what, $value, $context"
+  "localize"
+        localize $what, $value;
+        localize $what, $value, $context;
+
     Introduces a "local" delayed to the time of first return into the upper
     scope denoted by $context. $what can be :
 
@@ -223,7 +230,10 @@ FUNCTIONS
         implementation detail, this behaviour may change in the future if
         proved harmful.
 
-  "localize_elem $what, $key, $value, $context"
+  "localize_elem"
+        localize_elem $what, $key, $value;
+        localize_elem $what, $key, $value, $context;
+
     Introduces a "local $what[$key] = $value" or "local $what{$key} =
     $value" delayed to the time of first return into the upper scope denoted
     by $context. Unlike "localize", $what must be a string and the type of
@@ -252,7 +262,10 @@ FUNCTIONS
         in the upper scope. It's actually more powerful, as &func won't even
         "exists" anymore. $key is ignored.
 
-  "unwind @values, $context"
+  "unwind"
+        unwind @values;
+        unwind @values, $context;
+
     Returns @values *from* the context pointed by $context, i.e. from the
     subroutine, eval or format at or just above $context, and immediately
     restart the program flow at this point - thus effectively returning to
@@ -269,7 +282,10 @@ FUNCTIONS
 
     will set $num to 'z'. You can use "want_at" to handle these cases.
 
-  "want_at $context"
+  "want_at"
+        my $want = want_at;
+        my $want = want_at $context;
+
     Like "wantarray", but for the subroutine/eval/format at or just above
     $context.
 
@@ -284,6 +300,11 @@ FUNCTIONS
     will rightfully set $num to 26.
 
   "uplevel $code, @args, $context"
+        my @ret = uplevel { ...; return @ret };
+        my @ret = uplevel { my @args = @_; ...; return @ret } @args;
+        my @ret = uplevel { ... } @args, $context;
+        my @ret = &uplevel($callback, @args, $context);
+
     Executes the code reference $code with arguments @args as if it were
     located at the subroutine stack frame pointed by $context, effectively
     fooling "caller" and "die" into believing that the call actually
@@ -352,7 +373,10 @@ FUNCTIONS
     Albeit the three exceptions listed above, it passes all the tests of
     Sub::Uplevel.
 
-  "uid $context"
+  "uid"
+        my $uid = uid;
+        my $uid = uid $context;
+
     Returns an unique identifier (UID) for the context (or dynamic scope)
     pointed by $context, or for the current context if $context is omitted.
     This UID will only be valid for the life time of the context it
@@ -401,7 +425,9 @@ FUNCTIONS
     To check whether a given UID is valid, you can use the "validate_uid"
     function.
 
-  "validate_uid $uid"
+  "validate_uid"
+        my $is_valid = validate_uid $uid;
+
     Returns true if and only if $uid is the UID of a currently valid context
     (that is, it designates a scope that is higher than the current one in
     the call stack).
@@ -431,23 +457,36 @@ CONSTANTS
 WORDS
   Constants
    "TOP"
+        my $top_context = TOP;
+
     Returns the context that currently represents the highest scope.
 
    "HERE"
+        my $current_context = HERE;
+
     The context of the current scope.
 
   Getting a context from a context
     For any of those functions, $from is expected to be a context. When
     omitted, it defaults to the the current context.
 
-   "UP $from"
+   "UP"
+        my $upper_context = UP;
+        my $upper_context = UP $from;
+
     The context of the scope just above $from.
 
-   "SUB $from"
+   "SUB"
+        my $sub_context = SUB;
+        my $sub_context = SUB $from;
+
     The context of the closest subroutine above $from. Note that $from is
     returned if it is already a subroutine context ; hence "SUB SUB == SUB".
 
-   "EVAL $from"
+   "EVAL"
+        my $eval_context = EVAL;
+        my $eval_context = EVAL $from;
+
     The context of the closest eval above $from. Note that $from is returned
     if it is already an eval context ; hence "EVAL EVAL == EVAL".
 
@@ -456,10 +495,16 @@ WORDS
     When omitted, it defaults to 0 and those functions return the same
     context as "HERE".
 
-   "SCOPE $level"
+   "SCOPE"
+        my $context = SCOPE;
+        my $context = SCOPE $level;
+
     The $level-th upper context, regardless of its type.
 
-   "CALLER $level"
+   "CALLER"
+        my $context = CALLER;
+        my $context = CALLER $level;
+
     The context of the $level-th upper subroutine/eval/format. It kind of
     corresponds to the context represented by "caller $level", but while
     e.g. "caller 0" refers to the caller context, "CALLER 0" will refer to
@@ -636,7 +681,7 @@ ACKNOWLEDGEMENTS
     Thanks to Shawn M. Moore for motivation.
 
 COPYRIGHT & LICENSE
-    Copyright 2008,2009,2010,2011 Vincent Pit, all rights reserved.
+    Copyright 2008,2009,2010,2011,2012 Vincent Pit, all rights reserved.
 
     This program is free software; you can redistribute it and/or modify it
     under the same terms as Perl itself.
index 5460c8378f3377f87a1869dba9fc7bcd24ebe348..1ae9f9c7f117c9b6948e8ff61c79abeda2eff4c3 100644 (file)
@@ -9,13 +9,13 @@ Scope::Upper - Act on upper scopes.
 
 =head1 VERSION
 
-Version 0.18
+Version 0.19
 
 =cut
 
 our $VERSION;
 BEGIN {
- $VERSION = '0.18';
+ $VERSION = '0.19';
 }
 
 =head1 SYNOPSIS