utf8.hpp revision 0
0N/A * Copyright 1997-2003 Sun Microsystems, Inc. All Rights Reserved. 0N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 0N/A * This code is free software; you can redistribute it and/or modify it 0N/A * under the terms of the GNU General Public License version 2 only, as 0N/A * published by the Free Software Foundation. 0N/A * This code is distributed in the hope that it will be useful, but WITHOUT 0N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 0N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 0N/A * version 2 for more details (a copy is included in the LICENSE file that 0N/A * accompanied this code). 0N/A * You should have received a copy of the GNU General Public License version 0N/A * 2 along with this work; if not, write to the Free Software Foundation, 0N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 0N/A * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, 0N/A * CA 95054 USA or visit www.sun.com if you need additional information or 0N/A * have any questions. 0N/A// Low-level interface for UTF8 strings 0N/A // returns the unicode length of a 0-terminated uft8 string 0N/A // returns the unicode length of a non-0-terminated uft8 string 0N/A // converts a uft8 string to a unicode string 0N/A // decodes the current utf8 character, stores the result in value, 0N/A // and returns the end of the current uft8 chararacter. 0N/A // decodes the current utf8 character, gets the supplementary character instead of 0N/A // the surrogate pair when seeing a supplementary character in string, 0N/A // stores the result in value, and returns the end of the current uft8 chararacter. 0N/A// Low-level interface for UNICODE strings 0N/A// A unicode string represents a string in the UTF-16 format in which supplementary 0N/A// characters are represented by surrogate pairs. Index values refer to char code 0N/A// units, so a supplementary character uses two positions in a unicode string. 0N/A // returns the utf8 size of a unicode character 0N/A // returns the utf8 length of a unicode string 0N/A // converts a unicode string to utf8 string 0N/A // converts a unicode string to a utf8 string; result is allocated 0N/A // in resource area unless a buffer is provided.