pub fn char_to_smt(x: u32) -> StringExpand description
Convert integer x (interpreted as a Unicode codepoint) to a string in the SMT syntax:
- printable ASCII characters (other than double quote) are unchanged
- a double quote is converted to two double quotes
- non-printable ASCII characters are converted to “\u{xx}” (two hexadecimal digits)
- other characters are printed as “\uxxxx” or “\u{xxxxx}”
- if x is outside the valid SMT range (i.e., x > 0x2FFFF) then it’s converted to the non-SMT compliant string \u{xxxxxx} with as many hexadecimal digits as required.