Crate precis_core
source · [−]Expand description
PRECIS Framework: Preparation, Enforcement, and Comparison of
Internationalized Strings in Application Protocols as described in
rfc8264
This crate implements the PRECIS base string classes and tables
that profiles can use for their implementation. The crate precis-profiles
provides a list of implemented profiles that applications can use.
Re-exports
pub use crate::stringclasses::FreeformClass;
pub use crate::stringclasses::IdentifierClass;
pub use crate::stringclasses::StringClass;
Modules
Registry of rules that define the contexts in which particular
PROTOCOL-VALID characters, characters associated with a requirement
for Contextual Information, are permitted. These rules are expressed
as tests on the label in which the characters appear (all, or any part of,
the label may be tested).
Each rule is constructed as a Boolean expression that evaluates to either true or false. A simple true or false rule sets the default result value for the rule set. Subsequent conditional rules that evaluate to true or false may re-set the result value.
A special value Undefined is used to deal with any error conditions, such as an attempt to test a character before the start of a label or after the end of a label. If any term of a rule evaluates to Undefined, further evaluation of the rule immediately terminates, as the result value of the rule will itself be Undefined.
Each rule is constructed as a Boolean expression that evaluates to either true or false. A simple true or false rule sets the default result value for the rule set. Subsequent conditional rules that evaluate to true or false may re-set the result value.
A special value Undefined is used to deal with any error conditions, such as an attempt to test a character before the start of a label or after the end of a label. If any term of a rule evaluates to Undefined, further evaluation of the rule immediately terminates, as the result value of the rule will itself be Undefined.
This module contains traits with operations and rules that profiles
must implement such as it is defined by the PRECIS framework
rfc8264
This module contains the implementation and traits for the
String classes such as it is defined by the PRECIS framework
rfc8264
Structs
Error that contains information regarding the wrong Unicode code point
Enums
A representation of either a single codepoint or a range of codepoints.
Derived property value
Represents any kind of error that may happen when
preparing, enforcing or comparing internationalized
strings
Internal errors that group unusual error conditions that mostly
have to do with the processing of wrong labels, unexpected Unicode
code points if tested against another version defined in PRECIS, etc.
Constants
The Unicode version of data