using libidn; public int main (string[] args) { { //var str = "This is an UTF-8 encoded string. / Tohle je řetězec zakódovaný v UTF-8."; var str = "Tento řetězec je zakódovaný v UTF-8."; var ucs4 = utf8_to_ucs4_fast (str); string output; var status = Punycode.encode (ucs4, null, out output); stdout.puts (output); stdout.puts ("\n"); uint8[] flags; status = Punycode.decode (output, out ucs4, out flags); output = ucs4_to_utf8 (ucs4); stdout.puts (output); stdout.puts ("\n"); } { string output; var str = "MiXeD-CaSe"; //string output; var code = Stringprep.stringprep (str, out output, Stringprep.xmpp_nodeprep_profile); stdout.printf ("Input: %s\n", str); stdout.printf ("Return code: %d\n", code); stdout.printf ("Output length %ld\n", output.length); stdout.printf ("Output: %s\n", output); str = "prohibited character"; code = Stringprep.stringprep (str, out output, Stringprep.xmpp_nodeprep_profile); stdout.printf ("Input: %s\n", str); stdout.printf ("Return code: %d\n", code); stdout.printf ("Output: %s\n", output); } return 0; }