blob: 6c0afcc9f53cf7f82d15ebc308518062f70cfb5c [file] [log] [blame]
* Summary: interface for the I/O interfaces used by the parser
* Description: interface for the I/O interfaces used by the parser
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_IO_H__)
/define XML_IO_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/xmlTypesC"
* Those are the functions and datatypes for the parser input
* I/O structures.
* xmlInputMatchCallback:
* @filename: the filename or URI
*
* Callback used in the I/O Input API to detect if the current handler
* can provide input fonctionnalities for this resource.
*
* Returns 1 if yes and 0 if another Input module should be used
d xmlInputMatchCallback...
d s * based(######typedef######)
d procptr
* xmlInputOpenCallback:
* @filename: the filename or URI
*
* Callback used in the I/O Input API to open the resource
*
* Returns an Input context or NULL in case or error
d xmlInputOpenCallback...
d s * based(######typedef######)
d procptr
* xmlInputReadCallback:
* @context: an Input context
* @buffer: the buffer to store data read
* @len: the length of the buffer in bytes
*
* Callback used in the I/O Input API to read the resource
*
* Returns the number of bytes read or -1 in case of error
d xmlInputReadCallback...
d s * based(######typedef######)
d procptr
* xmlInputCloseCallback:
* @context: an Input context
*
* Callback used in the I/O Input API to close the resource
*
* Returns 0 or -1 in case of error
d xmlInputCloseCallback...
d s * based(######typedef######)
d procptr
/if defined(LIBXML_OUTPUT_ENABLED)
* Those are the functions and datatypes for the library output
* I/O structures.
* xmlOutputMatchCallback:
* @filename: the filename or URI
*
* Callback used in the I/O Output API to detect if the current handler
* can provide output fonctionnalities for this resource.
*
* Returns 1 if yes and 0 if another Output module should be used
d xmlOutputMatchCallback...
d s * based(######typedef######)
d procptr
* xmlOutputOpenCallback:
* @filename: the filename or URI
*
* Callback used in the I/O Output API to open the resource
*
* Returns an Output context or NULL in case or error
d xmlOutputOpenCallback...
d s * based(######typedef######)
d procptr
* xmlOutputWriteCallback:
* @context: an Output context
* @buffer: the buffer of data to write
* @len: the length of the buffer in bytes
*
* Callback used in the I/O Output API to write to the resource
*
* Returns the number of bytes written or -1 in case of error
d xmlOutputWriteCallback...
d s * based(######typedef######)
d procptr
* xmlOutputCloseCallback:
* @context: an Output context
*
* Callback used in the I/O Output API to close the resource
*
* Returns 0 or -1 in case of error
d xmlOutputCloseCallback...
d s * based(######typedef######)
d procptr
/endif LIBXML_OUTPUT_ENABLD
/include "libxmlrpg/globals"
/include "libxmlrpg/tree"
/include "libxmlrpg/parser"
/include "libxmlrpg/encoding"
d xmlParserInputBuffer...
d ds based(xmlParserInputBufferPtr)
d align qualified
d context * void *
d readcallback like(xmlInputReadCallback)
d closecallback like(xmlInputCloseCallback)
*
d encoder like(xmlCharEncodingHandlerPtr) Conversions --> UTF8
*
d buffer like(xmlBufPtr) UTF-8 local buffer
d raw like(xmlBufPtr) Raw input buffer
d compressed like(xmlCint)
d error like(xmlCint)
d rawconsumed like(xmlCulong)
/if defined(LIBXML_OUTPUT_ENABLED)
d xmlOutputBuffer...
d ds based(xmlOutputBufferPtr)
d align qualified
d context * void *
d writecallback like(xmlOutputWriteCallback)
d closecallback like(xmlOutputCloseCallback)
*
d encoder like(xmlCharEncodingHandlerPtr) Conversions --> UTF8
*
d buffer like(xmlBufPtr) UTF-8/ISOLatin local
d conv like(xmlBufPtr) Buffer for output
d written like(xmlCint) Total # byte written
d error like(xmlCint)
/endif LIBXML_OUTPUT_ENABLD
* Interfaces for input
d xmlCleanupInputCallbacks...
d pr extproc('xmlCleanupInputCallbacks')
d xmlPopInputCallbacks...
d pr extproc('xmlPopInputCallbacks')
d like(xmlCint)
d xmlRegisterDefaultInputCallbacks...
d pr extproc(
d 'xmlRegisterDefaultInputCallbacks')
d xmlAllocParserInputBuffer...
d pr extproc('xmlAllocParserInputBuffer')
d like(xmlParserInputBufferPtr)
d enc value like(xmlCharEncoding)
d xmlParserInputBufferCreateFilename...
d pr extproc(
d 'xmlParserInputBufferCreateFilename')
d like(xmlParserInputBufferPtr)
d URI * value options(*string) const char *
d enc value like(xmlCharEncoding)
d xmlParserInputBufferCreateFile...
d pr extproc(
d 'xmlParserInputBufferCreateFile')
d like(xmlParserInputBufferPtr)
d file * value FILE *
d enc value like(xmlCharEncoding)
d xmlParserInputBufferCreateFd...
d pr extproc(
d 'xmlParserInputBufferCreateFd')
d like(xmlParserInputBufferPtr)
d fd value like(xmlCint)
d enc value like(xmlCharEncoding)
d xmlParserInputBufferCreateMem...
d pr extproc(
d 'xmlParserInputBufferCreateMem')
d like(xmlParserInputBufferPtr)
d mem * value options(*string) const char *
d size value like(xmlCint)
d enc value like(xmlCharEncoding)
d xmlParserInputBufferCreateStatic...
d pr extproc(
d 'xmlParserInputBufferCreateStatic')
d like(xmlParserInputBufferPtr)
d mem * value options(*string) const char *
d size value like(xmlCint)
d enc value like(xmlCharEncoding)
d xmlParserInputBufferCreateIO...
d pr extproc(
d 'xmlParserInputBufferCreateIO')
d like(xmlParserInputBufferPtr)
d ioread value like(xmlInputReadCallback)
d ioclose value like(xmlInputCloseCallback)
d ioctx * value void *
d enc value like(xmlCharEncoding)
d xmlParserInputBufferRead...
d pr extproc('xmlParserInputBufferRead')
d like(xmlCint)
d in value like(xmlParserInputBufferPtr)
d len value like(xmlCint)
d xmlParserInputBufferGrow...
d pr extproc('xmlParserInputBufferGrow')
d like(xmlCint)
d in value like(xmlParserInputBufferPtr)
d len value like(xmlCint)
d xmlParserInputBufferPush...
d pr extproc('xmlParserInputBufferPush')
d like(xmlCint)
d in value like(xmlParserInputBufferPtr)
d len value like(xmlCint)
d buf * value options(*string) const char *
d xmlFreeParserInputBuffer...
d pr extproc('xmlFreeParserInputBuffer')
d in value like(xmlParserInputBufferPtr)
d xmlParserGetDirectory...
d pr * extproc('xmlParserGetDirectory') char *
d filename * value options(*string) const char *
d xmlRegisterInputCallbacks...
d pr extproc('xmlRegisterInputCallbacks')
d like(xmlCint)
d matchFunc value like(xmlInputMatchCallback)
d openFunc value like(xmlInputOpenCallback)
d readFunc value like(xmlInputReadCallback)
d closeFunc value like(xmlInputCloseCallback)
/if defined(LIBXML_OUTPUT_ENABLED)
* Interfaces for output
d xmlCleanupOutputCallbacks...
d pr extproc('xmlCleanupOutputCallbacks')
d xmlRegisterDefaultOutputCallbacks...
d pr extproc(
d 'xmlRegisterDefaultOuputCallbacks')
d xmlAllocOutputBuffer...
d pr extproc('xmlAllocOutputBuffer')
d like(xmlOutputBufferPtr)
d encoder value
d like(xmlCharEncodingHandlerPtr)
d xmlOutputBufferCreateFilename...
d pr extproc(
d 'xmlOutputBufferCreateFilename')
d like(xmlOutputBufferPtr)
d URI * value options(*string) const char *
d encoder value
d like(xmlCharEncodingHandlerPtr)
d compression value like(xmlCint)
d xmlOutputBufferCreateFile...
d pr extproc('xmlOutputBufferCreateFile')
d like(xmlOutputBufferPtr)
d file * value FILE *
d encoder value
d like(xmlCharEncodingHandlerPtr)
d xmlOutputBufferCreateBuffer...
d pr extproc(
d 'xmlOutputBufferCreateBuffer')
d like(xmlOutputBufferPtr)
d buffer value like(xmlBufferPtr)
d encoder value
d like(xmlCharEncodingHandlerPtr)
d xmlOutputBufferCreateFd...
d pr extproc('xmlOutputBufferCreateFd')
d like(xmlOutputBufferPtr)
d fd value like(xmlCint)
d encoder value
d like(xmlCharEncodingHandlerPtr)
d xmlOutputBufferCreateIO...
d pr extproc('xmlOutputBufferCreateIO')
d like(xmlOutputBufferPtr)
d iowrite value like(xmlOutputWriteCallback)
d ioclose value like(xmlOutputCloseCallback)
d ioctx * value void *
d encoder value
d like(xmlCharEncodingHandlerPtr)
* Couple of APIs to get the output without digging into the buffers
d xmlOutputBufferGetContent...
d pr * extproc('xmlOutputBufferGetContent') const xmlChar *
d out value like(xmlOutputBufferPtr)
d xmlOutputBufferGetSize...
d pr extproc('xmlOutputBufferGetSize')
d like(xmlCsize_t)
d out value like(xmlOutputBufferPtr)
d xmlOutputBufferWrite...
d pr extproc('xmlOutputBufferWrite')
d like(xmlCint)
d out value like(xmlOutputBufferPtr)
d len value like(xmlCint)
d buf * value options(*string) const char *
d xmlOutputBufferWriteString...
d pr extproc('xmlOutputBufferWriteString')
d like(xmlCint)
d out value like(xmlOutputBufferPtr)
d str * value options(*string) const char *
d xmlOutputBufferWriteEscape...
d pr extproc('xmlOutputBufferWriteEscape')
d like(xmlCint)
d out value like(xmlOutputBufferPtr)
d str * value options(*string) const xmlChar *
d escaping value like(xmlCharEncodingOutputFunc)
d xmlOutputBufferFlush...
d pr extproc('xmlOutputBufferFlush')
d like(xmlCint)
d out value like(xmlOutputBufferPtr)
d xmlOutputBufferClose...
d pr extproc('xmlOutputBufferClose')
d like(xmlCint)
d out value like(xmlOutputBufferPtr)
d xmlRegisterOutputCallbacks...
d pr extproc('xmlRegisterOutputCallbacks')
d like(xmlCint)
d matchFunc value like(xmlOutputMatchCallback)
d openFunc value like(xmlOutputOpenCallback)
d writeFunc value like(xmlOutputWriteCallback)
d closeFunc value like(xmlOutputCloseCallback)
/if defined(LIBXML_HTTP_ENABLED)
* This function only exists if HTTP support built into the library
d xmlRegisterHTTPPostCallbacks...
d pr extproc(
d 'xmlRegisterHTTPPostCallbacks')
/endif LIBXML_HTTP_ENABLED
/endif LIBXML_OUTPUT_ENABLD
d xmlCheckHTTPInput...
d pr extproc('xmlCheckHTTPInput')
d like(xmlParserInputPtr)
d ctxt value like(xmlParserCtxtPtr)
d ret value like(xmlParserInputPtr)
* A predefined entity loader disabling network accesses
d xmlNoNetExternalEntityLoader...
d pr extproc(
d 'xmlNoNetExternalEntityLoader')
d like(xmlParserInputPtr)
d URL * value options(*string) const char *
d ID * value options(*string) const char *
d ctxt value like(xmlParserCtxtPtr)
* xmlNormalizeWindowsPath is obsolete, don't use it.
* Check xmlCanonicPath in uri.h for a better alternative.
d xmlNormalizeWindowsPath...
d pr * extproc('xmlNormalizeWindowsPath') xmlChar *
d path * value options(*string) const xmlChar *
d xmlCheckFilename...
d pr extproc('xmlCheckFilename')
d like(xmlCint)
d path * value options(*string) const char *
* Default 'file://' protocol callbacks
d xmlFileMatch pr extproc('xmlFileMatch')
d like(xmlCint)
d filename * value options(*string) const char *
d xmlFileOpen pr * extproc('xmlFileOpen') void *
d filename * value options(*string) const char *
d xmlFileRead pr extproc('xmlFileRead')
d like(xmlCint)
d context * value void *
d buffer 65535 options(*varsize)
d len value like(xmlCint)
d xmlFileClose pr extproc('xmlFileClose')
d like(xmlCint)
d context * value void *
* Default 'http://' protocol callbacks
/if defined(LIBXML_HTTP_ENABLED)
d xmlIOHTTPMatch pr extproc('xmlIOHTTPMatch')
d like(xmlCint)
d filename * value options(*string) const char *
d xmlIOHTTPOpen pr * extproc('xmlIOHTTPOpen') void *
d filename * value options(*string) const char *
/if defined(LIBXML_OUTPUT_ENABLED)
d xmlIOHTTPOpenW pr * extproc('xmlIOHTTPOpenW') void *
d post_uri * value options(*string) const char *
d compression value like(xmlCint)
/endif LIBXML_OUTPUT_ENABLD
d xmlIOHTTPRead pr extproc('xmlIOHTTPRead')
d like(xmlCint)
d context * value void *
d buffer 65535 options(*varsize)
d len value like(xmlCint)
d xmlIOHTTPClose pr extproc('xmlIOHTTPClose')
d like(xmlCint)
d context * value void *
/endif LIBXML_HTTP_ENABLED
* Default 'ftp://' protocol callbacks
/if defined(LIBXML_FTP_ENABLED)
d xmlIOFTPMatch pr extproc('xmlIOFTPMatch')
d like(xmlCint)
d filename * value options(*string) const char *
d xmlIOFTPOpen pr * extproc('xmlIOFTPOpen') void *
d filename * value options(*string) const char *
d xmlIOFTPRead pr extproc('xmlIOFTPRead')
d like(xmlCint)
d context * value void *
d buffer 65535 options(*varsize)
d len value like(xmlCint)
d xmlIOFTPClose pr extproc('xmlIOFTPClose')
d like(xmlCint)
d context * value void *
/endif LIBXML_FTP_ENABLED
/endif XML_IO_H__