NAME
FP::Abstract::Compare - comparison protocol
SYNOPSIS
package
FPCompareExample::Foo {
sub
FP_Compare_compare {
my
(
$a
,
$b
) =
@_
;
# let's make the default sort order reversed for the sake
# of a more interesting example:
$b
->num cmp
$a
->num
}
_END_
}
is_equal( purearray(2,3,-7,4,2,8)
->
map
(\
&FPCompareExample::Foo::c::Foo
)
->sortCompare
->
map
(the_method(
"num"
)),
purearray(8, 4, 3, 2, 2, -7));
DESCRIPTION
Objects implementing this protocol can be ordered unambiguously.
The `$a->FP_Compare_compare($b)` returns -1 if $a is to be ordered before $b (is smaller), 0 if they are to be ordered into the same position, 1 if $a is to be ordered after $b.
This method is used for the default sort order by the `sort` method offered on sequences.
SEE ALSO
NOTE
This is alpha software! Read the status section in the package README or on the website.