2014-03-04 17:18:26 +01:00
* Summary: set of routines to process strings
* Description: type and interfaces needed for the internal string
* handling of the library, especially UTF8 processing.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_STRING_H__)
/define XML_STRING_H__
/include "libxmlrpg/xmlversion"
2015-04-16 16:04:06 +08:00
/include "libxmlrpg/xmlTypesC"
2014-03-04 17:18:26 +01:00
/include "libxmlrpg/xmlstdarg"
* xmlChar:
*
* This is a basic byte in an UTF-8 encoded string.
* It's unsigned allowing to pinpoint case where char * are assigned
* to xmlChar * (possibly making serialization back impossible).
2015-04-16 16:04:06 +08:00
d xmlChar s based(######typedef######)
d like(xmlCuchar)
2014-03-04 17:18:26 +01:00
* xmlChar handling
d xmlStrdup pr * extproc('xmlStrdup') xmlChar *
d cur * value options(*string) const xmlChar *
d xmlStrndup pr * extproc('xmlStrndup') xmlChar *
d cur * value options(*string) const xmlChar *
2015-04-01 18:52:37 +02:00
d len value like(xmlCint)
2014-03-04 17:18:26 +01:00
d xmlCharStrndup pr * extproc('xmlCharStrndup') xmlChar *
d cur * value options(*string) const char *
2015-04-01 18:52:37 +02:00
d len value like(xmlCint)
2014-03-04 17:18:26 +01:00
d xmlCharStrdup pr * extproc('xmlCharStrdup') xmlChar *
d cur * value options(*string) const char *
d xmlStrsub pr * extproc('xmlStrsub') const xmlChar *
d str * value options(*string) const xmlChar *
2015-04-01 18:52:37 +02:00
d start value like(xmlCint)
d len value like(xmlCint)
2014-03-04 17:18:26 +01:00
d xmlStrchr pr * extproc('xmlStrchr') const xmlChar *
d str * value options(*string) const xmlChar *
d val value like(xmlChar)
d xmlStrstr pr * extproc('xmlStrstr') const xmlChar *
d str * value options(*string) const xmlChar *
d val * value options(*string) const xmlChar *
d xmlStrcasestr pr * extproc('xmlStrcasestr') const xmlChar *
d str * value options(*string) const xmlChar *
d val * value options(*string) const xmlChar *
2015-04-01 18:52:37 +02:00
d xmlStrcmp pr extproc('xmlStrcmp')
d like(xmlCint)
2014-03-04 17:18:26 +01:00
d str1 * value options(*string) const xmlChar *
d str2 * value options(*string) const xmlChar *
2015-04-01 18:52:37 +02:00
d xmlStrncmp pr extproc('xmlStrncmp')
d like(xmlCint)
2014-03-04 17:18:26 +01:00
d str1 * value options(*string) const xmlChar *
d str2 * value options(*string) const xmlChar *
2015-04-01 18:52:37 +02:00
d len value like(xmlCint)
2014-03-04 17:18:26 +01:00
2015-04-01 18:52:37 +02:00
d xmlStrcasecmp pr extproc('xmlStrcasecmp')
d like(xmlCint)
2014-03-04 17:18:26 +01:00
d str1 * value options(*string) const xmlChar *
d str2 * value options(*string) const xmlChar *
2015-04-01 18:52:37 +02:00
d xmlStrncasecmp pr extproc('xmlStrncasecmp')
d like(xmlCint)
2014-03-04 17:18:26 +01:00
d str1 * value options(*string) const xmlChar *
d str2 * value options(*string) const xmlChar *
2015-04-01 18:52:37 +02:00
d len value like(xmlCint)
2014-03-04 17:18:26 +01:00
2015-04-01 18:52:37 +02:00
d xmlStrEqual pr extproc('xmlStrEqual')
d like(xmlCint)
2014-03-04 17:18:26 +01:00
d str1 * value options(*string) const xmlChar *
d str2 * value options(*string) const xmlChar *
2015-04-01 18:52:37 +02:00
d xmlStrQEqual pr extproc('xmlStrQEqual')
d like(xmlCint)
2014-03-04 17:18:26 +01:00
d pref * value options(*string) const xmlChar *
d name * value options(*string) const xmlChar *
d stre * value options(*string) const xmlChar *
2015-04-01 18:52:37 +02:00
d xmlStrlen pr extproc('xmlStrlen')
d like(xmlCint)
2014-03-04 17:18:26 +01:00
d str * value options(*string) const xmlChar *
d xmlStrcat pr * extproc('xmlStrcat') xmlChar *
d cur * value options(*string) xmlChar *
d add * value options(*string) const xmlChar *
d xmlStrncat pr * extproc('xmlStrncat') xmlChar *
d cur * value options(*string) xmlChar *
d add * value options(*string) const xmlChar *
2015-04-01 18:52:37 +02:00
d len value like(xmlCint)
2014-03-04 17:18:26 +01:00
d xmlStrncatNew pr * extproc('xmlStrncatNew') xmlChar *
d str1 * value options(*string) const xmlChar *
d str2 * value options(*string) const xmlChar *
2015-04-01 18:52:37 +02:00
d len value like(xmlCint)
2014-03-04 17:18:26 +01:00
* xmlStrPrintf() is a vararg function.
* The following prototype supports up to 8 pointer arguments.
* Other argument signature can be achieved by defining alternate
* prototypes redirected to the same function.
2015-04-01 18:52:37 +02:00
d xmlStrPrintf pr extproc('xmlStrPrintf')
d like(xmlCint)
2014-03-04 17:18:26 +01:00
d buf * value options(*string) xmlChar *
2015-04-01 18:52:37 +02:00
d len value like(xmlCint)
2017-07-27 11:20:02 +08:00
d msg * value options(*string) const char *
2014-03-04 17:18:26 +01:00
d arg1 * value options(*string: *nopass)
d arg2 * value options(*string: *nopass)
d arg3 * value options(*string: *nopass)
d arg4 * value options(*string: *nopass)
d arg5 * value options(*string: *nopass)
d arg6 * value options(*string: *nopass)
d arg7 * value options(*string: *nopass)
d arg8 * value options(*string: *nopass)
2015-04-01 18:52:37 +02:00
d xmlStrVPrintf pr extproc('xmlStrVPrintf')
d like(xmlCint)
2014-03-04 17:18:26 +01:00
d buf * value options(*string) xmlChar *
2015-04-01 18:52:37 +02:00
d len value like(xmlCint)
2017-07-27 11:20:02 +08:00
d msg * value options(*string) const char *
2014-03-04 17:18:26 +01:00
d ap likeds(xmlVaList)
2015-04-01 18:52:37 +02:00
d xmlGetUTF8Char pr extproc('xmlGetUTF8Char')
d like(xmlCint)
2014-03-04 17:18:26 +01:00
d utf * value options(*string) const uns. char *
2015-04-01 18:52:37 +02:00
d len like(xmlCint)
2014-03-04 17:18:26 +01:00
2015-04-01 18:52:37 +02:00
d xmlCheckUTF8 pr extproc('xmlCheckUTF8')
d like(xmlCint)
2014-03-04 17:18:26 +01:00
d utf * value options(*string) const uns. char *
2015-04-01 18:52:37 +02:00
d xmlUTF8Strsize pr extproc('xmlUTF8Strsize')
d like(xmlCint)
2014-03-04 17:18:26 +01:00
d utf * value options(*string) const xmlChar *
2015-04-01 18:52:37 +02:00
d len value like(xmlCint)
2014-03-04 17:18:26 +01:00
d xmlUTF8Strndup pr * extproc('xmlUTF8Strndup') xmlChar *
d utf * value options(*string) const xmlChar *
2015-04-01 18:52:37 +02:00
d len value like(xmlCint)
2014-03-04 17:18:26 +01:00
d xmlUTF8Strpos pr * extproc('xmlUTF8Strpos') const xmlChar *
d utf * value options(*string) const xmlChar *
2015-04-01 18:52:37 +02:00
d pos value like(xmlCint)
2014-03-04 17:18:26 +01:00
2015-04-01 18:52:37 +02:00
d xmlUTF8Strloc pr extproc('xmlUTF8Strloc')
d like(xmlCint)
2014-03-04 17:18:26 +01:00
d utf * value options(*string) const xmlChar *
d utfchar * value options(*string) const xmlChar *
d xmlUTF8Strsub pr * extproc('xmlUTF8Strsub') xmlChar *
d utf * value options(*string) const xmlChar *
2015-04-01 18:52:37 +02:00
d start value like(xmlCint)
d len value like(xmlCint)
2014-03-04 17:18:26 +01:00
2015-04-01 18:52:37 +02:00
d xmlUTF8Strlen pr extproc('xmlUTF8Strlen')
d like(xmlCint)
2014-03-04 17:18:26 +01:00
d utf * value options(*string) const xmlChar *
2015-04-01 18:52:37 +02:00
d xmlUTF8Size pr extproc('xmlUTF8Size')
d like(xmlCint)
2014-03-04 17:18:26 +01:00
d utf * value options(*string) const xmlChar *
2015-04-01 18:52:37 +02:00
d xmlUTF8Charcmp pr extproc('xmlUTF8Charcmp')
d like(xmlCint)
2014-03-04 17:18:26 +01:00
d utf1 * value options(*string) const xmlChar *
d utf2 * value options(*string) const xmlChar *
/endif XML_STRING_H__