Main Page   File List   File Members  

String.h

Go to the documentation of this file.
00001 /* -*- mode: c++; -*-
00002  *-----------------------------------------------------------------------------
00003  * $RCSfile: String.h,v $
00004  *
00005  * See Copyright for the status of this software.
00006  *
00007  * The OpenSOAP Project
00008  * http://opensoap.jp/
00009  *-----------------------------------------------------------------------------
00010  */
00011 #ifndef OpenSOAP_String_H
00012 #define OpenSOAP_String_H
00013 
00014 #include <OpenSOAP/ByteArray.h>
00015 
00022 #ifdef __cplusplus
00023 extern "C" {
00024 #endif /* __cplusplus */
00025 
00030     typedef struct tagOpenSOAPString OpenSOAPString;
00031 
00036     typedef OpenSOAPString    *OpenSOAPStringPtr;
00037 
00038 
00047     int
00048     OPENSOAP_API
00049     OpenSOAPStringCreate(/* [out] */ OpenSOAPStringPtr *str);
00050     
00061     int
00062     OPENSOAP_API
00063     OpenSOAPStringCreateWithMB(/* [in]  */ const char *mb_str,
00064                                /* [out] */ OpenSOAPStringPtr *str);
00065 
00076     int
00077     OPENSOAP_API
00078     OpenSOAPStringCreateWithWC(/* [in]  */ const wchar_t *wc_str,
00079                                /* [out] */ OpenSOAPStringPtr *str);
00080 
00093     int
00094     OPENSOAP_API
00095     OpenSOAPStringCreateWithCharEncodingString(/* [in]  */ const char * char_enc,
00096                                                /* [in]  */ OpenSOAPByteArrayPtr char_enc_str,
00097                                                /* [out] */ OpenSOAPStringPtr *str);
00098 
00109     int
00110     OPENSOAP_API
00111     OpenSOAPStringCreateWithUTF8(/* [in]  */ const char *utf8Str,
00112                                  /* [out] */ OpenSOAPStringPtr *str);
00113 
00122     int
00123     OPENSOAP_API
00124     OpenSOAPStringRetain(/* [in] */ OpenSOAPStringPtr str);
00125 
00134     int
00135     OPENSOAP_API
00136     OpenSOAPStringRelease(/* [in] */ OpenSOAPStringPtr str);
00137 
00148     int
00149     OPENSOAP_API
00150     OpenSOAPStringGetLengthMB(/* [in]  */ OpenSOAPStringPtr str,
00151                               /* [out] */ size_t *len);
00152         
00163     int
00164     OPENSOAP_API
00165     OpenSOAPStringGetLengthWC(/* [in]  */ OpenSOAPStringPtr str,
00166                               /* [out] */ size_t *len);
00167 
00184     int
00185     OPENSOAP_API
00186     OpenSOAPStringGetStringMBWithAllocator(/* [in]  */ OpenSOAPStringPtr str,
00187                                            /* [in]  */ char * (*memAllocator)(size_t),
00188                                            /* [out] */ size_t *len,
00189                                            /* [out] */ char **mbStr);
00190 
00207     int
00208     OPENSOAP_API
00209     OpenSOAPStringGetStringWCWithAllocator(/* [in]  */ OpenSOAPStringPtr str,
00210                                            /* [in]  */ wchar_t * (*memAllocator)(size_t),
00211                                            /* [out] */ size_t *len,
00212                                            /* [out] */ wchar_t **wcStr);
00213 
00230     int
00231     OPENSOAP_API
00232     OpenSOAPStringGetStringUTF8WithAllocator(/* [in]  */ OpenSOAPStringPtr str,
00233                                              /* [in]  */ char * (*memAllocator)(size_t),
00234                                              /* [out] */ size_t *len,
00235                                              /* [out] */ char **utf8Str);
00236 
00249     int
00250     OPENSOAP_API
00251     OpenSOAPStringGetStringMB(/* [in]      */ OpenSOAPStringPtr str,
00252                               /* [in, out] */ size_t *len,
00253                               /* [out]     */ char * mb_str);
00254         
00267     int
00268     OPENSOAP_API
00269     OpenSOAPStringGetStringWC(/* [in]      */ OpenSOAPStringPtr str,
00270                               /* [in, out] */ size_t *len,
00271                               /* [out]     */ wchar_t *wc_str);
00272 
00285     int
00286     OPENSOAP_API
00287     OpenSOAPStringGetCharEncodingString(/* [in]  */ OpenSOAPStringPtr str,
00288                                         /* [in]  */ const char *char_enc,
00289                                         /* [out] */ OpenSOAPByteArrayPtr char_enc_str);
00290     
00301     int
00302     OPENSOAP_API
00303     OpenSOAPStringSetStringMB(/* [in] */ OpenSOAPStringPtr str,
00304                               /* [in] */ const char *mb_str);
00305         
00316     int
00317     OPENSOAP_API
00318     OpenSOAPStringSetStringWC(/* [in] */ OpenSOAPStringPtr str,
00319                               /* [in] */ const wchar_t *wc_str);
00320 
00333     int
00334     OPENSOAP_API
00335     OpenSOAPStringSetCharEncodingString(/* [out] */ OpenSOAPStringPtr str,
00336                                         /* [in]  */ const char *char_enc,
00337                                         /* [in]  */ OpenSOAPByteArrayPtr charEncStr);
00338 
00349     int
00350     OPENSOAP_API
00351     OpenSOAPStringSetStringUTF8(/* [out] */ OpenSOAPStringPtr str,
00352                                 /* [in]  */ const char *utf8Str);
00353 
00366     int
00367     OPENSOAP_API
00368     OpenSOAPStringFormatMB(/* [out] */ OpenSOAPStringPtr str,
00369                            /* [in]  */ const char *format, ...);
00370 
00383     int
00384     OPENSOAP_API
00385     OpenSOAPStringFormatWC(/* [out] */ OpenSOAPStringPtr str,
00386                            /* [in]  */ const wchar_t *format, ...);
00387 
00400     int
00401     OPENSOAP_API
00402     OpenSOAPStringCompareMB(/* [in]  */ OpenSOAPStringPtr str,
00403                             /* [in]  */ const char *cmp_str,
00404                             /* [out] */ int *cmp_rslt);
00405 
00418     int
00419     OPENSOAP_API
00420     OpenSOAPStringCompareWC(/* [in]  */ OpenSOAPStringPtr str,
00421                             /* [in]  */ const wchar_t *cmp_str,
00422                             /* [out] */ int *cmp_rslt);
00423 
00436     int
00437     OPENSOAP_API
00438     OpenSOAPStringCompare(/* [in]  */ OpenSOAPStringPtr str,
00439                           /* [in]  */ OpenSOAPStringPtr cmp_str,
00440                           /* [out] */ int *cmp_rslt);
00441 
00454     int
00455     OPENSOAP_API
00456     OpenSOAPStringFindStringMB(/* [in]      */ OpenSOAPStringPtr str,
00457                                /* [in]      */ const char *find_str,
00458                                /* [in, out] */ size_t *idx);
00459 
00472     int
00473     OPENSOAP_API
00474     OpenSOAPStringFindStringWC(/* [in]      */ OpenSOAPStringPtr str,
00475                                /* [in]      */ const wchar_t *find_str,
00476                                /* [in, out] */ size_t *idx);
00477 
00490     int
00491     OPENSOAP_API
00492     OpenSOAPStringFindString(/* [in]      */ OpenSOAPStringPtr str,
00493                              /* [in]      */ OpenSOAPStringPtr find_str,
00494                              /* [in, out] */ size_t *idx);
00495 
00508     typedef int
00509     (*OpenSOAPStringFindIfFunc)(/* [in, out] */ void *opt,
00510                                 /* [in]      */ wchar_t c,
00511                                 /* [out]     */ int *judge);
00512         
00527     extern
00528     int
00529     OPENSOAP_API
00530     OpenSOAPStringFindIfStringIndex(/* [in]  */ OpenSOAPStringPtr str,
00531                                     /* [in]  */ OpenSOAPStringFindIfFunc find_func,
00532                                     /* [in]  */ void *find_func_opt,
00533                                     /* [in, out] */ size_t *idx);
00548     int
00549     OPENSOAP_API
00550     OpenSOAPStringReplaceStringMB(/* [in, out] */ OpenSOAPStringPtr str,
00551                                   /* [in]      */ const char *find_str,
00552                                   /* [in]      */ const char *rplc_str,
00553                                   /* [in, out] */ size_t *idx);
00554     
00569     int
00570     OPENSOAP_API
00571     OpenSOAPStringReplaceStringWC(/* [in, out] */ OpenSOAPStringPtr str,
00572                                   /* [in]      */ const wchar_t *find_str,
00573                                   /* [in]      */ const wchar_t *rplc_str,
00574                                   /* [in, out] */ size_t *idx);
00575     
00590     int
00591     OPENSOAP_API
00592     OpenSOAPStringReplaceString(/* [in, out] */ OpenSOAPStringPtr str,
00593                                 /* [in]      */ OpenSOAPStringPtr find_str,
00594                                 /* [in]      */ OpenSOAPStringPtr rplc_str,
00595                                 /* [in, out] */ size_t *idx);
00596     
00605     int
00606     OPENSOAP_API
00607     OpenSOAPStringClear(/* [out] */ OpenSOAPStringPtr str);
00608 
00621     int
00622     OPENSOAP_API
00623     OpenSOAPStringAppendMB(/* [out] */ OpenSOAPStringPtr str,
00624                            /* [in]  */ const char *mb_str,
00625                            /* [in]  */ size_t mb_len);
00626 
00639     int
00640     OPENSOAP_API
00641     OpenSOAPStringAppendWC(/* [out] */ OpenSOAPStringPtr str,
00642                            /* [in]  */ const wchar_t *wc_str,
00643                            /* [in]  */ size_t wc_len);
00644 
00655     int
00656     OPENSOAP_API
00657     OpenSOAPStringDuplicate(/* [in]  */ OpenSOAPStringPtr str,
00658                             /* [out] */ OpenSOAPStringPtr *dup_str);
00659 
00674     int
00675     OPENSOAP_API
00676     OpenSOAPStringGetSubstring(/* [in]  */ OpenSOAPStringPtr str,
00677                                /* [in]  */ size_t   beg,
00678                                /* [in]  */ size_t   len,
00679                                /* [out] */ OpenSOAPStringPtr *sub_str);
00680 
00695     int
00696     OPENSOAP_API
00697     OpenSOAPStringConvertCharEncoding(/* [in]  */ const char *from_enc,
00698                                       /* [in]  */ OpenSOAPByteArrayPtr from_str,
00699                                       /* [in]  */ const char *to_enc,
00700                                       /* [out] */ OpenSOAPByteArrayPtr to_str);
00701 
00712     int
00713     OPENSOAP_API
00714     OpenSOAPStringConvertXMLCharRefToUTF8(/* [in]  */ const unsigned char *utf8Beg,
00715                                           /* [out] */ OpenSOAPByteArrayPtr utf8BAry);
00726     int
00727     OPENSOAP_API
00728     OpenSOAPStringGetStringUSASCII(/* [in]  */ OpenSOAPStringPtr str,
00729                                    /* [out] */ OpenSOAPByteArrayPtr charEncStr);
00730 
00747     int
00748     OPENSOAP_API
00749     OpenSOAPStringIterateProc(/* [in]  */ OpenSOAPStringPtr str,
00750                               /* [in]  */ int (*iterateProc)(unsigned long c, size_t idx, size_t len, void *opt),
00751                               /* [in]  */ int (*beforeProc)(size_t len, void *opt),
00752                               /* [in]  */ int (*afterProc)(size_t len, void *opt),
00753                               /* [in, out] */ void *opt);
00754         
00755 #ifdef __cplusplus
00756 }
00757 #endif /* __cplusplus */
00758 
00759 #endif /* OpenSOAP_String_H */

Generated on Sat Feb 1 20:46:39 2003 for OpenSOAP by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002