Module fluent_syntax::unicode [−][src]
Expand description
A set of helper functions for unescaping Fluent unicode escape sequences.
Unicode
Fluent supports UTF-8 in all FTL resources, but it also allows
unicode sequences to be escaped in String Literals.
Four byte sequences are encoded with \u and six byte
sqeuences using \U.
Example
use fluent_syntax::unicode::unescape_unicode_to_string;
assert_eq!(
unescape_unicode_to_string("Foo \\u5bd2 Bar"),
"Foo 寒 Bar"
);
assert_eq!(
unescape_unicode_to_string("Foo \\U01F68A Bar"),
"Foo 🚊 Bar"
);Other unescapes
This also allows for a char " to be present inside an FTL string literal,
and for \ itself to be escaped.
Example
use fluent_syntax::unicode::unescape_unicode_to_string;
assert_eq!(
unescape_unicode_to_string("Foo \\\" Bar"),
"Foo \" Bar"
);
assert_eq!(
unescape_unicode_to_string("Foo \\\\ Bar"),
"Foo \\ Bar"
);Functions
Unescapes to a writer without allocating.
Unescapes to a Cow<str> optionally allocating.
