Paraphrased from the Data:Swap's documentation ...
Data::Swap (XS) module allows to swap the contents of two referenced
variables, even if they have different types. The main application is
to change the base type of an object after it has been created, for
example for dynamic loading of data structures:
swap $self, bless $replacement, $newclass;
Data::TemporaryBag module provides a bag object class
handling long size data. The short size data are kept on
memory. When the data size becomes over $Threshold size,
they are saved into a temporary file internally.
Data::ObjectDriver is an object relational mapper, meaning that it
maps object-oriented design concepts onto a relational database.
It's inspired by, and descended from, the MT::ObjectDriver classes in
Six Apart's Movable Type and TypePad weblogging products. But it adds
in caching and partitioning layers, allowing you to spread data across
multiple physical databases, without your application code needing to
know where the data is stored.
It's currently considered ALPHA code. The API is largely fixed, but
may seen some small changes in the future. For what it's worth, the
likeliest area for changes are in the syntax for the search method,
and would most likely not break much in the way of backwards
compatibility.
Hashes are great for storing named data, but if you want more than one entry
for a name, you have to use a list of pairs. Even then, this is really boring
to write:
@values = (
foo => undef,
bar => undef,
baz => undef,
xyz => { ... },
);
With Data::OptList, you can do this instead:
Data::OptList::mkopt([
qw(foo bar baz),
xyz => { ... },
]);
This works by assuming that any defined scalar is a name and any reference
following a name is its value.
This modules provides an XPath-like syntax to get values from complex
data structures.
Data::Peek started off as DDumper being a wrapper module over
Data::Dumper, but grew out to be a set of low-level data
introspection utilities that no other module provided yet, using
the lowest level of the perl internals API as possible.
This module collects common validation routines to make input validation,
and untainting easier and more readable. Most of the functions are not
much shorter than their direct perl equivalent, but their names make it
clear what you're trying to test for.
Data::Perl is a collection of classes that wrap fundamental data
types that exist in Perl. These classes and methods as they exist
today are an attempt to mirror functionality provided by Moose's
Native Traits. One important thing to note is all classes currently
do no validation on constructor input.
Data::Printer is meant to do one thing and one thing only: display Perl
variables and objects on screen, properly formatted (to be inspected by a
human).
Here's what Data::Printer has to offer to Perl developers, out of the box:
- Very sane defaults (I hope!)
- Highly customizable (in case you disagree with me :)
- Colored output by default
- Human-friendly output, with array index and custom separators
- Full object dumps including methods, inheritance and internals
- Exposes extra information such as tainted data and weak references
- Ability to easily create filters for objects and regular structures
- Ability to load settings from a .dataprinter file so you don't have to write
anything other than "use DDP;" in your code!
A module used to generate random strings and lists.