<p>Знаем. Только если аргументом хэш. И об этом сказано в документации.</p>
<p style="padding-left: 30px;">This operator is also handy for inverting a hash, although there are some caveats. If a value is duplicated in the original hash, only one of those can be represented as a key in the inverted hash. <strong>Also, this has to unwind one hash and build a whole new one</strong>, which may take some time on a large hash, such as from a DBM file.</p>
<p>On Mon, 1 Oct 2012 19:20:52 +0400, Denis Evdokimov <evdokimov.denis@gmail.com> wrote:</p>
<blockquote type="cite" style="padding-left:5px; border-left:#1010ff 2px solid; margin-left:5px; width:100%"><!-- html ignored --><!-- head ignored --><!-- meta ignored -->
<p>А знаете ли вы, что reverse изменяет свой агрумент?<br />В этом легко убедиться с помощью JSON или Devel::Peek :<br /><br />perl -MJSON -e'my %a=(int => 222); print to_json \%a; my %b=reverse %a; print to_json \%a;'<br /> {"int":222}{"int":"222"}<br /><br />perl -MDevel::Peek -e'my %a=(int => 222); Dump $a{int}; my %b=reverse %a; Dump $a{int};'<br />SV = IV(0x1036d40) at 0x1036d48<br />  REFCNT = 1<br />  FLAGS = (IOK,pIOK)<br />   IV = 222<br />SV = PVIV(0x1051220) at 0x1036d48<br />  REFCNT = 1<br />  FLAGS = (IOK,POK,pIOK,pPOK)<br />  IV = 222<br />  PV = 0x1056220 "222"\0<br />  CUR = 3<br />  LEN = 8<br /><br /></p>
</blockquote>
<p> </p>