X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=lib%2FVariable%2FMagic.pm;h=05821e9799f35310aa118df000ef4a315ebf066b;hb=67183cedd68decfdd05ef3d64b27bb7e07476626;hp=3668432486cffb61f6e90ebfcf3a0700f8311dea;hpb=d33407fbe0b4c8c80751c26f5d8ec3622c26e54a;p=perl%2Fmodules%2FVariable-Magic.git diff --git a/lib/Variable/Magic.pm b/lib/Variable/Magic.pm index 3668432..05821e9 100644 --- a/lib/Variable/Magic.pm +++ b/lib/Variable/Magic.pm @@ -11,13 +11,13 @@ Variable::Magic - Associate user-defined magic to variables from Perl. =head1 VERSION -Version 0.46 +Version 0.47 =cut our $VERSION; BEGIN { - $VERSION = '0.46'; + $VERSION = '0.47'; } =head1 SYNOPSIS @@ -196,9 +196,6 @@ This last one triggers when a key is deleted in the hash, regardless of whether You can refer to the tests to have more insight of where the different magics are invoked. -To prevent any clash between different magics defined with this module, an unique numerical signature is attached to each kind of magic (i.e. each set of callbacks for magic operations). -At the C level, magic tokens owned by magic created by this module have their C<< mg->mg_private >> field set to C<0x3891> or C<0x3892>, so please don't use these magic (sic) numbers in other extensions. - =head1 FUNCTIONS =cut @@ -311,9 +308,7 @@ sub wizard { my %opts = @_; - my @keys = qw; - push @keys, 'copy' if MGf_COPY; - push @keys, 'dup' if MGf_DUP; + my @keys = qw; push @keys, 'local' if MGf_LOCAL; push @keys, qw if VMG_UVAR; @@ -394,6 +389,10 @@ When this constant is true, you can use the C callbac Initial VMG_UVAR capability was introduced in perl 5.9.5, with a fully functional implementation shipped with perl 5.10.0. +=head2 C + +True for perls that don't call 'len' magic when taking the C of a magical scalar. + =head2 C True for perls that don't call 'len' magic when you push an element in a magical array. @@ -411,9 +410,9 @@ True for perls that don't call 'len' magic when you unshift in void context an e True for perls that call 'clear' magic when undefining magical arrays. -=head2 C +=head2 C -True for perls that don't call 'len' magic when taking the C of a magical scalar. +True for perls that don't call 'delete' uvar magic when you delete an element from a hash in void context. =head2 C @@ -592,10 +591,11 @@ our %EXPORT_TAGS = ( 'funcs' => [ qw ], 'consts' => [ qw< MGf_COPY MGf_DUP MGf_LOCAL VMG_UVAR + VMG_COMPAT_SCALAR_LENGTH_NOLEN VMG_COMPAT_ARRAY_PUSH_NOLEN VMG_COMPAT_ARRAY_PUSH_NOLEN_VOID VMG_COMPAT_ARRAY_UNSHIFT_NOLEN_VOID VMG_COMPAT_ARRAY_UNDEF_CLEAR - VMG_COMPAT_SCALAR_LENGTH_NOLEN + VMG_COMPAT_HASH_DELETE_NOUVAR_VOID VMG_COMPAT_GLOB_GET VMG_PERL_PATCHLEVEL VMG_THREADSAFE VMG_FORKSAFE