- MANAGER ATTRIBUTES
- MODIFIED MANAGER METHODS
Starch::Plugin::Sereal - Use Sereal for cloning and diffing Starch data structures.
my $starch = Starch->new( plugins => ['::Sereal'], );
By default "clone_data" in Starch::State and "is_data_diff" in Starch::State use Storable to do the heavy lifting. This module replaces those two methods with ones that use Sereal which can be leaps and bounds faster than Storable.
In this author's testing
is_data_diff will be about 3x faster with Sereal and
clone_data will be about 1.5x faster with Sereal.
These attributes are added to the Starch::Manager class.
An instance of Sereal::Encoder.
An instance of Sereal::Decoder.
An instance of Sereal::Encoder with the
canonical option set.
These methods are added to the Starch::Manager class.
Modified to use "canonical_sereal_encoder" to encode the two data structures.
Please submit bugs and feature requests to the Starch-Plugin-Sereal GitHub issue tracker:
Aran Clary Deltac <email@example.com>
Thanks to ZipRecruiter for encouraging their employees to contribute back to the open source ecosystem. Without their dedication to quality software development this distribution would not exist.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.