sorting.human: rename <hybrid> to <alphanum>. Fixes #226.
parent
81e3bef507
commit
aa4e65ef6f
|
@ -25,17 +25,17 @@ IN: sorting.human
|
||||||
[ digit? ] [ string>number ] find-sequences ;
|
[ digit? ] [ string>number ] find-sequences ;
|
||||||
|
|
||||||
! For comparing integers or sequences
|
! For comparing integers or sequences
|
||||||
TUPLE: hybrid obj ;
|
TUPLE: alphanum obj ;
|
||||||
|
|
||||||
: <hybrid> ( obj -- hybrid )
|
: <alphanum> ( obj -- hybrid )
|
||||||
hybrid new
|
alphanum new
|
||||||
swap >>obj ; inline
|
swap >>obj ; inline
|
||||||
|
|
||||||
: <hybrid-insensitive> ( obj -- hybrid )
|
: <alphanum-insensitive> ( obj -- hybrid )
|
||||||
hybrid new
|
alphanum new
|
||||||
swap dup string? [ w/collation-key ] when >>obj ; inline
|
swap dup string? [ w/collation-key ] when >>obj ; inline
|
||||||
|
|
||||||
M: hybrid <=>
|
M: alphanum <=>
|
||||||
[ obj>> ] bi@
|
[ obj>> ] bi@
|
||||||
2dup [ integer? ] bi@ xor [
|
2dup [ integer? ] bi@ xor [
|
||||||
drop integer? +lt+ +gt+ ?
|
drop integer? +lt+ +gt+ ?
|
||||||
|
@ -43,5 +43,5 @@ M: hybrid <=>
|
||||||
<=>
|
<=>
|
||||||
] if ;
|
] if ;
|
||||||
|
|
||||||
<< "human" [ find-numbers [ <hybrid> ] map ] define-sorting >>
|
<< "human" [ find-numbers [ <alphanum> ] map ] define-sorting >>
|
||||||
<< "humani" [ find-numbers [ <hybrid-insensitive> ] map ] define-sorting >>
|
<< "humani" [ find-numbers [ <alphanum-insensitive> ] map ] define-sorting >>
|
||||||
|
|
Loading…
Reference in New Issue