Crate heck [−] [src]
heck is a case conversion library.
This library exists to provide case conversion between common cases like CamelCase and snake_case. It is intended to be unicode aware, internally, consistent, and reasonably well performing.
Definition of a word boundary
Word boundaries are defined as the "unicode words" defined in the
unicode_segmentation
library, as well as within those words in this manner:
- All underscore characters are considered word boundaries.
- A single uppercase letter (followed by no letters or by lowercase letters) is considered to be just after a word boundary.
- Multiple consecutive uppercase letters are considered to be between two word boundaries.
That is, "HelloWorld" is segmented "Hello World" whereas "HELLOworld" is segmented "HELLO world."
Cases contained in this library:
- CamelCase
- snake_case
- kebab-case
- SHOUTY_SNAKE_CASE
- mixedCase
- Title Case
Traits
CamelCase |
This trait defines a camel case conversion. |
KebabCase |
This trait defines a kebab case conversion. |
MixedCase |
This trait defines a mixed case conversion. |
ShoutySnakeCase |
This trait defines a shouty snake case conversion. |
ShoutySnekCase |
Oh heck, ShoutySnekCase is an alias for ShoutySnakeCase. See ShoutySnakeCase for more documentation. |
SnakeCase |
This trait defines a camel case conversion. |
SnekCase |
Oh heck, SnekCase is an alias for SnakeCase. See SnakeCase for more documentation. |
TitleCase |
This trait defines a title case conversion. |