home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World 1998 October
/
PCWorld_1998-10_cd.bin
/
software
/
prehled
/
inprise
/
JRUNTIME.Z
/
javaString.h
< prev
next >
Wrap
C/C++ Source or Header
|
1998-05-08
|
3KB
|
117 lines
/*
* @(#)javaString.h 1.15 97/01/25
*
* Copyright (c) 1995, 1996 Sun Microsystems, Inc. All Rights Reserved.
*
* This software is the confidential and proprietary information of Sun
* Microsystems, Inc. ("Confidential Information"). You shall not
* disclose such Confidential Information and shall use it only in
* accordance with the terms of the license agreement you entered into
* with Sun.
*
* SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE
* SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
* IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
* PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR ANY DAMAGES
* SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING
* THIS SOFTWARE OR ITS DERIVATIVES.
*
* CopyrightVersion 1.1_beta
*
*/
/*
* Java string utilities
*/
#ifndef _JAVASTRING_H_
#define _JAVASTRING_H_
#include "oobj.h"
#include "java_lang_String.h"
/*
* Print the String object with prints.
*/
void javaStringPrint(Hjava_lang_String *);
/*
* Return the length of the String object.
*/
int javaStringLength(Hjava_lang_String *);
/*
* Create and return a new Java String object, initialized from the C string.
*/
Hjava_lang_String *makeJavaString(char *, int);
/*
* Create a new C string initialized from the specified Java string,
* and return a pointer to it.
* For makeCString, temporary storage is allocated and released automatically
* when all references to the returned value are eliminated. WARNING: You
* must keep this pointer in a variable to prevent the storage from getting
* garbage collected.
* For allocCString, a "malloc" is used to get the storage; the caller is
* responsible for "free"ing the pointer that is returned.
*
*/
char *makeCString(Hjava_lang_String *s);
char *allocCString(Hjava_lang_String *s);
/*
* Get the characters of the String object into a unicode string buffer.
* No allocation occurs. Assumes that len is less than or equal to
* the length of the string, and that the buf is at least len+1 unicodes
* in size. The unicode buffer's address is returned.
*/
unicode *javaString2unicode(Hjava_lang_String *, unicode *, int);
/*
* Get the characters of the String object into a C string buffer.
* No allocation occurs. Assumes that len is the size of the buffer.
* The C string's address is returned.
*/
char *javaString2CString(Hjava_lang_String *, char *, int);
/*
* convert Java String to platform encoding string.
*/
char *makePlatformCString(Hjava_lang_String *);
/*
* convert platform encoding string to Java String.
*/
Hjava_lang_String *makeJavaStringFromPlatformCString(char *, int);
/*
* Returns the number of bytes needed to hold a Java string in UTF
* format, NOT including the terminating NULL.
*
* Returns -1 if something is wrong.
*/
int
javaStringUTFLength(HString *s);
/*
* Fill buf with unicode representation of hstr, upto buflen chars.
* The UTF string will be NUL-terminated.
*
* If both buf and buflen are 0, malloc an appropriately sized
* buffer for the result.
*
* Return result buffer.
*/
char *javaString2UTF(HString *, char *, int);
/*
* Create a Java String whose characters are initialized from
* the supplied NUL-terminated UTF string.
*/
HString *makeJavaStringUTF(char *);
#endif /* !_JAVASTRING_H_ */