xmlIO

Name

xmlIO -- 

Synopsis



struct      xmlParserInputBuffer;
typedef     xmlParserInputBufferPtr;
xmlParserInputBufferPtr xmlAllocParserInputBuffer
                                            (xmlCharEncoding enc);
xmlParserInputBufferPtr xmlParserInputBufferCreateFilename
                                            (const char *filename,
                                             xmlCharEncoding enc);
xmlParserInputBufferPtr xmlParserInputBufferCreateFile
                                            (FILE *file,
                                             xmlCharEncoding enc);
xmlParserInputBufferPtr xmlParserInputBufferCreateFd
                                            (int fd,
                                             xmlCharEncoding enc);
int         xmlParserInputBufferRead        (xmlParserInputBufferPtr in,
                                             int len);
int         xmlParserInputBufferGrow        (xmlParserInputBufferPtr in,
                                             int len);
int         xmlParserInputBufferPush        (xmlParserInputBufferPtr in,
                                             int len,
                                             const char *buf);
void        xmlFreeParserInputBuffer        (xmlParserInputBufferPtr in);
char*       xmlParserGetDirectory           (const char *filename);

Description

Details

struct xmlParserInputBuffer

struct xmlParserInputBuffer {
    /* Inputs */
    FILE          *file;    /* Input on file handler */
    void*        gzfile;    /* Input on a compressed stream */
    int              fd;    /* Input on a file descriptor */
    void        *httpIO;    /* Input from an HTTP stream */
    void         *ftpIO;    /* Input from an FTP stream */
    
    xmlCharEncodingHandlerPtr encoder; /* I18N conversions to UTF-8 */
    
    xmlBufferPtr buffer;    /* Local buffer encoded in  UTF-8 */
    /* Added when merging 2.3.5 code */
    xmlBufferPtr raw;       /* if encoder != NULL buffer for raw input */
};


xmlParserInputBufferPtr

typedef xmlParserInputBuffer *xmlParserInputBufferPtr;


xmlAllocParserInputBuffer ()

xmlParserInputBufferPtr xmlAllocParserInputBuffer
                                            (xmlCharEncoding enc);

Create a buffered parser input for progressive parsing


xmlParserInputBufferCreateFilename ()

xmlParserInputBufferPtr xmlParserInputBufferCreateFilename
                                            (const char *filename,
                                             xmlCharEncoding enc);

Create a buffered parser input for the progressive parsing of a file If filename is "-' then we use stdin as the input. Automatic support for ZLIB/Compress compressed document is provided by default if found at compile-time.


xmlParserInputBufferCreateFile ()

xmlParserInputBufferPtr xmlParserInputBufferCreateFile
                                            (FILE *file,
                                             xmlCharEncoding enc);

Create a buffered parser input for the progressive parsing of a FILE * buffered C I/O


xmlParserInputBufferCreateFd ()

xmlParserInputBufferPtr xmlParserInputBufferCreateFd
                                            (int fd,
                                             xmlCharEncoding enc);

Create a buffered parser input for the progressive parsing for the input from a file descriptor


xmlParserInputBufferRead ()

int         xmlParserInputBufferRead        (xmlParserInputBufferPtr in,
                                             int len);

Refresh the content of the input buffer, the old data are considered consumed This routine handle the I18N transcoding to internal UTF-8


xmlParserInputBufferGrow ()

int         xmlParserInputBufferGrow        (xmlParserInputBufferPtr in,
                                             int len);

Grow up the content of the input buffer, the old data are preserved This routine handle the I18N transcoding to internal UTF-8 This routine is used when operating the parser in normal (pull) mode TODO: one should be able to remove one extra copy


xmlParserInputBufferPush ()

int         xmlParserInputBufferPush        (xmlParserInputBufferPtr in,
                                             int len,
                                             const char *buf);

Push the content of the arry in the input buffer This routine handle the I18N transcoding to internal UTF-8 This is used when operating the parser in progressive (push) mode.


xmlFreeParserInputBuffer ()

void        xmlFreeParserInputBuffer        (xmlParserInputBufferPtr in);

Free up the memory used by a buffered parser input


xmlParserGetDirectory ()

char*       xmlParserGetDirectory           (const char *filename);