# `OpenUI.Runtime.Collation`
[🔗](https://github.com/ideia4it/openui/blob/v0.1.1/lib/openui/runtime/collation.ex#L1)

String order for `@Sort`, close to the ICU root collation that ECMAScript's
`localeCompare` uses (language.md, section 3.4).

Strings compare first by their letters without accents or case, then by
accents, then with lowercase before uppercase. This matches the root
collation for letters, which is what the spec's fixtures check. Digits and
punctuation keep code point order, unlike ICU.

# `compare`

```elixir
@spec compare(String.t(), String.t()) :: :lt | :eq | :gt
```

Compares two strings.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
