Expand description
This module provides the lower-level API for UTS 46.
Uts46::process is the core that the other convenience
methods build on.
UTS 46 flags map to this API as follows:
- CheckHyphens - true: Hyphens::Check, false:Hyphens::Allow; the WHATWG URL Standard sets this to false for normal (non-conformance-checker) user agents.
- CheckBidi - Always true; cannot be configured, since this flag is true even when WHATWG URL Standard beStrict is false.
- CheckJoiners - Always true; cannot be configured, since this flag is true even when WHATWG URL Standard beStrict is false.
- UseSTD3ASCIIRules - true: AsciiDenyList::STD3, false:AsciiDenyList::EMPTY; however, the check the WHATWG URL Standard performs right after the UTS 46 invocation corresponds toAsciiDenyList::URL.
- Transitional_Processing - Always false but could be implemented as a preprocessing step. This flag is deprecated and for Web purposes the transition is over in the sense that all of Firefox, Safari, or Chrome set this flag to false.
- VerifyDnsLength - true: DnsLength::Verify, false:DnsLength::Ignore; the WHATWG URL Standard sets this to false for normal (non-conformance-checker) user agents.
- IgnoreInvalidPunycode - Always false; cannot be configured. (Not yet covered by the WHATWG URL Standard, but 2 out of 3 major browser clearly behave as if this was false).
Structs§
- AsciiDeny List 
- The ASCII deny list to be applied.
- Uts46
- An implementation of UTS #46.
Enums§
- DnsLength
- The UTS 46 VerifyDNSLength flag.
- ErrorPolicy 
- Policy for customizing behavior in case of an error.
- Hyphens
- The CheckHyphens mode.
- ProcessingError 
- The failure outcome of Uts46::process
- ProcessingSuccess 
- The success outcome of Uts46::process
Functions§
- verify_dns_ length 
- Performs the VerifyDNSLength check on the output of the ToASCII operation.