lue-bird/elm-keysset/3.0.1

NOTE: the latest version is 5.0.2

Char.Order

Order Chars

casing

type Case
= CaseLower
| CaseUpper

order

'a' < 'A'

upperLower : Ordering Case (Reverse LowerUpper)

'A' < 'a'

unicode : Ordering Char Unicode

Ordering according to the unicode char code.

This behavior matches elm's Basics.compare.

type Unicode

Tag for unicode

Ordering Case charOrderTag
-> Ordering Char (Alphabetically charOrderTag)

Order Chars

  • Both are letters → Order alphabetically
  • Both aren't letters → Order according to unicode char code
  • Only one is a letter → the letter is considered greater
Order.with (Char.Order.alphabetically Char.Order.upperLower) 'b' 'D'
--> LT

Order.with (Char.Order.alphabetically Char.Order.upperLower) 'l' 'L'
--> GT

Order.with (Char.Order.alphabetically Char.Order.upperLower) 'i' '!'
--> GT

Order.with (Char.Order.alphabetically Char.Order.upperLower) '-' '!'
--> Order.with Char.Order.unicode '-' '!'
type alias Alphabetically caseOrder =
( AlphabeticallyTag, caseOrder )

Wrapper tag for Alphabetically