canonicalize-specializer-1 ( specializer -- specializer' )


Vocabulary
multi-methods

Definition
USING: arrays assocs classes kernel math math.order namespaces
sequences sets ;

IN: multi-methods

: canonicalize-specializer-1
( specializer -- specializer' )
[
[ class? ] filter
[ length iota <reversed> [ 1 + neg ] map ] keep zip
[ length args [ max ] change ] keep
] [
[ pair? ] filter
[ keys [ hooks get adjoin ] each ] keep
] bi append ;