Main Page | Namespace List | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals | Related Pages

utf.h

Go to the documentation of this file.
00001 #ifndef _utf_h_defined_
00002 #define _utf_h_defined_
00003 
00004 /*!
00005  * @file utf.h
00006  *
00007  * @brief Manipulate UTF-8 CONSTANT_Utf8_info character strings.
00008  *
00009  * There are three character string types in this program:
00010  * null-terminated @link #rchar (rchar)@endlink strings
00011  * @e ala 'C' language, UTF-8
00012  * @link #CONSTANT_Utf8_info (CONSTANT_Utf8_info)@endlink strings,
00013  * and Unicode @link #jchar (jchar)[]@endlink strings.
00014  *
00015  *
00016  * @section Control
00017  *
00018  * \$URL: https://svn.apache.org/path/name/utf.h $ \$Id: utf.h 0 09/28/2005 dlydick $
00019  *
00020  * Copyright 2005 The Apache Software Foundation
00021  * or its licensors, as applicable.
00022  *
00023  * Licensed under the Apache License, Version 2.0 ("the License");
00024  * you may not use this file except in compliance with the License.
00025  * You may obtain a copy of the License at
00026  *
00027  *     http://www.apache.org/licenses/LICENSE-2.0
00028  *
00029  * Unless required by applicable law or agreed to in writing,
00030  * software distributed under the License is distributed on an
00031  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
00032  * either express or implied.
00033  *
00034  * See the License for the specific language governing permissions
00035  * and limitations under the License.
00036  *
00037  * @version \$LastChangedRevision: 0 $
00038  *
00039  * @date \$LastChangedDate: 09/28/2005 $
00040  *
00041  * @author \$LastChangedBy: dlydick $
00042  *         Original code contributed by Daniel Lydick on 09/28/2005.
00043  *
00044  * @section Reference
00045  *
00046  */
00047 
00048 
00049 /* Prototypes for functions in 'utf.c' */
00050 
00051 ARCH_COPYRIGHT_APACHE(utf, h, "$URL: https://svn.apache.org/path/name/utf.h $ $Id: utf.h 0 09/28/2005 dlydick $");
00052 
00053 extern jshort utf_utf2unicode(CONSTANT_Utf8_info *utf_inbfr,
00054                               jchar              *outbfr);
00055 
00056 extern rchar *utf_utf2prchar(CONSTANT_Utf8_info *src);
00057 
00058 extern rchar *utf_utf2prchar_classname(CONSTANT_Utf8_info *src);
00059 
00060 extern jbyte utf_utf_strcmp(CONSTANT_Utf8_info *s1,
00061                             CONSTANT_Utf8_info *s2);
00062 
00063 extern jbyte utf_prchar_pcfs_strcmp(rchar                   *s1,
00064                                     ClassFile               *pcfs,
00065                                     jvm_constant_pool_index  cpidx2);
00066 
00067 extern jbyte utf_pcfs_strcmp(CONSTANT_Utf8_info      *s1,
00068                              ClassFile               *pcfs,
00069                              jvm_constant_pool_index  cpidx2);
00070 
00071 extern jbyte utf_prchar_classname_strcmp(rchar                  *s1,
00072                                          ClassFile              *pcfs,
00073                                         jvm_constant_pool_index cpidx2);
00074 
00075 extern jbyte utf_classname_strcmp(CONSTANT_Utf8_info      *s1,
00076                                   ClassFile               *pcfs2,
00077                                   jvm_constant_pool_index  cpidx2);
00078 
00079 extern jvm_array_dim utf_get_utf_arraydims(CONSTANT_Utf8_info *inbfr);
00080 
00081 extern rboolean utf_utf_isarray(CONSTANT_Utf8_info *inbfr);
00082 
00083 extern rboolean utf_utf_isclassformatted(CONSTANT_Utf8_info *src);
00084 
00085 extern cp_info_dup
00086                  *utf_utf2utf_unformatted_classname(cp_info_dup *inbfr);
00087 
00088 #endif /* _utf_h_defined_ */
00089 
00090 
00091 /* EOF */
00092 

Generated on Fri Sep 30 18:59:36 2005 by  doxygen 1.4.4