Sort::Key::Register.3pm

Langue: en

Autres versions - même langue

Version: 2006-05-08 (fedora - 01/12/10)

Section: 3 (Bibliothèques de fonctions)

NAME

Sort::Key::Register - tell Sort::Key how to sort new data types.

SYNOPSYS

   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;
 
 

DESCRIPTION

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';
 
 

USAGE

use Sort::Key::Register $name => \&multikeygen, @keytypes;
registers type $name.

&multikeygen is the multikey extraction function for the type and @keytypes are 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).

SEE ALSO

Sort::Key, Sort::Key::Maker.

AUTHOR

Salvador Fandin~o, <sfandino@yahoo.com> Copyright (C) 2005 by Salvador Fandin~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.