Crate precis_profiles

Source
Expand description

PRECIS Framework: Preparation, Enforcement, and Comparison of Internationalized Strings in Application Protocols as described in rfc8264

This crate implements the next PRECIS profiles:

  • rfc8265. Preparation, Enforcement, and Comparison of Internationalized Strings Representing Usernames and Passwords.
  • rfc8266. Preparation, Enforcement, and Comparison of Internationalized Strings Representing Nicknames
assert_eq!(Nickname::prepare("Guybrush Threepwood"),
  Ok(Cow::from("Guybrush Threepwood")));
assert_eq!(Nickname::enforce("   Guybrush     Threepwood  "),
  Ok(Cow::from("Guybrush Threepwood")));
assert_eq!(Nickname::compare("Guybrush   Threepwood  ",
  "guybrush threepwood"), Ok(true));

Re-exports§

pub use precis_core;

Structs§

Nickname
Nickname. Nicknames or display names in messaging and text conferencing technologies; pet names for devices, accounts, and people; and other uses of nicknames, display names, or pet names. Look at the IANA Considerations section for more details.
OpaqueString
OpaqueString Profile designed to deal with passwords and other opaque strings in security and application protocols. Replaces: The SASLprep profile of Stringprep. Look at the IANA Considerations section for more details.
UsernameCaseMapped
UsernameCaseMapped. Profile designed to deal with usernames in security and application protocols. It replaces the SASLprep profile of Stringprep. Look at the IANA Considerations section for more details.
UsernameCasePreserved
UsernameCasePreserved. Profile designed to deal with usernames in security and application protocols. It replaces the SASLprep profile of Stringprep. Look at the IANA Considerations section for more details.

Constants§

UNICODE_VERSION
The Unicode version of data