Data-SplitSerializer

 view release on metacpan or  search on metacpan

README  view on Meta::CPAN

        my $round_trip = $dss->serialize( $dss->deserialize_pathval(
           'a[0]' => { your => 'hash' }
        ) );
 
        # Returns:
        $round_trip = {
           'a[0].your' => 'hash',
        };
 
        # Now protect the hash
        my $round_trip = $dss->serialize( $dss->deserialize_pathval(
           'a[0]' => \{ your => 'hash' }
        ) );
 
        # Returns:
        $round_trip = {
           'a[0]' => \{ your => 'hash' }
        };

  Sparse arrays and memory usage
    Since arrays within paths are based on indexes, there's a potential
    security issue with large indexes causing abnormal memory usage. In
    Perl, these two arrays would have drastically different memory
    footprints:

        my @small;
        $small[0] = 1;
 
        my @large;
        $large[999999] = 1;

    This can be mitigated by making sure the Path style you use will limit
    the total digits for array indexes. Parse::Path handles this on all of
    its paths, but it's something to be aware of if you create your own path
    classes.

TODO
    This module might split off into individual split serializers, but so
    far, this is the only one "out in the wild".

SEE ALSO
    Parse::Path

ACKNOWLEDGEMENTS
    Kent Fredric for getting me started on the basic idea.

AVAILABILITY
    The project homepage is
    <https://github.com/SineSwiper/Data-SplitSerializer/wiki>.

    The latest version of this module is available from the Comprehensive
    Perl Archive Network (CPAN). Visit <http://www.perl.com/CPAN/> to find a
    CPAN site near you, or see
    <https://metacpan.org/module/Data::SplitSerializer/>.

SUPPORT
  Internet Relay Chat
    You can get live help by using IRC ( Internet Relay Chat ). If you don't
    know what IRC is, please read this excellent guide:
    <http://en.wikipedia.org/wiki/Internet_Relay_Chat>. Please be courteous
    and patient when talking to us, as we might be busy or sleeping! You can
    join those networks/channels and get help:

    *   irc.perl.org

        You can connect to the server at 'irc.perl.org' and talk to this
        person for help: SineSwiper.

  Bugs / Feature Requests
    Please report any bugs or feature requests via
    <https://github.com/SineSwiper/Data-SplitSerializer/issues>.

AUTHOR
    Brendan Byrd <BBYRD@CPAN.org>

CONTRIBUTOR
    Brendan Byrd <bbyrd@cpan.org>

COPYRIGHT AND LICENSE
    This software is Copyright (c) 2013 by Brendan Byrd.

    This is free software, licensed under:

      The Artistic License 2.0 (GPL Compatible)



( run in 0.995 second using v1.01-cache-2.11-cpan-39bf76dae61 )