Sort::Key::Register3pm
Tell sort::key how to sort new data types.
Usage
use Sort::Key::Register Person =>sub { $_->surname, $_->name },qw(string string);use Sort::Key::Register 'Color::Component' => 'integer';use Sort::Key::Register Color =>sub { $_->R, $_->G, $_->B },('Color::Component') x 3;
Overview
Sort::Key::Register allows one to register new data types with Sort::Key so that they can be sorted as natively supported ones.
It works as a pragma module and doesn't export any function, all its functionality is provided via "use":
use Sort::Key::Register ...
To avoid collisions between modules registering types with the same name, you should qualify them with the package name.
use Sort::Key::Register 'MyPkg::foo' => sub { $_ }, '-int';# or using __PACKAGE__:use Sort::Key::Register __PACKAGE__, sub { $_ }, '-int';
Usage
- use Sort::Key::Register $name => \&multikeygen, @keytypes;
-
registers type
$name.&multikeygenis the multi-key extraction function for the type and@keytypesare the types of the extracted keys.
- use Sort::Key::Register $name => $keytype;
-
this 'use' is useful for simple types that are sorted as another type already registered, maybe changing the direction of the sort (ascending or descending).
Copyright and license
Copyright (C) 2005, 2014 by Salvador Fandiño
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.4 or, at your option, any later version of Perl 5 you may have available.
Releases
8 releases since Debian 7 (Wheezy); the text changed 7 times.