Sort::Key::Register - tell Sort::Key how to sort new data types. |
Sort::Key::Register - tell Sort::Key how to sort new data types.
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;
Sort::Key::Register allows 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';
$name
.
&multikeygen
is the multikey extraction function for the type and
@keytypes
are the types of the extracted keys.
the Sort::Key manpage, the Sort::Key::Maker manpage.
Salvador Fandiño, <sfandino@yahoo.com>
Copyright (C) 2005 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.
Sort::Key::Register - tell Sort::Key how to sort new data types. |