# [−] [src] Crate ucd_util

The `ucd-util` crate contains a smattering of utility functions that implement various algorithms specified by Unicode. There is no specific goal for exhaustiveness. Instead, implementations should be added on an as-needed basis.

A current design constraint of this crate is that it should not bring in any large Unicode tables. For example, to use the various property name and value canonicalization functions, you'll need to supply your own table, which can be generated using `ucd-generate`.

## Constants

RANGE_HANGUL_SYLLABLE | A set of ranges that corresponds to the set of all Hangul syllable codepoints.
RANGE_IDEOGRAPH | A set of ranges that corresponds to the set of all ideograph codepoints.

## Functions

canonical_property_name | Find the canonical property name for the given normalized property name.
canonical_property_value | Find the canonical property value for the given normalized property value.
character_name_normalize | Normalize the given character name in place according to UAX44-LM2.
hangul_full_canonical_decomposition | Return the full canonical decomposition of the given precomposed Hangul codepoint.
hangul_name | Return the character name of the given precomposed Hangul codepoint.
ideograph_name | Return the character name of the given ideograph codepoint.
property_values | Find the set of possible property values for a given property.
symbolic_name_normalize | Normalize the given symbolic name in place according to UAX44-LM3.

## Type Definitions

PropertyTable | The type of a property name table.
PropertyValueTable | Type of a property value table.
PropertyValues | A mapping of property values for a specific property.

# Help

## Keyboard Shortcuts

`?`
  Show this help dialog
`S`
  Focus the search field
`↑`
  Move up in search results
`↓`
  Move down in search results
`↹`
  Switch tab
`⏎`
  Go to active search result
`+`
  Expand all sections
`-`
  Collapse all sections

## Search Tricks

Prefix searches with a type followed by a colon (e.g., `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g., `vec -> usize` or `* -> vec`)

Search multiple things at once by splitting your query with comma (e.g., `str,u8` or `String,struct:Vec,test`)