X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2Foverload.pm;h=71b550ad5300d0739852d47e150c15704e1c227e;hb=53273a086103cdbbf7ebdd5f1a18b2c0777cbc1b;hp=7d94cc7c023b75da7506a34be5d55ddb9f906ccc;hpb=ad5cfffd5b8b7fe37ed57e620649fd13610a07d1;p=p5sagit%2Fp5-mst-13.2.git diff --git a/lib/overload.pm b/lib/overload.pm index 7d94cc7..71b550a 100644 --- a/lib/overload.pm +++ b/lib/overload.pm @@ -1,6 +1,6 @@ package overload; -our $VERSION = '1.02'; +our $VERSION = '1.03'; $overload::hint_bits = 0x20000; # HINT_LOCALIZE_HH @@ -93,11 +93,7 @@ sub AddrRef { return sprintf("$class_prefix$type(0x%x)", $addr); } -sub StrVal { - (ref $_[0] && OverloadedStringify($_[0]) or ref($_[0]) eq 'Regexp') ? - (AddrRef(shift)) : - "$_[0]"; -} +*StrVal = *AddrRef; sub mycan { # Real can would leave stubs. my ($package, $meth) = @_; @@ -704,7 +700,10 @@ Package C provides the following public functions: =item overload::StrVal(arg) -Gives string value of C as in absence of stringify overloading. +Gives string value of C as in absence of stringify overloading. If you +are using this to get the address of a reference (useful for checking if two +references point to the same thing) then you may be better off using +C, which is faster. =item overload::Overloaded(arg)