Data-Roundtrip

 view release on metacpan or  search on metacpan

README  view on Meta::CPAN

      * unicode-escape-permanently : this is not an export
      keyword/parameter but a parameter which affects all the *2dump* subs
      by setting unicode escaping permanently to true. See "EFFICIENCY".

EFFICIENCY

    The export keyword/parameter no-unicode-escape-permanently affects all
    the *2dump* subs by setting unicode escaping permanently to false. This
    improves efficiency, although one will ever need to use this in extreme
    situations where a *2dump* sub is called repeatedly in a loop of a few
    hundreds or thousands of iterations or more.

    Each time a *2dump* is called, the dont-bloody-escape-unicode flag is
    checked and if it is set, then Data::Dumper's qquote() is overriden
    with _qquote_redefinition_by_Corion() just for that instance and will
    be restored as soon as the dump is finished. Similarly, a filter for
    not escaping unicode is added to Data::Dump just for that particular
    call and is removed immediately after. This has some computational cost
    and can be avoided completely by overriding the sub and adding the
    filter once, at loading (in import()).

README.md  view on Meta::CPAN


# EFFICIENCY

The export keyword/parameter `no-unicode-escape-permanently`
affects
all the `*2dump*` subs by setting unicode escaping
permanently to false. This improves efficiency, although
one will ever need to
use this in extreme situations where a `*2dump*`
sub is called repeatedly in a loop of
a few hundreds or thousands of iterations or more.

Each time a `*2dump*` is called, the
`dont-bloody-escape-unicode` flag is checked
and if it is set, then  [Data::Dumper](https://metacpan.org/pod/Data%3A%3ADumper)'s `qquote()`
is overriden with `_qquote_redefinition_by_Corion()`
just for that instance and will be restored as soon as
the dump is finished. Similarly, a filter for
not escaping unicode is added to [Data::Dump](https://metacpan.org/pod/Data%3A%3ADump)
just for that particular call and is removed immediately
after. This has some computational cost and can be

a.html  view on Meta::CPAN

<li><p><code>no-unicode-escape-permanently</code> : this is not an export keyword/parameter but a parameter which affects all the <code>*2dump*</code> subs by setting unicode escaping permanently to false. See <a href="#EFFICIENCY">&quot;EFFICIENCY&q...

</li>
<li><p><code>unicode-escape-permanently</code> : this is not an export keyword/parameter but a parameter which affects all the <code>*2dump*</code> subs by setting unicode escaping permanently to true. See <a href="#EFFICIENCY">&quot;EFFICIENCY&quot;...

</li>
</ul>

<h1 id="EFFICIENCY">EFFICIENCY</h1>

<p>The export keyword/parameter <code>no-unicode-escape-permanently</code> affects all the <code>*2dump*</code> subs by setting unicode escaping permanently to false. This improves efficiency, although one will ever need to use this in extreme situat...

<p>Each time a <code>*2dump*</code> is called, the <code>dont-bloody-escape-unicode</code> flag is checked and if it is set, then <a>Data::Dumper</a>&#39;s <code>qquote()</code> is overriden with <code>_qquote_redefinition_by_Corion()</code> just for...

<p>The price to pay for this added efficiency is that unicode in any dump will never be escaped (e.g. <code>\x{3b1})</code>, but will be rendered (e.g. <code>&alpha;</code>, a greek alpha). Always. The option <code>dont-bloody-escape-unicode</code> w...

<p>Similarly, the export keyword/parameter <code>unicode-escape-permanently</code> affects all the <code>*2dump*</code> subs by setting unicode escaping permanently to true. This improves efficiency as well.</p>

<p>See <a href="#BENCHMARKS">&quot;BENCHMARKS&quot;</a> on how to find the fastest <code>*2dump*</code> sub.</p>

<h1 id="BENCHMARKS">BENCHMARKS</h1>

lib/Data/Roundtrip.pm  view on Meta::CPAN


=head1 EFFICIENCY

The export keyword/parameter C<< no-unicode-escape-permanently >>
affects
all the C<< *2dump* >> subs by setting unicode escaping
permanently to false. This improves efficiency, although
one will ever need to
use this in extreme situations where a C<< *2dump* >>
sub is called repeatedly in a loop of
a few hundreds or thousands of iterations or more.

Each time a C<< *2dump* >> is called, the
C<< dont-bloody-escape-unicode >> flag is checked
and if it is set, then  L<Data::Dumper>'s C<< qquote() >>
is overriden with C<< _qquote_redefinition_by_Corion() >>
just for that instance and will be restored as soon as
the dump is finished. Similarly, a filter for
not escaping unicode is added to L<Data::Dump>
just for that particular call and is removed immediately
after. This has some computational cost and can be



( run in 2.101 seconds using v1.01-cache-2.11-cpan-71847e10f99 )