mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2025-03-31 06:50:06 +03:00
Ready for 1.7.0, major changes, nanohttp, cleanup, binary compat with 1.4,
etc... See Changelog, Daniel.
This commit is contained in:
parent
1b0f55fbc0
commit
7f7d1119af
14
ChangeLog
14
ChangeLog
@ -1,3 +1,17 @@
|
||||
Wed Sep 22 11:40:31 CEST 1999 Daniel Veillard <Daniel.Veillard@w3.org>
|
||||
|
||||
* parser.h: modified the parser context struct to regain 1.4.0
|
||||
binary compatibility
|
||||
* parser.c, xml-error.h: added errno ot teh context and defined
|
||||
a set of errors values with update of errno
|
||||
* nanohttp.[ch]: minimalist HTTP front-end for fetching remote
|
||||
DTDs and entities
|
||||
* *.h, *.c: complete cleanup of the use of config.h and include
|
||||
protection depending on the current setup.
|
||||
* overalll debugging, maintenance and bug-fixing on all modules
|
||||
* updated the documentation
|
||||
* ready for 1.7.0
|
||||
|
||||
Wed Sep 8 22:46:14 CEST 1999 Daniel Veillard <Daniel.Veillard@w3.org>
|
||||
|
||||
* HTMLparser.c : cleanup
|
||||
|
11
HTMLparser.c
11
HTMLparser.c
@ -10,13 +10,20 @@
|
||||
#define HAVE_FCNTL_H
|
||||
#include <io.h>
|
||||
#else
|
||||
#include <config.h>
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <ctype.h>
|
||||
#include <string.h> /* for memset() only */
|
||||
#ifdef HAVE_CTYPE_H
|
||||
#include <ctype.h>
|
||||
#endif
|
||||
#ifdef HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
#ifdef HAVE_SYS_STAT_H
|
||||
#include <sys/stat.h>
|
||||
#endif
|
||||
#ifdef HAVE_FCNTL_H
|
||||
#include <fcntl.h>
|
||||
#endif
|
||||
|
12
HTMLtree.c
12
HTMLtree.c
@ -6,12 +6,20 @@
|
||||
* Daniel.Veillard@w3.org
|
||||
*/
|
||||
|
||||
|
||||
#ifndef WIN32
|
||||
#include "config.h"
|
||||
#endif
|
||||
#include <stdio.h>
|
||||
#include <ctype.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h> /* for memset() only ! */
|
||||
|
||||
#ifdef HAVE_CTYPE_H
|
||||
#include <ctype.h>
|
||||
#endif
|
||||
#ifdef HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
|
||||
#include "xmlmemory.h"
|
||||
#include "HTMLparser.h"
|
||||
#include "HTMLtree.h"
|
||||
|
@ -27,6 +27,7 @@ libxml_la_SOURCES = \
|
||||
xpath.c \
|
||||
xmlIO.c \
|
||||
xmlmemory.c \
|
||||
nanohttp.c \
|
||||
valid.c
|
||||
|
||||
xmlincdir = $(includedir)/gnome-xml
|
||||
@ -43,6 +44,7 @@ xmlinc_HEADERS = \
|
||||
xpath.h \
|
||||
xmlIO.h \
|
||||
xmlmemory.h \
|
||||
nanohttp.h \
|
||||
valid.h
|
||||
|
||||
DEPS = $(top_builddir)/libxml.la
|
||||
|
29
SAX.c
29
SAX.c
@ -6,6 +6,7 @@
|
||||
* Daniel Veillard <Daniel.Veillard@w3.org>
|
||||
*/
|
||||
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include "xmlmemory.h"
|
||||
@ -236,15 +237,8 @@ resolveEntity(void *ctx, const CHAR *publicId, const CHAR *systemId)
|
||||
fprintf(stderr, "SAX.resolveEntity(%s, %s)\n", publicId, systemId);
|
||||
#endif
|
||||
|
||||
/*
|
||||
* TODO : resolveEntity, handling of http://.. or ftp://..
|
||||
*/
|
||||
if (systemId != NULL) {
|
||||
if (!xmlStrncmp(systemId, BAD_CAST "http://", 7)) {
|
||||
} else if (!xmlStrncmp(systemId, BAD_CAST "ftp://", 6)) {
|
||||
} else {
|
||||
return(xmlNewInputFromFile(ctxt, (char *) systemId));
|
||||
}
|
||||
return(xmlNewInputFromFile(ctxt, (char *) systemId));
|
||||
}
|
||||
return(NULL);
|
||||
}
|
||||
@ -604,12 +598,29 @@ startElement(void *ctx, const CHAR *fullname, const CHAR **atts)
|
||||
CHAR *prefix;
|
||||
const CHAR *att;
|
||||
const CHAR *value;
|
||||
|
||||
int i;
|
||||
|
||||
#ifdef DEBUG_SAX
|
||||
fprintf(stderr, "SAX.startElement(%s)\n", fullname);
|
||||
#endif
|
||||
|
||||
/*
|
||||
* First check on validity:
|
||||
*/
|
||||
if (ctxt->validate && (ctxt->myDoc->extSubset == NULL) &&
|
||||
((ctxt->myDoc->intSubset == NULL) ||
|
||||
((ctxt->myDoc->intSubset->notations == NULL) &&
|
||||
(ctxt->myDoc->intSubset->elements == NULL) &&
|
||||
(ctxt->myDoc->intSubset->attributes == NULL) &&
|
||||
(ctxt->myDoc->intSubset->entities == NULL)))) {
|
||||
if (ctxt->vctxt.error != NULL) {
|
||||
ctxt->vctxt.error(ctxt->vctxt.userData,
|
||||
"Validation failed: no DTD found !\n");
|
||||
}
|
||||
ctxt->validate = 0;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Split the full name into a namespace prefix and the tag name
|
||||
*/
|
||||
|
36
config.h.in
36
config.h.in
@ -34,6 +34,9 @@
|
||||
/* Define if you have the isnand function. */
|
||||
#undef HAVE_ISNAND
|
||||
|
||||
/* Define if you have the localtime function. */
|
||||
#undef HAVE_LOCALTIME
|
||||
|
||||
/* Define if you have the snprintf function. */
|
||||
#undef HAVE_SNPRINTF
|
||||
|
||||
@ -43,9 +46,15 @@
|
||||
/* Define if you have the strerror function. */
|
||||
#undef HAVE_STRERROR
|
||||
|
||||
/* Define if you have the strftime function. */
|
||||
#undef HAVE_STRFTIME
|
||||
|
||||
/* Define if you have the strndup function. */
|
||||
#undef HAVE_STRNDUP
|
||||
|
||||
/* Define if you have the <arpa/inet.h> header file. */
|
||||
#undef HAVE_ARPA_INET_H
|
||||
|
||||
/* Define if you have the <ctype.h> header file. */
|
||||
#undef HAVE_CTYPE_H
|
||||
|
||||
@ -79,18 +88,36 @@
|
||||
/* Define if you have the <ndir.h> header file. */
|
||||
#undef HAVE_NDIR_H
|
||||
|
||||
/* Define if you have the <netdb.h> header file. */
|
||||
#undef HAVE_NETDB_H
|
||||
|
||||
/* Define if you have the <netinet/in.h> header file. */
|
||||
#undef HAVE_NETINET_IN_H
|
||||
|
||||
/* Define if you have the <stdarg.h> header file. */
|
||||
#undef HAVE_STDARG_H
|
||||
|
||||
/* Define if you have the <stdlib.h> header file. */
|
||||
#undef HAVE_STDLIB_H
|
||||
|
||||
/* Define if you have the <sys/dir.h> header file. */
|
||||
#undef HAVE_SYS_DIR_H
|
||||
|
||||
/* Define if you have the <sys/ndir.h> header file. */
|
||||
#undef HAVE_SYS_NDIR_H
|
||||
|
||||
/* Define if you have the <sys/select.h> header file. */
|
||||
#undef HAVE_SYS_SELECT_H
|
||||
|
||||
/* Define if you have the <sys/socket.h> header file. */
|
||||
#undef HAVE_SYS_SOCKET_H
|
||||
|
||||
/* Define if you have the <sys/stat.h> header file. */
|
||||
#undef HAVE_SYS_STAT_H
|
||||
|
||||
/* Define if you have the <sys/time.h> header file. */
|
||||
#undef HAVE_SYS_TIME_H
|
||||
|
||||
/* Define if you have the <sys/types.h> header file. */
|
||||
#undef HAVE_SYS_TYPES_H
|
||||
|
||||
@ -103,6 +130,15 @@
|
||||
/* Define if you have the <zlib.h> header file. */
|
||||
#undef HAVE_ZLIB_H
|
||||
|
||||
/* Define if you have the inet library (-linet). */
|
||||
#undef HAVE_LIBINET
|
||||
|
||||
/* Define if you have the nsl library (-lnsl). */
|
||||
#undef HAVE_LIBNSL
|
||||
|
||||
/* Define if you have the socket library (-lsocket). */
|
||||
#undef HAVE_LIBSOCKET
|
||||
|
||||
/* Name of package */
|
||||
#undef PACKAGE
|
||||
|
||||
|
14
configure.in
14
configure.in
@ -4,8 +4,8 @@ AC_INIT(entities.h)
|
||||
AM_CONFIG_HEADER(config.h)
|
||||
|
||||
LIBXML_MAJOR_VERSION=1
|
||||
LIBXML_MINOR_VERSION=6
|
||||
LIBXML_MICRO_VERSION=2
|
||||
LIBXML_MINOR_VERSION=7
|
||||
LIBXML_MICRO_VERSION=0
|
||||
LIBXML_VERSION=$LIBXML_MAJOR_VERSION.$LIBXML_MINOR_VERSION.$LIBXML_MICRO_VERSION
|
||||
LIBXML_VERSION_INFO=`expr $LIBXML_MAJOR_VERSION + $LIBXML_MINOR_VERSION`:$LIBXML_MICRO_VERSION:$LIBXML_MINOR_VERSION
|
||||
|
||||
@ -46,6 +46,8 @@ AC_HEADER_STDC
|
||||
AC_CHECK_HEADERS(fcntl.h unistd.h ctype.h dirent.h errno.h malloc.h)
|
||||
AC_CHECK_HEADERS(stdarg.h sys/stat.h sys/types.h time.h zlib.h)
|
||||
AC_CHECK_HEADERS(ieeefp.h nan.h math.h fp_class.h float.h)
|
||||
AC_CHECK_HEADERS(stdlib.h sys/socket.h netinet/in.h arpa/inet.h)
|
||||
AC_CHECK_HEADERS(netdb.h sys/time.h sys/select.h)
|
||||
|
||||
dnl Specific dir for HTML output ?
|
||||
if test "x$with_html_dir" = "x" ; then
|
||||
@ -70,6 +72,12 @@ dnl Checks for library functions.
|
||||
AC_FUNC_STRFTIME
|
||||
AC_CHECK_FUNCS(strdup strndup strerror snprintf)
|
||||
AC_CHECK_FUNCS(finite isinf isnan isnand fp_class class fpclass finite)
|
||||
AC_CHECK_FUNCS(strftime localtime)
|
||||
|
||||
dnl Checks for inet libraries:
|
||||
AC_CHECK_LIB(socket, socket)
|
||||
AC_CHECK_LIB(inet, connect)
|
||||
AC_CHECK_LIB(nsl, t_accept)
|
||||
|
||||
dnl Checks for isnan in libm if not in libc
|
||||
M_LIBS=
|
||||
@ -93,7 +101,7 @@ fi
|
||||
|
||||
XML_LIBDIR='-L${libdir}'
|
||||
XML_INCLUDEDIR='-I${includedir}/gnome-xml'
|
||||
XML_LIBS="-lxml $Z_LIBS $M_LIBS"
|
||||
XML_LIBS="-lxml $Z_LIBS $M_LIBS $LIBS"
|
||||
|
||||
AC_SUBST(XML_LIBDIR)
|
||||
AC_SUBST(XML_LIBS)
|
||||
|
@ -10,6 +10,7 @@
|
||||
<!entity HTMLtree SYSTEM "sgml/HTMLtree.sgml">
|
||||
<!entity parserInternals SYSTEM "sgml/parserInternals.sgml">
|
||||
<!entity xmlmemory SYSTEM "sgml/xmlmemory.sgml">
|
||||
<!entity nanohttp SYSTEM "sgml/nanohttp.sgml">
|
||||
]>
|
||||
|
||||
<book>
|
||||
@ -30,6 +31,7 @@
|
||||
&xpath;
|
||||
&parserInternals;
|
||||
&xmlmemory;
|
||||
&nanohttp;
|
||||
</chapter>
|
||||
</book>
|
||||
|
||||
|
@ -103,6 +103,11 @@ HREF="gnome-xml-parserinternals.html"
|
||||
HREF="gnome-xml-xmlmemory.html"
|
||||
>xmlmemory</A
|
||||
> — </DT
|
||||
><DT
|
||||
><A
|
||||
HREF="gnome-xml-nanohttp.html"
|
||||
>nanohttp</A
|
||||
> — </DT
|
||||
></DL
|
||||
></DD
|
||||
></DL
|
||||
|
@ -115,7 +115,7 @@ SIZE="3"
|
||||
><DIV
|
||||
CLASS="REFNAMEDIV"
|
||||
><A
|
||||
NAME="AEN4098"
|
||||
NAME="AEN4116"
|
||||
></A
|
||||
><H2
|
||||
>Name</H2
|
||||
@ -123,7 +123,7 @@ NAME="AEN4098"
|
||||
><DIV
|
||||
CLASS="REFSYNOPSISDIV"
|
||||
><A
|
||||
NAME="AEN4101"
|
||||
NAME="AEN4119"
|
||||
></A
|
||||
><H2
|
||||
>Synopsis</H2
|
||||
@ -344,7 +344,7 @@ HREF="gnome-xml-entities.html#XMLENTITIESTABLEPTR"
|
||||
><DIV
|
||||
CLASS="REFSECT1"
|
||||
><A
|
||||
NAME="AEN4158"
|
||||
NAME="AEN4176"
|
||||
></A
|
||||
><H2
|
||||
>Description</H2
|
||||
@ -354,14 +354,14 @@ NAME="AEN4158"
|
||||
><DIV
|
||||
CLASS="REFSECT1"
|
||||
><A
|
||||
NAME="AEN4161"
|
||||
NAME="AEN4179"
|
||||
></A
|
||||
><H2
|
||||
>Details</H2
|
||||
><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4163"
|
||||
NAME="AEN4181"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -377,7 +377,7 @@ CELLPADDING="6"
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>#define XML_INTERNAL_GENERAL_ENTITY 1</PRE
|
||||
>#define XML_INTERNAL_GENERAL_ENTITY</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
@ -387,7 +387,7 @@ CLASS="PROGRAMLISTING"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4168"
|
||||
NAME="AEN4186"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -403,7 +403,7 @@ CELLPADDING="6"
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>#define XML_EXTERNAL_GENERAL_PARSED_ENTITY 2</PRE
|
||||
>#define XML_EXTERNAL_GENERAL_PARSED_ENTITY</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
@ -413,7 +413,7 @@ CLASS="PROGRAMLISTING"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4173"
|
||||
NAME="AEN4191"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -429,7 +429,7 @@ CELLPADDING="6"
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>#define XML_EXTERNAL_GENERAL_UNPARSED_ENTITY 3</PRE
|
||||
>#define XML_EXTERNAL_GENERAL_UNPARSED_ENTITY</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
@ -439,7 +439,7 @@ CLASS="PROGRAMLISTING"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4178"
|
||||
NAME="AEN4196"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -455,7 +455,7 @@ CELLPADDING="6"
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>#define XML_INTERNAL_PARAMETER_ENTITY 4</PRE
|
||||
>#define XML_INTERNAL_PARAMETER_ENTITY</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
@ -465,7 +465,7 @@ CLASS="PROGRAMLISTING"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4183"
|
||||
NAME="AEN4201"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -481,7 +481,7 @@ CELLPADDING="6"
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>#define XML_EXTERNAL_PARAMETER_ENTITY 5</PRE
|
||||
>#define XML_EXTERNAL_PARAMETER_ENTITY</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
@ -491,7 +491,7 @@ CLASS="PROGRAMLISTING"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4188"
|
||||
NAME="AEN4206"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -507,7 +507,7 @@ CELLPADDING="6"
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>#define XML_INTERNAL_PREDEFINED_ENTITY 6</PRE
|
||||
>#define XML_INTERNAL_PREDEFINED_ENTITY</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
@ -517,33 +517,20 @@ CLASS="PROGRAMLISTING"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4193"
|
||||
NAME="AEN4211"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
NAME="XMLENTITYPTR"
|
||||
></A
|
||||
>xmlEntityPtr</H3
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#D6E8FF"
|
||||
WIDTH="100%"
|
||||
CELLPADDING="6"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>typedef xmlEntity *xmlEntityPtr;</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
></DIV
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4198"
|
||||
NAME="AEN4215"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -559,7 +546,7 @@ CELLPADDING="6"
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>#define XML_MIN_ENTITIES_TABLE 32</PRE
|
||||
>#define XML_MIN_ENTITIES_TABLE</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
@ -569,33 +556,20 @@ CLASS="PROGRAMLISTING"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4203"
|
||||
NAME="AEN4220"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
NAME="XMLENTITIESTABLEPTR"
|
||||
></A
|
||||
>xmlEntitiesTablePtr</H3
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#D6E8FF"
|
||||
WIDTH="100%"
|
||||
CELLPADDING="6"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>typedef xmlEntitiesTable *xmlEntitiesTablePtr;</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
></DIV
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4208"
|
||||
NAME="AEN4224"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -665,7 +639,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the document</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -682,7 +656,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the entity name</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -699,7 +673,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the entity type XML_xxx_yyy_ENTITY</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -716,7 +690,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the entity external ID if available</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -733,7 +707,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the entity system ID if available</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -750,7 +724,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the entity content</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -760,7 +734,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4248"
|
||||
NAME="AEN4264"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -830,7 +804,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the document</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -847,7 +821,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the entity name</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -864,7 +838,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the entity type XML_xxx_yyy_ENTITY</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -881,7 +855,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the entity external ID if available</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -898,7 +872,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the entity system ID if available</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -915,7 +889,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the entity content</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -925,7 +899,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4288"
|
||||
NAME="AEN4304"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -981,7 +955,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the entity name</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -996,7 +970,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>NULL if not, othervise the entity</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -1006,7 +980,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4309"
|
||||
NAME="AEN4325"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -1068,7 +1042,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the document referencing the entity</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1085,7 +1059,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the entity name</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1100,7 +1074,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>A pointer to the entity structure or NULL if not found.</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -1110,7 +1084,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4335"
|
||||
NAME="AEN4351"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -1171,7 +1145,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the document referencing the entity</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1188,7 +1162,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the entity name</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1203,7 +1177,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>A pointer to the entity structure or NULL if not found.</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -1213,7 +1187,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4361"
|
||||
NAME="AEN4377"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -1274,7 +1248,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the document referencing the entity</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1291,7 +1265,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the entity name</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1306,7 +1280,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>A pointer to the entity structure or NULL if not found.</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -1316,7 +1290,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4387"
|
||||
NAME="AEN4403"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -1383,7 +1357,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the document containing the string</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1400,7 +1374,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> A string to convert to XML.</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1415,7 +1389,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>A newly allocated string with the substitution done.</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -1425,7 +1399,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4415"
|
||||
NAME="AEN4431"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -1491,7 +1465,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the document containing the string</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1508,7 +1482,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> A string to convert to XML.</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1523,7 +1497,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>A newly allocated string with the substitution done.</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -1533,7 +1507,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4442"
|
||||
NAME="AEN4458"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -1584,7 +1558,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>the xmlEntitiesTablePtr just created or NULL in case of error.</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -1594,7 +1568,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4458"
|
||||
NAME="AEN4474"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -1650,7 +1624,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> An entity table</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1665,7 +1639,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>the new xmlEntitiesTablePtr or NULL in case of error.</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -1675,7 +1649,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4479"
|
||||
NAME="AEN4495"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -1728,7 +1702,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> An entity table</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -1738,7 +1712,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN4495"
|
||||
NAME="AEN4511"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -1795,7 +1769,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> An XML buffer.</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1812,7 +1786,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> An entity table</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
|
@ -115,7 +115,7 @@ SIZE="3"
|
||||
><DIV
|
||||
CLASS="REFNAMEDIV"
|
||||
><A
|
||||
NAME="AEN5974"
|
||||
NAME="AEN6149"
|
||||
></A
|
||||
><H2
|
||||
>Name</H2
|
||||
@ -123,7 +123,7 @@ NAME="AEN5974"
|
||||
><DIV
|
||||
CLASS="REFSYNOPSISDIV"
|
||||
><A
|
||||
NAME="AEN5977"
|
||||
NAME="AEN6152"
|
||||
></A
|
||||
><H2
|
||||
>Synopsis</H2
|
||||
@ -277,7 +277,7 @@ HREF="gnome-xml-htmlparser.html#HTMLPARSEFILE"
|
||||
><DIV
|
||||
CLASS="REFSECT1"
|
||||
><A
|
||||
NAME="AEN6015"
|
||||
NAME="AEN6190"
|
||||
></A
|
||||
><H2
|
||||
>Description</H2
|
||||
@ -287,248 +287,131 @@ NAME="AEN6015"
|
||||
><DIV
|
||||
CLASS="REFSECT1"
|
||||
><A
|
||||
NAME="AEN6018"
|
||||
NAME="AEN6193"
|
||||
></A
|
||||
><H2
|
||||
>Details</H2
|
||||
><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6020"
|
||||
NAME="AEN6195"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
NAME="HTMLPARSERCTXT"
|
||||
></A
|
||||
>htmlParserCtxt</H3
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#D6E8FF"
|
||||
WIDTH="100%"
|
||||
CELLPADDING="6"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>typedef xmlParserCtxt htmlParserCtxt;</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
></DIV
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6025"
|
||||
NAME="AEN6199"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
NAME="HTMLPARSERCTXTPTR"
|
||||
></A
|
||||
>htmlParserCtxtPtr</H3
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#D6E8FF"
|
||||
WIDTH="100%"
|
||||
CELLPADDING="6"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>typedef xmlParserCtxtPtr htmlParserCtxtPtr;</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
></DIV
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6030"
|
||||
NAME="AEN6203"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
NAME="HTMLPARSERNODEINFO"
|
||||
></A
|
||||
>htmlParserNodeInfo</H3
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#D6E8FF"
|
||||
WIDTH="100%"
|
||||
CELLPADDING="6"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>typedef xmlParserNodeInfo htmlParserNodeInfo;</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
></DIV
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6035"
|
||||
NAME="AEN6207"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
NAME="HTMLSAXHANDLER"
|
||||
></A
|
||||
>htmlSAXHandler</H3
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#D6E8FF"
|
||||
WIDTH="100%"
|
||||
CELLPADDING="6"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>typedef xmlSAXHandler htmlSAXHandler;</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
></DIV
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6040"
|
||||
NAME="AEN6211"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
NAME="HTMLSAXHANDLERPTR"
|
||||
></A
|
||||
>htmlSAXHandlerPtr</H3
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#D6E8FF"
|
||||
WIDTH="100%"
|
||||
CELLPADDING="6"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>typedef xmlSAXHandlerPtr htmlSAXHandlerPtr;</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
></DIV
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6045"
|
||||
NAME="AEN6215"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
NAME="HTMLPARSERINPUT"
|
||||
></A
|
||||
>htmlParserInput</H3
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#D6E8FF"
|
||||
WIDTH="100%"
|
||||
CELLPADDING="6"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>typedef xmlParserInput htmlParserInput;</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
></DIV
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6050"
|
||||
NAME="AEN6219"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
NAME="HTMLPARSERINPUTPTR"
|
||||
></A
|
||||
>htmlParserInputPtr</H3
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#D6E8FF"
|
||||
WIDTH="100%"
|
||||
CELLPADDING="6"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>typedef xmlParserInputPtr htmlParserInputPtr;</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
></DIV
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6055"
|
||||
NAME="AEN6223"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
NAME="HTMLDOCPTR"
|
||||
></A
|
||||
>htmlDocPtr</H3
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#D6E8FF"
|
||||
WIDTH="100%"
|
||||
CELLPADDING="6"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>typedef xmlDocPtr htmlDocPtr;</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
></DIV
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6060"
|
||||
NAME="AEN6227"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
NAME="HTMLNODEPTR"
|
||||
></A
|
||||
>htmlNodePtr</H3
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#D6E8FF"
|
||||
WIDTH="100%"
|
||||
CELLPADDING="6"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>typedef xmlNodePtr htmlNodePtr;</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
></DIV
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6065"
|
||||
NAME="AEN6231"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -584,7 +467,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> The tag name</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -599,7 +482,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>the related htmlElemDescPtr or NULL if not found.</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -609,7 +492,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6086"
|
||||
NAME="AEN6252"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -667,7 +550,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the entity name</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -682,7 +565,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>the associated htmlEntityDescPtr if found, NULL otherwise.</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -692,7 +575,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6108"
|
||||
NAME="AEN6274"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -754,7 +637,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> an HTML parser context</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -771,7 +654,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> location to store the entity name</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -786,8 +669,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>the associated htmlEntityDescPtr if found, or NULL otherwise,
|
||||
if non-NULL *str will have to be freed by the caller.</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -797,7 +679,7 @@ if non-NULL *str will have to be freed by the caller.</TD
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6135"
|
||||
NAME="AEN6301"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -856,7 +738,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> an HTML parser context</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -871,7 +753,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>the value parsed (as an int)</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -881,7 +763,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6157"
|
||||
NAME="AEN6323"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -938,7 +820,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> an HTML parser context</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -948,7 +830,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6175"
|
||||
NAME="AEN6341"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -1012,7 +894,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> a pointer to an array of CHAR</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1029,7 +911,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> a free form C string describing the HTML document encoding, or NULL</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1046,7 +928,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the SAX handler block</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1063,7 +945,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> if using SAX, this pointer will be provided on callbacks. </TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1078,7 +960,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>the resulting document tree</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -1088,7 +970,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6209"
|
||||
NAME="AEN6375"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -1145,7 +1027,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> a pointer to an array of CHAR</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1162,7 +1044,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> a free form C string describing the HTML document encoding, or NULL</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1177,7 +1059,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>the resulting document tree</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -1187,7 +1069,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6234"
|
||||
NAME="AEN6400"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -1249,7 +1131,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the filename</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1266,7 +1148,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> a free form C string describing the HTML document encoding, or NULL</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1283,7 +1165,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the SAX handler block</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1300,7 +1182,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> if using SAX, this pointer will be provided on callbacks. </TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1315,7 +1197,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>the resulting document tree</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -1325,7 +1207,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6267"
|
||||
NAME="AEN6433"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -1380,7 +1262,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the filename</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1397,7 +1279,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> a free form C string describing the HTML document encoding, or NULL</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -1412,7 +1294,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>the resulting document tree</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
|
@ -115,7 +115,7 @@ SIZE="3"
|
||||
><DIV
|
||||
CLASS="REFNAMEDIV"
|
||||
><A
|
||||
NAME="AEN6296"
|
||||
NAME="AEN6462"
|
||||
></A
|
||||
><H2
|
||||
>Name</H2
|
||||
@ -123,7 +123,7 @@ NAME="AEN6296"
|
||||
><DIV
|
||||
CLASS="REFSYNOPSISDIV"
|
||||
><A
|
||||
NAME="AEN6299"
|
||||
NAME="AEN6465"
|
||||
></A
|
||||
><H2
|
||||
>Synopsis</H2
|
||||
@ -188,7 +188,7 @@ HREF="gnome-xml-tree.html#XMLDOCPTR"
|
||||
><DIV
|
||||
CLASS="REFSECT1"
|
||||
><A
|
||||
NAME="AEN6313"
|
||||
NAME="AEN6479"
|
||||
></A
|
||||
><H2
|
||||
>Description</H2
|
||||
@ -198,14 +198,14 @@ NAME="AEN6313"
|
||||
><DIV
|
||||
CLASS="REFSECT1"
|
||||
><A
|
||||
NAME="AEN6316"
|
||||
NAME="AEN6482"
|
||||
></A
|
||||
><H2
|
||||
>Details</H2
|
||||
><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6318"
|
||||
NAME="AEN6484"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -221,7 +221,7 @@ CELLPADDING="6"
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>#define HTML_TEXT_NODE XML_TEXT_NODE</PRE
|
||||
>#define HTML_TEXT_NODE</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
@ -231,7 +231,7 @@ CLASS="PROGRAMLISTING"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6323"
|
||||
NAME="AEN6489"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -247,7 +247,7 @@ CELLPADDING="6"
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>#define HTML_ENTITY_REF_NODE XML_ENTITY_REF_NODE</PRE
|
||||
>#define HTML_ENTITY_REF_NODE</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
@ -257,7 +257,7 @@ CLASS="PROGRAMLISTING"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6328"
|
||||
NAME="AEN6494"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -273,7 +273,7 @@ CELLPADDING="6"
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>#define HTML_COMMENT_NODE XML_COMMENT_NODE</PRE
|
||||
>#define HTML_COMMENT_NODE</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
@ -283,7 +283,7 @@ CLASS="PROGRAMLISTING"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6333"
|
||||
NAME="AEN6499"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -342,7 +342,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the document</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -359,7 +359,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> OUT: the memory pointer</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -376,7 +376,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> OUT: the memory lenght</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -386,7 +386,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6358"
|
||||
NAME="AEN6524"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -443,7 +443,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the FILE*</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -460,7 +460,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the document</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -470,7 +470,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6379"
|
||||
NAME="AEN6545"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -524,7 +524,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the filename</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -541,7 +541,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the document</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -556,7 +556,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the number of byte written or -1 in case of failure.</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -115,7 +115,7 @@ SIZE="3"
|
||||
><DIV
|
||||
CLASS="REFNAMEDIV"
|
||||
><A
|
||||
NAME="AEN5826"
|
||||
NAME="AEN5995"
|
||||
></A
|
||||
><H2
|
||||
>Name</H2
|
||||
@ -123,7 +123,7 @@ NAME="AEN5826"
|
||||
><DIV
|
||||
CLASS="REFSYNOPSISDIV"
|
||||
><A
|
||||
NAME="AEN5829"
|
||||
NAME="AEN5998"
|
||||
></A
|
||||
><H2
|
||||
>Synopsis</H2
|
||||
@ -138,6 +138,10 @@ CELLPADDING="6"
|
||||
CLASS="SYNOPSIS"
|
||||
>
|
||||
|
||||
enum <A
|
||||
HREF="gnome-xml-xml-error.html#XMLPARSERERRORS"
|
||||
>xmlParserErrors</A
|
||||
>;
|
||||
void <A
|
||||
HREF="gnome-xml-xml-error.html#XMLPARSERERROR"
|
||||
>xmlParserError</A
|
||||
@ -183,7 +187,7 @@ HREF="gnome-xml-parser.html#XMLPARSERINPUTPTR"
|
||||
><DIV
|
||||
CLASS="REFSECT1"
|
||||
><A
|
||||
NAME="AEN5840"
|
||||
NAME="AEN6010"
|
||||
></A
|
||||
><H2
|
||||
>Description</H2
|
||||
@ -193,14 +197,151 @@ NAME="AEN5840"
|
||||
><DIV
|
||||
CLASS="REFSECT1"
|
||||
><A
|
||||
NAME="AEN5843"
|
||||
NAME="AEN6013"
|
||||
></A
|
||||
><H2
|
||||
>Details</H2
|
||||
><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN5845"
|
||||
NAME="AEN6015"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
NAME="XMLPARSERERRORS"
|
||||
></A
|
||||
>enum xmlParserErrors</H3
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#D6E8FF"
|
||||
WIDTH="100%"
|
||||
CELLPADDING="6"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>typedef enum {
|
||||
XML_ERR_OK = 0,
|
||||
XML_ERR_INTERNAL_ERROR,
|
||||
XML_ERR_NO_MEMORY,
|
||||
|
||||
XML_ERR_DOCUMENT_START,
|
||||
XML_ERR_DOCUMENT_EMPTY,
|
||||
XML_ERR_DOCUMENT_END,
|
||||
|
||||
XML_ERR_INVALID_HEX_CHARREF,
|
||||
XML_ERR_INVALID_DEC_CHARREF,
|
||||
XML_ERR_INVALID_CHARREF,
|
||||
XML_ERR_INVALID_CHAR,
|
||||
|
||||
XML_ERR_CHARREF_AT_EOF,
|
||||
XML_ERR_CHARREF_IN_PROLOG,
|
||||
XML_ERR_CHARREF_IN_EPILOG,
|
||||
XML_ERR_CHARREF_IN_DTD,
|
||||
XML_ERR_ENTITYREF_AT_EOF,
|
||||
XML_ERR_ENTITYREF_IN_PROLOG,
|
||||
XML_ERR_ENTITYREF_IN_EPILOG,
|
||||
XML_ERR_ENTITYREF_IN_DTD,
|
||||
XML_ERR_PEREF_AT_EOF,
|
||||
XML_ERR_PEREF_IN_PROLOG,
|
||||
XML_ERR_PEREF_IN_EPILOG,
|
||||
XML_ERR_PEREF_IN_INT_SUBSET,
|
||||
|
||||
XML_ERR_ENTITYREF_NO_NAME,
|
||||
XML_ERR_ENTITYREF_SEMICOL_MISSING,
|
||||
|
||||
XML_ERR_PEREF_NO_NAME,
|
||||
XML_ERR_PEREF_SEMICOL_MISSING,
|
||||
|
||||
XML_ERR_UNDECLARED_ENTITY,
|
||||
XML_WAR_UNDECLARED_ENTITY,
|
||||
XML_ERR_UNPARSED_ENTITY,
|
||||
XML_ERR_ENTITY_IS_EXTERNAL,
|
||||
XML_ERR_ENTITY_IS_PARAMETER,
|
||||
|
||||
XML_ERR_UNKNOWN_ENCODING,
|
||||
XML_ERR_UNSUPPORTED_ENCODING,
|
||||
|
||||
XML_ERR_STRING_NOT_STARTED,
|
||||
XML_ERR_STRING_NOT_CLOSED,
|
||||
XML_ERR_NS_DECL_ERROR,
|
||||
|
||||
XML_ERR_ENTITY_NOT_STARTED,
|
||||
XML_ERR_ENTITY_NOT_FINISHED,
|
||||
|
||||
XML_ERR_LT_IN_ATTRIBUTE,
|
||||
XML_ERR_ATTRIBUTE_NOT_STARTED,
|
||||
XML_ERR_ATTRIBUTE_NOT_FINISHED,
|
||||
XML_ERR_ATTRIBUTE_WITHOUT_VALUE,
|
||||
XML_ERR_ATTRIBUTE_REDEFINED,
|
||||
|
||||
XML_ERR_LITERAL_NOT_STARTED,
|
||||
XML_ERR_LITERAL_NOT_FINISHED,
|
||||
|
||||
XML_ERR_COMMENT_NOT_FINISHED,
|
||||
|
||||
XML_ERR_PI_NOT_STARTED,
|
||||
XML_ERR_PI_NOT_FINISHED,
|
||||
|
||||
XML_ERR_NOTATION_NOT_STARTED,
|
||||
XML_ERR_NOTATION_NOT_FINISHED,
|
||||
|
||||
XML_ERR_ATTLIST_NOT_STARTED,
|
||||
XML_ERR_ATTLIST_NOT_FINISHED,
|
||||
|
||||
XML_ERR_MIXED_NOT_STARTED,
|
||||
XML_ERR_MIXED_NOT_FINISHED,
|
||||
|
||||
XML_ERR_ELEMCONTENT_NOT_STARTED,
|
||||
XML_ERR_ELEMCONTENT_NOT_FINISHED,
|
||||
|
||||
XML_ERR_XMLDECL_NOT_STARTED,
|
||||
XML_ERR_XMLDECL_NOT_FINISHED,
|
||||
|
||||
XML_ERR_CONDSEC_NOT_STARTED,
|
||||
XML_ERR_CONDSEC_NOT_FINISHED,
|
||||
|
||||
XML_ERR_EXT_SUBSET_NOT_FINISHED,
|
||||
|
||||
XML_ERR_DOCTYPE_NOT_FINISHED,
|
||||
|
||||
XML_ERR_MISPLACED_CDATA_END,
|
||||
XML_ERR_CDATA_NOT_FINISHED,
|
||||
|
||||
XML_ERR_RESERVED_XML_NAME,
|
||||
|
||||
XML_ERR_SPACE_REQUIRED,
|
||||
XML_ERR_SEPARATOR_REQUIRED,
|
||||
XML_ERR_NMTOKEN_REQUIRED,
|
||||
XML_ERR_NAME_REQUIRED,
|
||||
XML_ERR_PCDATA_REQUIRED,
|
||||
XML_ERR_URI_REQUIRED,
|
||||
XML_ERR_PUBID_REQUIRED,
|
||||
XML_ERR_LT_REQUIRED,
|
||||
XML_ERR_GT_REQUIRED,
|
||||
XML_ERR_LTSLASH_REQUIRED,
|
||||
XML_ERR_EQUAL_REQUIRED,
|
||||
|
||||
XML_ERR_TAG_NAME_MISMATCH,
|
||||
XML_ERR_TAG_NOT_FINISED,
|
||||
|
||||
XML_ERR_STANDALONE_VALUE,
|
||||
|
||||
XML_ERR_ENCODING_NAME,
|
||||
|
||||
XML_ERR_HYPHEN_IN_COMMENT
|
||||
|
||||
}xmlParserErrors;</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
></DIV
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6020"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -253,7 +394,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> an XML parser context</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -270,7 +411,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the message to display/transmit</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -287,7 +428,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> extra parameters for the message display</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -297,7 +438,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN5868"
|
||||
NAME="AEN6043"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -350,7 +491,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> an XML parser context</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -367,7 +508,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the message to display/transmit</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -384,7 +525,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> extra parameters for the message display</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -394,7 +535,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN5891"
|
||||
NAME="AEN6066"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -491,7 +632,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN5914"
|
||||
NAME="AEN6089"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -588,7 +729,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN5937"
|
||||
NAME="AEN6112"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -641,7 +782,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> an xmlParserInputPtr input</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -651,7 +792,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN5953"
|
||||
NAME="AEN6128"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -704,7 +845,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> an xmlParserInputPtr input</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
|
@ -115,7 +115,7 @@ SIZE="3"
|
||||
><DIV
|
||||
CLASS="REFNAMEDIV"
|
||||
><A
|
||||
NAME="AEN6408"
|
||||
NAME="AEN6574"
|
||||
></A
|
||||
><H2
|
||||
>Name</H2
|
||||
@ -123,7 +123,7 @@ NAME="AEN6408"
|
||||
><DIV
|
||||
CLASS="REFSYNOPSISDIV"
|
||||
><A
|
||||
NAME="AEN6411"
|
||||
NAME="AEN6577"
|
||||
></A
|
||||
><H2
|
||||
>Synopsis</H2
|
||||
@ -158,6 +158,40 @@ HREF="gnome-xml-xpath.html#XPATH-NUMBER"
|
||||
HREF="gnome-xml-xpath.html#XPATH-STRING"
|
||||
>XPATH_STRING</A
|
||||
>
|
||||
#define <A
|
||||
HREF="gnome-xml-xpath.html#XPATH-USERS"
|
||||
>XPATH_USERS</A
|
||||
>
|
||||
int (<A
|
||||
HREF="gnome-xml-xpath.html#XMLXPATHCONVERTFUNC"
|
||||
>*xmlXPathConvertFunc</A
|
||||
>) (<GTKDOCLINK
|
||||
HREF="XMLXPATHOBJECTPTR"
|
||||
>xmlXPathObjectPtr</GTKDOCLINK
|
||||
> obj,
|
||||
int type);
|
||||
void (<A
|
||||
HREF="gnome-xml-xpath.html#XMLXPATHEVALFUNC"
|
||||
>*xmlXPathEvalFunc</A
|
||||
>) (<GTKDOCLINK
|
||||
HREF="XMLXPATHPARSERCONTEXTPTR"
|
||||
>xmlXPathParserContextPtr</GTKDOCLINK
|
||||
> ctxt,
|
||||
int nargs);
|
||||
<GTKDOCLINK
|
||||
HREF="XMLXPATHOBJECTPTR"
|
||||
>xmlXPathObjectPtr</GTKDOCLINK
|
||||
> (<A
|
||||
HREF="gnome-xml-xpath.html#XMLXPATHAXISFUNC"
|
||||
>*xmlXPathAxisFunc</A
|
||||
>) (<GTKDOCLINK
|
||||
HREF="XMLXPATHPARSERCONTEXTPTR"
|
||||
>xmlXPathParserContextPtr</GTKDOCLINK
|
||||
> ctxt,
|
||||
<GTKDOCLINK
|
||||
HREF="XMLXPATHOBJECTPTR"
|
||||
>xmlXPathObjectPtr</GTKDOCLINK
|
||||
> cur);
|
||||
void (<A
|
||||
HREF="gnome-xml-xpath.html#XMLXPATHFUNCTION"
|
||||
>*xmlXPathFunction</A
|
||||
@ -175,9 +209,7 @@ HREF="gnome-xml-xpath.html#XMLXPATHNEWCONTEXT"
|
||||
> (<A
|
||||
HREF="gnome-xml-tree.html#XMLDOCPTR"
|
||||
>xmlDocPtr</A
|
||||
> doc,
|
||||
void *variables,
|
||||
void *functions);
|
||||
> doc);
|
||||
void <A
|
||||
HREF="gnome-xml-xpath.html#XMLXPATHFREECONTEXT"
|
||||
>xmlXPathFreeContext</A
|
||||
@ -227,7 +259,7 @@ HREF="XMLXPATHCONTEXTPTR"
|
||||
><DIV
|
||||
CLASS="REFSECT1"
|
||||
><A
|
||||
NAME="AEN6436"
|
||||
NAME="AEN6611"
|
||||
></A
|
||||
><H2
|
||||
>Description</H2
|
||||
@ -237,14 +269,14 @@ NAME="AEN6436"
|
||||
><DIV
|
||||
CLASS="REFSECT1"
|
||||
><A
|
||||
NAME="AEN6439"
|
||||
NAME="AEN6614"
|
||||
></A
|
||||
><H2
|
||||
>Details</H2
|
||||
><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6441"
|
||||
NAME="AEN6616"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -260,7 +292,7 @@ CELLPADDING="6"
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>#define XPATH_UNDEFINED 0</PRE
|
||||
>#define XPATH_UNDEFINED</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
@ -270,7 +302,7 @@ CLASS="PROGRAMLISTING"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6446"
|
||||
NAME="AEN6621"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -286,7 +318,7 @@ CELLPADDING="6"
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>#define XPATH_NODESET 1</PRE
|
||||
>#define XPATH_NODESET</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
@ -296,7 +328,7 @@ CLASS="PROGRAMLISTING"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6451"
|
||||
NAME="AEN6626"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -312,7 +344,7 @@ CELLPADDING="6"
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>#define XPATH_BOOLEAN 2</PRE
|
||||
>#define XPATH_BOOLEAN</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
@ -322,7 +354,7 @@ CLASS="PROGRAMLISTING"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6456"
|
||||
NAME="AEN6631"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -338,7 +370,7 @@ CELLPADDING="6"
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>#define XPATH_NUMBER 3</PRE
|
||||
>#define XPATH_NUMBER</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
@ -348,7 +380,7 @@ CLASS="PROGRAMLISTING"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6461"
|
||||
NAME="AEN6636"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -364,7 +396,7 @@ CELLPADDING="6"
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>#define XPATH_STRING 4</PRE
|
||||
>#define XPATH_STRING</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
@ -374,7 +406,306 @@ CLASS="PROGRAMLISTING"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6466"
|
||||
NAME="AEN6641"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
NAME="XPATH-USERS"
|
||||
></A
|
||||
>XPATH_USERS</H3
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#D6E8FF"
|
||||
WIDTH="100%"
|
||||
CELLPADDING="6"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>#define XPATH_USERS</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
></DIV
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6646"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
NAME="XMLXPATHCONVERTFUNC"
|
||||
></A
|
||||
>xmlXPathConvertFunc ()</H3
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#D6E8FF"
|
||||
WIDTH="100%"
|
||||
CELLPADDING="6"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>int (*xmlXPathConvertFunc) (<GTKDOCLINK
|
||||
HREF="XMLXPATHOBJECTPTR"
|
||||
>xmlXPathObjectPtr</GTKDOCLINK
|
||||
> obj,
|
||||
int type);</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
><DIV
|
||||
CLASS="INFORMALTABLE"
|
||||
><P
|
||||
></P
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
WIDTH="100%"
|
||||
BGCOLOR="#FFD0D0"
|
||||
CELLSPACING="0"
|
||||
CELLPADDING="4"
|
||||
CLASS="CALSTABLE"
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="20%"
|
||||
ALIGN="RIGHT"
|
||||
VALIGN="TOP"
|
||||
><TT
|
||||
CLASS="PARAMETER"
|
||||
><I
|
||||
>obj</I
|
||||
></TT
|
||||
> :</TD
|
||||
><TD
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="20%"
|
||||
ALIGN="RIGHT"
|
||||
VALIGN="TOP"
|
||||
><TT
|
||||
CLASS="PARAMETER"
|
||||
><I
|
||||
>type</I
|
||||
></TT
|
||||
> :</TD
|
||||
><TD
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="20%"
|
||||
ALIGN="RIGHT"
|
||||
VALIGN="TOP"
|
||||
><I
|
||||
CLASS="EMPHASIS"
|
||||
>Returns</I
|
||||
> :</TD
|
||||
><TD
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
></DIV
|
||||
></DIV
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6669"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
NAME="XMLXPATHEVALFUNC"
|
||||
></A
|
||||
>xmlXPathEvalFunc ()</H3
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#D6E8FF"
|
||||
WIDTH="100%"
|
||||
CELLPADDING="6"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>void (*xmlXPathEvalFunc) (<GTKDOCLINK
|
||||
HREF="XMLXPATHPARSERCONTEXTPTR"
|
||||
>xmlXPathParserContextPtr</GTKDOCLINK
|
||||
> ctxt,
|
||||
int nargs);</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
><DIV
|
||||
CLASS="INFORMALTABLE"
|
||||
><P
|
||||
></P
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
WIDTH="100%"
|
||||
BGCOLOR="#FFD0D0"
|
||||
CELLSPACING="0"
|
||||
CELLPADDING="4"
|
||||
CLASS="CALSTABLE"
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="20%"
|
||||
ALIGN="RIGHT"
|
||||
VALIGN="TOP"
|
||||
><TT
|
||||
CLASS="PARAMETER"
|
||||
><I
|
||||
>ctxt</I
|
||||
></TT
|
||||
> :</TD
|
||||
><TD
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="20%"
|
||||
ALIGN="RIGHT"
|
||||
VALIGN="TOP"
|
||||
><TT
|
||||
CLASS="PARAMETER"
|
||||
><I
|
||||
>nargs</I
|
||||
></TT
|
||||
> :</TD
|
||||
><TD
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
></DIV
|
||||
></DIV
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6688"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
NAME="XMLXPATHAXISFUNC"
|
||||
></A
|
||||
>xmlXPathAxisFunc ()</H3
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#D6E8FF"
|
||||
WIDTH="100%"
|
||||
CELLPADDING="6"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
><GTKDOCLINK
|
||||
HREF="XMLXPATHOBJECTPTR"
|
||||
>xmlXPathObjectPtr</GTKDOCLINK
|
||||
> (*xmlXPathAxisFunc) (<GTKDOCLINK
|
||||
HREF="XMLXPATHPARSERCONTEXTPTR"
|
||||
>xmlXPathParserContextPtr</GTKDOCLINK
|
||||
> ctxt,
|
||||
<GTKDOCLINK
|
||||
HREF="XMLXPATHOBJECTPTR"
|
||||
>xmlXPathObjectPtr</GTKDOCLINK
|
||||
> cur);</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
><DIV
|
||||
CLASS="INFORMALTABLE"
|
||||
><P
|
||||
></P
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
WIDTH="100%"
|
||||
BGCOLOR="#FFD0D0"
|
||||
CELLSPACING="0"
|
||||
CELLPADDING="4"
|
||||
CLASS="CALSTABLE"
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="20%"
|
||||
ALIGN="RIGHT"
|
||||
VALIGN="TOP"
|
||||
><TT
|
||||
CLASS="PARAMETER"
|
||||
><I
|
||||
>ctxt</I
|
||||
></TT
|
||||
> :</TD
|
||||
><TD
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="20%"
|
||||
ALIGN="RIGHT"
|
||||
VALIGN="TOP"
|
||||
><TT
|
||||
CLASS="PARAMETER"
|
||||
><I
|
||||
>cur</I
|
||||
></TT
|
||||
> :</TD
|
||||
><TD
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="20%"
|
||||
ALIGN="RIGHT"
|
||||
VALIGN="TOP"
|
||||
><I
|
||||
CLASS="EMPHASIS"
|
||||
>Returns</I
|
||||
> :</TD
|
||||
><TD
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
></P
|
||||
></DIV
|
||||
></DIV
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6713"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -453,7 +784,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6485"
|
||||
NAME="AEN6732"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -475,9 +806,7 @@ HREF="XMLXPATHCONTEXTPTR"
|
||||
> xmlXPathNewContext (<A
|
||||
HREF="gnome-xml-tree.html#XMLDOCPTR"
|
||||
>xmlDocPtr</A
|
||||
> doc,
|
||||
void *variables,
|
||||
void *functions);</PRE
|
||||
> doc);</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
@ -511,41 +840,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the XML document</TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="20%"
|
||||
ALIGN="RIGHT"
|
||||
VALIGN="TOP"
|
||||
><TT
|
||||
CLASS="PARAMETER"
|
||||
><I
|
||||
>variables</I
|
||||
></TT
|
||||
> :</TD
|
||||
><TD
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the variable list</TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="20%"
|
||||
ALIGN="RIGHT"
|
||||
VALIGN="TOP"
|
||||
><TT
|
||||
CLASS="PARAMETER"
|
||||
><I
|
||||
>functions</I
|
||||
></TT
|
||||
> :</TD
|
||||
><TD
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the function list</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -560,7 +855,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>the xmlXPathContext just allocated.</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -570,7 +865,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6514"
|
||||
NAME="AEN6753"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -623,7 +918,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the context to free</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -633,7 +928,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6530"
|
||||
NAME="AEN6769"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -693,7 +988,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the XPath expression</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -710,7 +1005,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the XPath context</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -725,8 +1020,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>the xmlXPathObjectPtr resulting from the eveluation or NULL.
|
||||
the caller has to free the object.</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -736,7 +1030,7 @@ the caller has to free the object.</TD
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6556"
|
||||
NAME="AEN6795"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -789,7 +1083,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the object to free</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
@ -799,7 +1093,7 @@ VALIGN="TOP"
|
||||
><HR><DIV
|
||||
CLASS="REFSECT2"
|
||||
><A
|
||||
NAME="AEN6572"
|
||||
NAME="AEN6811"
|
||||
></A
|
||||
><H3
|
||||
><A
|
||||
@ -859,7 +1153,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the XPath expression</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -876,7 +1170,7 @@ CLASS="PARAMETER"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
> the XPath context</TD
|
||||
> </TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
@ -891,8 +1185,7 @@ CLASS="EMPHASIS"
|
||||
WIDTH="80%"
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
>the xmlXPathObjectPtr resulting from the evaluation or NULL.
|
||||
the caller has to free the object.</TD
|
||||
> </TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
|
@ -101,6 +101,7 @@
|
||||
<ANCHOR id ="XMLDTDPTR" href="gnome-xml/gnome-xml-tree.html#XMLDTDPTR">
|
||||
<ANCHOR id ="XMLATTRPTR" href="gnome-xml/gnome-xml-tree.html#XMLATTRPTR">
|
||||
<ANCHOR id ="XMLIDPTR" href="gnome-xml/gnome-xml-tree.html#XMLIDPTR">
|
||||
<ANCHOR id ="XMLREFPTR" href="gnome-xml/gnome-xml-tree.html#XMLREFPTR">
|
||||
<ANCHOR id ="XMLNODE" href="gnome-xml/gnome-xml-tree.html#XMLNODE">
|
||||
<ANCHOR id ="XMLNODEPTR" href="gnome-xml/gnome-xml-tree.html#XMLNODEPTR">
|
||||
<ANCHOR id ="XMLDOC" href="gnome-xml/gnome-xml-tree.html#XMLDOC">
|
||||
@ -176,6 +177,8 @@
|
||||
<ANCHOR id ="XMLNODEGETCONTENT" href="gnome-xml/gnome-xml-tree.html#XMLNODEGETCONTENT">
|
||||
<ANCHOR id ="XMLNODEGETLANG" href="gnome-xml/gnome-xml-tree.html#XMLNODEGETLANG">
|
||||
<ANCHOR id ="XMLNODESETLANG" href="gnome-xml/gnome-xml-tree.html#XMLNODESETLANG">
|
||||
<ANCHOR id ="XMLREMOVEPROP" href="gnome-xml/gnome-xml-tree.html#XMLREMOVEPROP">
|
||||
<ANCHOR id ="XMLREMOVENODE" href="gnome-xml/gnome-xml-tree.html#XMLREMOVENODE">
|
||||
<ANCHOR id ="XMLBUFFERWRITECHAR" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERWRITECHAR">
|
||||
<ANCHOR id ="XMLBUFFERWRITECHAR" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERWRITECHAR">
|
||||
<ANCHOR id ="XMLBUFFERWRITEQUOTEDSTRING" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERWRITEQUOTEDSTRING">
|
||||
@ -221,6 +224,8 @@
|
||||
<ANCHOR id ="XMLATTRIBUTETABLEPTR" href="gnome-xml/gnome-xml-valid.html#XMLATTRIBUTETABLEPTR">
|
||||
<ANCHOR id ="XML-MIN-ID-TABLE" href="gnome-xml/gnome-xml-valid.html#XML-MIN-ID-TABLE">
|
||||
<ANCHOR id ="XMLIDTABLEPTR" href="gnome-xml/gnome-xml-valid.html#XMLIDTABLEPTR">
|
||||
<ANCHOR id ="XML-MIN-REF-TABLE" href="gnome-xml/gnome-xml-valid.html#XML-MIN-REF-TABLE">
|
||||
<ANCHOR id ="XMLREFTABLEPTR" href="gnome-xml/gnome-xml-valid.html#XMLREFTABLEPTR">
|
||||
<ANCHOR id ="XMLADDNOTATIONDECL" href="gnome-xml/gnome-xml-valid.html#XMLADDNOTATIONDECL">
|
||||
<ANCHOR id ="XMLCOPYNOTATIONTABLE" href="gnome-xml/gnome-xml-valid.html#XMLCOPYNOTATIONTABLE">
|
||||
<ANCHOR id ="XMLFREENOTATIONTABLE" href="gnome-xml/gnome-xml-valid.html#XMLFREENOTATIONTABLE">
|
||||
@ -244,6 +249,10 @@
|
||||
<ANCHOR id ="XMLFREEIDTABLE" href="gnome-xml/gnome-xml-valid.html#XMLFREEIDTABLE">
|
||||
<ANCHOR id ="XMLGETID" href="gnome-xml/gnome-xml-valid.html#XMLGETID">
|
||||
<ANCHOR id ="XMLISID" href="gnome-xml/gnome-xml-valid.html#XMLISID">
|
||||
<ANCHOR id ="XMLADDREF" href="gnome-xml/gnome-xml-valid.html#XMLADDREF">
|
||||
<ANCHOR id ="XMLCOPYREFTABLE" href="gnome-xml/gnome-xml-valid.html#XMLCOPYREFTABLE">
|
||||
<ANCHOR id ="XMLFREEREFTABLE" href="gnome-xml/gnome-xml-valid.html#XMLFREEREFTABLE">
|
||||
<ANCHOR id ="XMLISREF" href="gnome-xml/gnome-xml-valid.html#XMLISREF">
|
||||
<ANCHOR id ="XMLVALIDATEROOT" href="gnome-xml/gnome-xml-valid.html#XMLVALIDATEROOT">
|
||||
<ANCHOR id ="XMLVALIDATEELEMENTDECL" href="gnome-xml/gnome-xml-valid.html#XMLVALIDATEELEMENTDECL">
|
||||
<ANCHOR id ="XMLVALIDATEATTRIBUTEDECL" href="gnome-xml/gnome-xml-valid.html#XMLVALIDATEATTRIBUTEDECL">
|
||||
@ -254,12 +263,14 @@
|
||||
<ANCHOR id ="XMLVALIDATEELEMENT" href="gnome-xml/gnome-xml-valid.html#XMLVALIDATEELEMENT">
|
||||
<ANCHOR id ="XMLVALIDATEONEELEMENT" href="gnome-xml/gnome-xml-valid.html#XMLVALIDATEONEELEMENT">
|
||||
<ANCHOR id ="XMLVALIDATEONEATTRIBUTE" href="gnome-xml/gnome-xml-valid.html#XMLVALIDATEONEATTRIBUTE">
|
||||
<ANCHOR id ="XMLVALIDATEDOCUMENTFINAL" href="gnome-xml/gnome-xml-valid.html#XMLVALIDATEDOCUMENTFINAL">
|
||||
<ANCHOR id ="XMLVALIDATENOTATIONUSE" href="gnome-xml/gnome-xml-valid.html#XMLVALIDATENOTATIONUSE">
|
||||
<ANCHOR id ="XMLISMIXEDELEMENT" href="gnome-xml/gnome-xml-valid.html#XMLISMIXEDELEMENT">
|
||||
<ANCHOR id ="XMLGETDTDATTRDESC" href="gnome-xml/gnome-xml-valid.html#XMLGETDTDATTRDESC">
|
||||
<ANCHOR id ="XMLGETDTDNOTATIONDESC" href="gnome-xml/gnome-xml-valid.html#XMLGETDTDNOTATIONDESC">
|
||||
<ANCHOR id ="XMLGETDTDELEMENTDESC" href="gnome-xml/gnome-xml-valid.html#XMLGETDTDELEMENTDESC">
|
||||
<ANCHOR id ="GNOME-XML-XML-ERROR" href="gnome-xml/gnome-xml-xml-error.html">
|
||||
<ANCHOR id ="XMLPARSERERRORS" href="gnome-xml/gnome-xml-xml-error.html#XMLPARSERERRORS">
|
||||
<ANCHOR id ="XMLPARSERERROR" href="gnome-xml/gnome-xml-xml-error.html#XMLPARSERERROR">
|
||||
<ANCHOR id ="XMLPARSERWARNING" href="gnome-xml/gnome-xml-xml-error.html#XMLPARSERWARNING">
|
||||
<ANCHOR id ="XMLPARSERVALIDITYERROR" href="gnome-xml/gnome-xml-xml-error.html#XMLPARSERVALIDITYERROR">
|
||||
@ -298,6 +309,10 @@
|
||||
<ANCHOR id ="XPATH-BOOLEAN" href="gnome-xml/gnome-xml-xpath.html#XPATH-BOOLEAN">
|
||||
<ANCHOR id ="XPATH-NUMBER" href="gnome-xml/gnome-xml-xpath.html#XPATH-NUMBER">
|
||||
<ANCHOR id ="XPATH-STRING" href="gnome-xml/gnome-xml-xpath.html#XPATH-STRING">
|
||||
<ANCHOR id ="XPATH-USERS" href="gnome-xml/gnome-xml-xpath.html#XPATH-USERS">
|
||||
<ANCHOR id ="XMLXPATHCONVERTFUNC" href="gnome-xml/gnome-xml-xpath.html#XMLXPATHCONVERTFUNC">
|
||||
<ANCHOR id ="XMLXPATHEVALFUNC" href="gnome-xml/gnome-xml-xpath.html#XMLXPATHEVALFUNC">
|
||||
<ANCHOR id ="XMLXPATHAXISFUNC" href="gnome-xml/gnome-xml-xpath.html#XMLXPATHAXISFUNC">
|
||||
<ANCHOR id ="XMLXPATHFUNCTION" href="gnome-xml/gnome-xml-xpath.html#XMLXPATHFUNCTION">
|
||||
<ANCHOR id ="XMLXPATHNEWCONTEXT" href="gnome-xml/gnome-xml-xpath.html#XMLXPATHNEWCONTEXT">
|
||||
<ANCHOR id ="XMLXPATHFREECONTEXT" href="gnome-xml/gnome-xml-xpath.html#XMLXPATHFREECONTEXT">
|
||||
@ -393,7 +408,6 @@
|
||||
<ANCHOR id ="INPUTPUSH" href="gnome-xml/gnome-xml-parserinternals.html#INPUTPUSH">
|
||||
<ANCHOR id ="INPUTPOP" href="gnome-xml/gnome-xml-parserinternals.html#INPUTPOP">
|
||||
<ANCHOR id ="GNOME-XML-XMLMEMORY" href="gnome-xml/gnome-xml-xmlmemory.html">
|
||||
<ANCHOR id ="NO-DEBUG-MEMORY" href="gnome-xml/gnome-xml-xmlmemory.html#NO-DEBUG-MEMORY">
|
||||
<ANCHOR id ="XMLFREE" href="gnome-xml/gnome-xml-xmlmemory.html#XMLFREE">
|
||||
<ANCHOR id ="XMLMALLOC" href="gnome-xml/gnome-xml-xmlmemory.html#XMLMALLOC">
|
||||
<ANCHOR id ="XMLREALLOC" href="gnome-xml/gnome-xml-xmlmemory.html#XMLREALLOC">
|
||||
@ -408,3 +422,11 @@
|
||||
<ANCHOR id ="XMLMALLOCLOC" href="gnome-xml/gnome-xml-xmlmemory.html#XMLMALLOCLOC">
|
||||
<ANCHOR id ="XMLREALLOCLOC" href="gnome-xml/gnome-xml-xmlmemory.html#XMLREALLOCLOC">
|
||||
<ANCHOR id ="XMLMEMSTRDUPLOC" href="gnome-xml/gnome-xml-xmlmemory.html#XMLMEMSTRDUPLOC">
|
||||
<ANCHOR id ="GNOME-XML-NANOHTTP" href="gnome-xml/gnome-xml-nanohttp.html">
|
||||
<ANCHOR id ="XMLNANOHTTPFETCH" href="gnome-xml/gnome-xml-nanohttp.html#XMLNANOHTTPFETCH">
|
||||
<ANCHOR id ="XMLNANOHTTPMETHOD" href="gnome-xml/gnome-xml-nanohttp.html#XMLNANOHTTPMETHOD">
|
||||
<ANCHOR id ="XMLNANOHTTPOPEN" href="gnome-xml/gnome-xml-nanohttp.html#XMLNANOHTTPOPEN">
|
||||
<ANCHOR id ="XMLNANOHTTPRETURNCODE" href="gnome-xml/gnome-xml-nanohttp.html#XMLNANOHTTPRETURNCODE">
|
||||
<ANCHOR id ="XMLNANOHTTPREAD" href="gnome-xml/gnome-xml-nanohttp.html#XMLNANOHTTPREAD">
|
||||
<ANCHOR id ="XMLNANOHTTPSAVE" href="gnome-xml/gnome-xml-nanohttp.html#XMLNANOHTTPSAVE">
|
||||
<ANCHOR id ="XMLNANOHTTPCLOSE" href="gnome-xml/gnome-xml-nanohttp.html#XMLNANOHTTPCLOSE">
|
||||
|
10
encoding.c
10
encoding.c
@ -19,10 +19,16 @@
|
||||
* Daniel.Veillard@w3.org
|
||||
*/
|
||||
|
||||
#ifndef WIN32
|
||||
#include "config.h"
|
||||
#include <ctype.h>
|
||||
#include <string.h>
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#ifdef HAVE_CTYPE_H
|
||||
#include <ctype.h>
|
||||
#endif
|
||||
#include "encoding.h"
|
||||
#ifdef HAVE_UNICODE_H
|
||||
#include <unicode.h>
|
||||
|
@ -6,9 +6,15 @@
|
||||
* Daniel.Veillard@w3.org
|
||||
*/
|
||||
|
||||
#ifndef WIN32
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
#include "xmlmemory.h"
|
||||
#include "entities.h"
|
||||
|
||||
|
@ -105,25 +105,13 @@ typedef struct _xmlParserCtxt {
|
||||
struct xmlSAXHandler *sax; /* The SAX handler */
|
||||
void *userData; /* the document being built */
|
||||
xmlDocPtr myDoc; /* the document being built */
|
||||
int wellFormed; /* is the document well formed */
|
||||
int replaceEntities; /* shall we replace entities ? */
|
||||
const CHAR *version; /* the XML version string */
|
||||
const CHAR *encoding; /* encoding, if any */
|
||||
int standalone; /* standalone document */
|
||||
int hasExternalSubset; /* reference and external subset */
|
||||
int hasPErefs; /* the internal subset has PE refs */
|
||||
int html; /* are we parsing an HTML document */
|
||||
int external; /* are we parsing an external entity */
|
||||
|
||||
int wellFormed; /* is the document well formed */
|
||||
int valid; /* is the document valid */
|
||||
int validate; /* shall we try to validate ? */
|
||||
xmlValidCtxt vctxt; /* The validity context */
|
||||
|
||||
xmlParserInputState instate; /* current type of input */
|
||||
int token; /* next char look-ahead */
|
||||
|
||||
char *directory; /* the data directory */
|
||||
|
||||
/* Input stream stack */
|
||||
xmlParserInputPtr input; /* Current input stream */
|
||||
int inputNr; /* Number of current input streams */
|
||||
@ -138,6 +126,21 @@ typedef struct _xmlParserCtxt {
|
||||
|
||||
int record_info; /* Whether node info should be kept */
|
||||
xmlParserNodeInfoSeq node_seq; /* info about each node parsed */
|
||||
|
||||
int errno; /* error code */
|
||||
|
||||
int hasExternalSubset; /* reference and external subset */
|
||||
int hasPErefs; /* the internal subset has PE refs */
|
||||
int external; /* are we parsing an external entity */
|
||||
|
||||
int valid; /* is the document valid */
|
||||
int validate; /* shall we try to validate ? */
|
||||
xmlValidCtxt vctxt; /* The validity context */
|
||||
|
||||
xmlParserInputState instate; /* current type of input */
|
||||
int token; /* next char look-ahead */
|
||||
|
||||
char *directory; /* the data directory */
|
||||
} _xmlParserCtxt;
|
||||
typedef _xmlParserCtxt xmlParserCtxt;
|
||||
typedef xmlParserCtxt *xmlParserCtxtPtr;
|
||||
|
@ -23,6 +23,7 @@ typedef struct xmlParserInputBuffer {
|
||||
FILE *file; /* Input on file handler */
|
||||
void* gzfile; /* Input on a compressed stream */
|
||||
int fd; /* Input on a file descriptor */
|
||||
void *netIO; /* Input from a network stream */
|
||||
|
||||
xmlCharEncodingHandlerPtr encoder; /* I18N conversions to UTF-8 */
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
#ifndef _DEBUG_MEMORY_ALLOC_
|
||||
#define _DEBUG_MEMORY_ALLOC_
|
||||
|
||||
#define NO_DEBUG_MEMORY
|
||||
/* #define NO_DEBUG_MEMORY */
|
||||
|
||||
#ifdef NO_DEBUG_MEMORY
|
||||
#ifdef HAVE_MALLOC_H
|
||||
|
29
parser.h
29
parser.h
@ -105,25 +105,13 @@ typedef struct _xmlParserCtxt {
|
||||
struct xmlSAXHandler *sax; /* The SAX handler */
|
||||
void *userData; /* the document being built */
|
||||
xmlDocPtr myDoc; /* the document being built */
|
||||
int wellFormed; /* is the document well formed */
|
||||
int replaceEntities; /* shall we replace entities ? */
|
||||
const CHAR *version; /* the XML version string */
|
||||
const CHAR *encoding; /* encoding, if any */
|
||||
int standalone; /* standalone document */
|
||||
int hasExternalSubset; /* reference and external subset */
|
||||
int hasPErefs; /* the internal subset has PE refs */
|
||||
int html; /* are we parsing an HTML document */
|
||||
int external; /* are we parsing an external entity */
|
||||
|
||||
int wellFormed; /* is the document well formed */
|
||||
int valid; /* is the document valid */
|
||||
int validate; /* shall we try to validate ? */
|
||||
xmlValidCtxt vctxt; /* The validity context */
|
||||
|
||||
xmlParserInputState instate; /* current type of input */
|
||||
int token; /* next char look-ahead */
|
||||
|
||||
char *directory; /* the data directory */
|
||||
|
||||
/* Input stream stack */
|
||||
xmlParserInputPtr input; /* Current input stream */
|
||||
int inputNr; /* Number of current input streams */
|
||||
@ -138,6 +126,21 @@ typedef struct _xmlParserCtxt {
|
||||
|
||||
int record_info; /* Whether node info should be kept */
|
||||
xmlParserNodeInfoSeq node_seq; /* info about each node parsed */
|
||||
|
||||
int errno; /* error code */
|
||||
|
||||
int hasExternalSubset; /* reference and external subset */
|
||||
int hasPErefs; /* the internal subset has PE refs */
|
||||
int external; /* are we parsing an external entity */
|
||||
|
||||
int valid; /* is the document valid */
|
||||
int validate; /* shall we try to validate ? */
|
||||
xmlValidCtxt vctxt; /* The validity context */
|
||||
|
||||
xmlParserInputState instate; /* current type of input */
|
||||
int token; /* next char look-ahead */
|
||||
|
||||
char *directory; /* the data directory */
|
||||
} _xmlParserCtxt;
|
||||
typedef _xmlParserCtxt xmlParserCtxt;
|
||||
typedef xmlParserCtxt *xmlParserCtxtPtr;
|
||||
|
12
testHTML.c
12
testHTML.c
@ -10,9 +10,15 @@
|
||||
#define HAVE_FCNTL_H
|
||||
#include <io.h>
|
||||
#else
|
||||
#include <config.h>
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#ifdef HAVE_SYS_TYPES_H
|
||||
#include <sys/types.h>
|
||||
#endif
|
||||
#ifdef HAVE_SYS_STAT_H
|
||||
#include <sys/stat.h>
|
||||
#endif
|
||||
@ -22,9 +28,9 @@
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
|
||||
#include "HTMLparser.h"
|
||||
#include "HTMLtree.h"
|
||||
|
15
testSAX.c
15
testSAX.c
@ -10,9 +10,16 @@
|
||||
#define HAVE_FCNTL_H
|
||||
#include <io.h>
|
||||
#else
|
||||
#include <config.h>
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <stdarg.h>
|
||||
|
||||
#ifdef HAVE_SYS_TYPES_H
|
||||
#include <sys/types.h>
|
||||
#endif
|
||||
#ifdef HAVE_SYS_STAT_H
|
||||
#include <sys/stat.h>
|
||||
#endif
|
||||
@ -22,10 +29,10 @@
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#include <stdarg.h>
|
||||
#endif
|
||||
|
||||
|
||||
#include "parser.h"
|
||||
#include "parserInternals.h" /* only for xmlNewInputFromFile() */
|
||||
|
13
testXPath.c
13
testXPath.c
@ -10,9 +10,15 @@
|
||||
#define HAVE_FCNTL_H
|
||||
#include <io.h>
|
||||
#else
|
||||
#include <config.h>
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#ifdef HAVE_SYS_TYPES_H
|
||||
#include <sys/types.h>
|
||||
#endif
|
||||
#ifdef HAVE_SYS_STAT_H
|
||||
#include <sys/stat.h>
|
||||
#endif
|
||||
@ -22,9 +28,10 @@
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
|
||||
|
||||
#include "xpath.h"
|
||||
#include "tree.h"
|
||||
|
12
tester.c
12
tester.c
@ -10,9 +10,15 @@
|
||||
#define HAVE_FCNTL_H
|
||||
#include <io.h>
|
||||
#else
|
||||
#include <config.h>
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#ifdef HAVE_SYS_TYPES_H
|
||||
#include <sys/types.h>
|
||||
#endif
|
||||
#ifdef HAVE_SYS_STAT_H
|
||||
#include <sys/stat.h>
|
||||
#endif
|
||||
@ -22,9 +28,9 @@
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
|
||||
#include "xmlmemory.h"
|
||||
#include "parser.h"
|
||||
|
14
tree.c
14
tree.c
@ -6,12 +6,22 @@
|
||||
* Daniel.Veillard@w3.org
|
||||
*/
|
||||
|
||||
#ifdef WIN32
|
||||
#define HAVE_FCNTL_H
|
||||
#include <io.h>
|
||||
#else
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <ctype.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h> /* for memset() only ! */
|
||||
|
||||
#ifdef HAVE_CTYPE_H
|
||||
#include <ctype.h>
|
||||
#endif
|
||||
#ifdef HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
#ifdef HAVE_ZLIB_H
|
||||
#include <zlib.h>
|
||||
#endif
|
||||
|
13
valid.c
13
valid.c
@ -7,9 +7,20 @@
|
||||
* Daniel.Veillard@w3.org
|
||||
*/
|
||||
|
||||
#ifdef WIN32
|
||||
#define HAVE_FCNTL_H
|
||||
#include <io.h>
|
||||
#else
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#ifdef HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
|
||||
#include "xmlmemory.h"
|
||||
#include "valid.h"
|
||||
#include "parser.h"
|
||||
|
120
xml-error.h
120
xml-error.h
@ -1,8 +1,121 @@
|
||||
#ifndef error_h_
|
||||
#define error_h_
|
||||
#ifndef __XML_ERROR_H__
|
||||
#define __XML_ERROR_H__
|
||||
|
||||
#include "parser.h"
|
||||
|
||||
typedef enum {
|
||||
XML_ERR_OK = 0,
|
||||
XML_ERR_INTERNAL_ERROR,
|
||||
XML_ERR_NO_MEMORY,
|
||||
|
||||
XML_ERR_DOCUMENT_START,
|
||||
XML_ERR_DOCUMENT_EMPTY,
|
||||
XML_ERR_DOCUMENT_END,
|
||||
|
||||
XML_ERR_INVALID_HEX_CHARREF,
|
||||
XML_ERR_INVALID_DEC_CHARREF,
|
||||
XML_ERR_INVALID_CHARREF,
|
||||
XML_ERR_INVALID_CHAR,
|
||||
|
||||
XML_ERR_CHARREF_AT_EOF,
|
||||
XML_ERR_CHARREF_IN_PROLOG,
|
||||
XML_ERR_CHARREF_IN_EPILOG,
|
||||
XML_ERR_CHARREF_IN_DTD,
|
||||
XML_ERR_ENTITYREF_AT_EOF,
|
||||
XML_ERR_ENTITYREF_IN_PROLOG,
|
||||
XML_ERR_ENTITYREF_IN_EPILOG,
|
||||
XML_ERR_ENTITYREF_IN_DTD,
|
||||
XML_ERR_PEREF_AT_EOF,
|
||||
XML_ERR_PEREF_IN_PROLOG,
|
||||
XML_ERR_PEREF_IN_EPILOG,
|
||||
XML_ERR_PEREF_IN_INT_SUBSET,
|
||||
|
||||
XML_ERR_ENTITYREF_NO_NAME,
|
||||
XML_ERR_ENTITYREF_SEMICOL_MISSING,
|
||||
|
||||
XML_ERR_PEREF_NO_NAME,
|
||||
XML_ERR_PEREF_SEMICOL_MISSING,
|
||||
|
||||
XML_ERR_UNDECLARED_ENTITY,
|
||||
XML_WAR_UNDECLARED_ENTITY,
|
||||
XML_ERR_UNPARSED_ENTITY,
|
||||
XML_ERR_ENTITY_IS_EXTERNAL,
|
||||
XML_ERR_ENTITY_IS_PARAMETER,
|
||||
|
||||
XML_ERR_UNKNOWN_ENCODING,
|
||||
XML_ERR_UNSUPPORTED_ENCODING,
|
||||
|
||||
XML_ERR_STRING_NOT_STARTED,
|
||||
XML_ERR_STRING_NOT_CLOSED,
|
||||
XML_ERR_NS_DECL_ERROR,
|
||||
|
||||
XML_ERR_ENTITY_NOT_STARTED,
|
||||
XML_ERR_ENTITY_NOT_FINISHED,
|
||||
|
||||
XML_ERR_LT_IN_ATTRIBUTE,
|
||||
XML_ERR_ATTRIBUTE_NOT_STARTED,
|
||||
XML_ERR_ATTRIBUTE_NOT_FINISHED,
|
||||
XML_ERR_ATTRIBUTE_WITHOUT_VALUE,
|
||||
XML_ERR_ATTRIBUTE_REDEFINED,
|
||||
|
||||
XML_ERR_LITERAL_NOT_STARTED,
|
||||
XML_ERR_LITERAL_NOT_FINISHED,
|
||||
|
||||
XML_ERR_COMMENT_NOT_FINISHED,
|
||||
|
||||
XML_ERR_PI_NOT_STARTED,
|
||||
XML_ERR_PI_NOT_FINISHED,
|
||||
|
||||
XML_ERR_NOTATION_NOT_STARTED,
|
||||
XML_ERR_NOTATION_NOT_FINISHED,
|
||||
|
||||
XML_ERR_ATTLIST_NOT_STARTED,
|
||||
XML_ERR_ATTLIST_NOT_FINISHED,
|
||||
|
||||
XML_ERR_MIXED_NOT_STARTED,
|
||||
XML_ERR_MIXED_NOT_FINISHED,
|
||||
|
||||
XML_ERR_ELEMCONTENT_NOT_STARTED,
|
||||
XML_ERR_ELEMCONTENT_NOT_FINISHED,
|
||||
|
||||
XML_ERR_XMLDECL_NOT_STARTED,
|
||||
XML_ERR_XMLDECL_NOT_FINISHED,
|
||||
|
||||
XML_ERR_CONDSEC_NOT_STARTED,
|
||||
XML_ERR_CONDSEC_NOT_FINISHED,
|
||||
|
||||
XML_ERR_EXT_SUBSET_NOT_FINISHED,
|
||||
|
||||
XML_ERR_DOCTYPE_NOT_FINISHED,
|
||||
|
||||
XML_ERR_MISPLACED_CDATA_END,
|
||||
XML_ERR_CDATA_NOT_FINISHED,
|
||||
|
||||
XML_ERR_RESERVED_XML_NAME,
|
||||
|
||||
XML_ERR_SPACE_REQUIRED,
|
||||
XML_ERR_SEPARATOR_REQUIRED,
|
||||
XML_ERR_NMTOKEN_REQUIRED,
|
||||
XML_ERR_NAME_REQUIRED,
|
||||
XML_ERR_PCDATA_REQUIRED,
|
||||
XML_ERR_URI_REQUIRED,
|
||||
XML_ERR_PUBID_REQUIRED,
|
||||
XML_ERR_LT_REQUIRED,
|
||||
XML_ERR_GT_REQUIRED,
|
||||
XML_ERR_LTSLASH_REQUIRED,
|
||||
XML_ERR_EQUAL_REQUIRED,
|
||||
|
||||
XML_ERR_TAG_NAME_MISMATCH,
|
||||
XML_ERR_TAG_NOT_FINISED,
|
||||
|
||||
XML_ERR_STANDALONE_VALUE,
|
||||
|
||||
XML_ERR_ENCODING_NAME,
|
||||
|
||||
XML_ERR_HYPHEN_IN_COMMENT
|
||||
|
||||
}xmlParserErrors;
|
||||
|
||||
void xmlParserError (void *ctx,
|
||||
const char *msg,
|
||||
...);
|
||||
@ -17,4 +130,5 @@ void xmlParserValidityWarning(void *ctx,
|
||||
...);
|
||||
void xmlParserPrintFileInfo (xmlParserInputPtr input);
|
||||
void xmlParserPrintFileContext(xmlParserInputPtr input);
|
||||
#endif
|
||||
|
||||
#endif /* __XML_ERROR_H__ */
|
||||
|
41
xmlIO.c
41
xmlIO.c
@ -6,22 +6,39 @@
|
||||
* Daniel.Veillard@w3.org
|
||||
*/
|
||||
|
||||
#ifdef WIN32
|
||||
#define HAVE_FCNTL_H
|
||||
#include <io.h>
|
||||
#else
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#ifdef HAVE_SYS_TYPES_H
|
||||
#include <sys/types.h>
|
||||
#endif
|
||||
#ifdef HAVE_SYS_STAT_H
|
||||
#include <sys/stat.h>
|
||||
#endif
|
||||
#ifdef HAVE_FCNTL_H
|
||||
#include <fcntl.h>
|
||||
#endif
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#ifdef HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
#ifdef HAVE_ZLIB_H
|
||||
#include <zlib.h>
|
||||
#endif
|
||||
#include <string.h>
|
||||
|
||||
#include "xmlmemory.h"
|
||||
#include "parser.h"
|
||||
#include "xmlIO.h"
|
||||
#include "nanohttp.h"
|
||||
|
||||
/* #define DEBUG_INPUT */
|
||||
/* #define VERBOSE_FAILURE */
|
||||
@ -54,6 +71,7 @@ xmlAllocParserInputBuffer(xmlCharEncoding enc) {
|
||||
ret->buffer = xmlBufferCreate();
|
||||
ret->encoder = xmlGetCharEncodingHandler(enc);
|
||||
ret->fd = -1;
|
||||
ret->netIO = NULL;
|
||||
|
||||
return(ret);
|
||||
}
|
||||
@ -74,6 +92,8 @@ xmlFreeParserInputBuffer(xmlParserInputBufferPtr in) {
|
||||
if (in->gzfile != NULL)
|
||||
gzclose(in->gzfile);
|
||||
#endif
|
||||
if (in->netIO != NULL)
|
||||
xmlNanoHTTPClose(in->netIO);
|
||||
if (in->fd >= 0)
|
||||
close(in->fd);
|
||||
memset(in, 0xbe, (size_t) sizeof(xmlParserInputBuffer));
|
||||
@ -96,14 +116,24 @@ xmlParserInputBufferPtr
|
||||
xmlParserInputBufferCreateFilename(const char *filename, xmlCharEncoding enc) {
|
||||
xmlParserInputBufferPtr ret;
|
||||
#ifdef HAVE_ZLIB_H
|
||||
gzFile input;
|
||||
gzFile input = 0;
|
||||
#else
|
||||
int input = -1;
|
||||
#endif
|
||||
void *netIO = NULL;
|
||||
|
||||
if (filename == NULL) return(NULL);
|
||||
|
||||
if (!strcmp(filename, "-")) {
|
||||
if (!strncmp(filename, "http://", 7)) {
|
||||
netIO = xmlNanoHTTPOpen(filename, NULL);
|
||||
if (netIO == NULL) {
|
||||
#ifdef VERBOSE_FAILURE
|
||||
fprintf (stderr, "Cannot read URL %s\n", filename);
|
||||
perror ("xmlNanoHTTPOpen failed");
|
||||
#endif
|
||||
return(NULL);
|
||||
}
|
||||
} else if (!strcmp(filename, "-")) {
|
||||
#ifdef HAVE_ZLIB_H
|
||||
input = gzdopen (fileno(stdin), "r");
|
||||
if (input == NULL) {
|
||||
@ -166,6 +196,7 @@ xmlParserInputBufferCreateFilename(const char *filename, xmlCharEncoding enc) {
|
||||
#else
|
||||
ret->fd = input;
|
||||
#endif
|
||||
ret->netIO = netIO;
|
||||
}
|
||||
xmlParserInputBufferRead(ret, 4);
|
||||
|
||||
@ -255,7 +286,9 @@ xmlParserInputBufferGrow(xmlParserInputBufferPtr in, int len) {
|
||||
fprintf(stderr, "xmlParserInputBufferGrow : out of memory !\n");
|
||||
return(-1);
|
||||
}
|
||||
if (in->file != NULL) {
|
||||
if (in->netIO != NULL) {
|
||||
res = xmlNanoHTTPRead(in->netIO, &buffer[0], len);
|
||||
} else if (in->file != NULL) {
|
||||
res = fread(&buffer[0], 1, len, in->file);
|
||||
#ifdef HAVE_ZLIB_H
|
||||
} else if (in->gzfile != NULL) {
|
||||
|
1
xmlIO.h
1
xmlIO.h
@ -23,6 +23,7 @@ typedef struct xmlParserInputBuffer {
|
||||
FILE *file; /* Input on file handler */
|
||||
void* gzfile; /* Input on a compressed stream */
|
||||
int fd; /* Input on a file descriptor */
|
||||
void *netIO; /* Input from a network stream */
|
||||
|
||||
xmlCharEncodingHandlerPtr encoder; /* I18N conversions to UTF-8 */
|
||||
|
||||
|
115
xmlmemory.c
115
xmlmemory.c
@ -4,10 +4,26 @@
|
||||
* Daniel.Veillard@w3.org
|
||||
*/
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <string.h>
|
||||
#ifdef WIN32
|
||||
#define HAVE_FCNTL_H
|
||||
#include <io.h>
|
||||
#else
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#ifdef HAVE_SYS_TYPES_H
|
||||
#include <sys/types.h>
|
||||
#endif
|
||||
#ifdef HAVE_TIME_H
|
||||
#include <time.h>
|
||||
#endif
|
||||
#ifdef HAVE_MALLOC_H
|
||||
#include <malloc.h>
|
||||
#endif
|
||||
|
||||
#include "xmlmemory.h"
|
||||
|
||||
#ifndef NO_DEBUG_MEMORY
|
||||
@ -103,8 +119,8 @@ xmlMallocLoc(int size, const char * file, int line)
|
||||
p = (MEMHDR *) malloc(RESERVE_SIZE+size);
|
||||
|
||||
if (!p) {
|
||||
fprintf(stderr, "xmlMalloc : Out of free space\n");
|
||||
xmlMemoryDump();
|
||||
fprintf(stderr, "xmlMalloc : Out of free space\n");
|
||||
xmlMemoryDump();
|
||||
}
|
||||
p->mh_tag = MEMTAG;
|
||||
p->mh_number = ++block;
|
||||
@ -165,7 +181,7 @@ xmlReallocLoc(void *ptr,int size, const char * file, int line)
|
||||
p = CLIENT_2_HDR(ptr);
|
||||
number = p->mh_number;
|
||||
if (p->mh_tag != MEMTAG) {
|
||||
Mem_Tag_Err(p);
|
||||
Mem_Tag_Err(p);
|
||||
goto error;
|
||||
}
|
||||
p->mh_tag = ~MEMTAG;
|
||||
@ -231,8 +247,8 @@ xmlFree(void *ptr)
|
||||
|
||||
p = CLIENT_2_HDR(ptr);
|
||||
if (p->mh_tag != MEMTAG) {
|
||||
Mem_Tag_Err(p);
|
||||
goto error;
|
||||
Mem_Tag_Err(p);
|
||||
goto error;
|
||||
}
|
||||
p->mh_tag = ~MEMTAG;
|
||||
debugMemSize -= p->mh_size;
|
||||
@ -273,7 +289,7 @@ xmlMemStrdupLoc(const char *str, const char *file, int line)
|
||||
|
||||
p = (MEMHDR *) malloc(RESERVE_SIZE+size);
|
||||
if (!p) {
|
||||
goto error;
|
||||
goto error;
|
||||
}
|
||||
p->mh_tag = MEMTAG;
|
||||
p->mh_number = ++block;
|
||||
@ -288,9 +304,9 @@ xmlMemStrdupLoc(const char *str, const char *file, int line)
|
||||
s = HDR_2_CLIENT(p);
|
||||
|
||||
if (s != NULL)
|
||||
strcpy(s,str);
|
||||
strcpy(s,str);
|
||||
else
|
||||
goto error;
|
||||
goto error;
|
||||
|
||||
TEST_POINT
|
||||
|
||||
@ -339,29 +355,40 @@ void
|
||||
xmlMemDisplay(FILE *fp)
|
||||
{
|
||||
#ifdef MEM_LIST
|
||||
MEMHDR *p;
|
||||
int idx;
|
||||
MEMHDR *p;
|
||||
int idx;
|
||||
#if defined(HAVE_LOCALTIME) && defined(HAVE_STRFTIME)
|
||||
time_t currentTime;
|
||||
char buf[500];
|
||||
struct tm * tstruct;
|
||||
|
||||
currentTime = time(NULL);
|
||||
tstruct = localtime(¤tTime);
|
||||
strftime(buf, sizeof(buf) - 1, "%c", tstruct);
|
||||
fprintf(fp," %s\n\n", buf);
|
||||
#endif
|
||||
|
||||
|
||||
fprintf(fp," MEMORY ALLOCATED : %lu\n",debugMemSize);
|
||||
fprintf(fp,"BLOCK NUMBER SIZE TYPE\n");
|
||||
idx = 0;
|
||||
p = memlist;
|
||||
while (p) {
|
||||
fprintf(fp," MEMORY ALLOCATED : %lu\n",debugMemSize);
|
||||
fprintf(fp,"BLOCK NUMBER SIZE TYPE\n");
|
||||
idx = 0;
|
||||
p = memlist;
|
||||
while (p) {
|
||||
fprintf(fp,"%-5u %6lu %6u ",idx++,p->mh_number,p->mh_size);
|
||||
switch (p->mh_type) {
|
||||
case STRDUP_TYPE:fprintf(fp,"strdup() in ");break;
|
||||
case MALLOC_TYPE:fprintf(fp,"malloc() in ");break;
|
||||
case REALLOC_TYPE:fprintf(fp,"realloc() in ");break;
|
||||
default:fprintf(fp," ??? in ");break;
|
||||
}
|
||||
switch (p->mh_type) {
|
||||
case STRDUP_TYPE:fprintf(fp,"strdup() in ");break;
|
||||
case MALLOC_TYPE:fprintf(fp,"malloc() in ");break;
|
||||
case REALLOC_TYPE:fprintf(fp,"realloc() in ");break;
|
||||
default:fprintf(fp," ??? in ");break;
|
||||
}
|
||||
if (p->mh_file != NULL) fprintf(fp,"%s(%d)", p->mh_file, p->mh_line);
|
||||
if (p->mh_tag != MEMTAG)
|
||||
if (p->mh_tag != MEMTAG)
|
||||
fprintf(fp," INVALID");
|
||||
fprintf(fp,"\n");
|
||||
p = p->mh_next;
|
||||
}
|
||||
fprintf(fp,"\n");
|
||||
p = p->mh_next;
|
||||
}
|
||||
#else
|
||||
fprintf(fp,"Memory list not compiled (MEM_LIST not defined !)\n");
|
||||
fprintf(fp,"Memory list not compiled (MEM_LIST not defined !)\n");
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -369,26 +396,26 @@ xmlMemDisplay(FILE *fp)
|
||||
|
||||
void debugmem_list_add(MEMHDR *p)
|
||||
{
|
||||
p->mh_next = memlist;
|
||||
p->mh_prev = NULL;
|
||||
if (memlist) memlist->mh_prev = p;
|
||||
memlist = p;
|
||||
p->mh_next = memlist;
|
||||
p->mh_prev = NULL;
|
||||
if (memlist) memlist->mh_prev = p;
|
||||
memlist = p;
|
||||
#ifdef MEM_LIST_DEBUG
|
||||
if (stderr)
|
||||
Mem_Display(stderr);
|
||||
if (stderr)
|
||||
Mem_Display(stderr);
|
||||
#endif
|
||||
}
|
||||
|
||||
void debugmem_list_delete(MEMHDR *p)
|
||||
{
|
||||
if (p->mh_next)
|
||||
p->mh_next->mh_prev = p->mh_prev;
|
||||
if (p->mh_prev)
|
||||
p->mh_prev->mh_next = p->mh_next;
|
||||
else memlist = p->mh_next;
|
||||
if (p->mh_next)
|
||||
p->mh_next->mh_prev = p->mh_prev;
|
||||
if (p->mh_prev)
|
||||
p->mh_prev->mh_next = p->mh_next;
|
||||
else memlist = p->mh_next;
|
||||
#ifdef MEM_LIST_DEBUG
|
||||
if (stderr)
|
||||
Mem_Display(stderr);
|
||||
if (stderr)
|
||||
Mem_Display(stderr);
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -400,10 +427,10 @@ void debugmem_list_delete(MEMHDR *p)
|
||||
|
||||
void debugmem_tag_error(void *p)
|
||||
{
|
||||
fprintf(stderr, "Memory tag error occurs :%p \n\t bye\n", p);
|
||||
fprintf(stderr, "Memory tag error occurs :%p \n\t bye\n", p);
|
||||
#ifdef MEM_LIST
|
||||
if (stderr)
|
||||
xmlMemDisplay(stderr);
|
||||
if (stderr)
|
||||
xmlMemDisplay(stderr);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
#ifndef _DEBUG_MEMORY_ALLOC_
|
||||
#define _DEBUG_MEMORY_ALLOC_
|
||||
|
||||
#define NO_DEBUG_MEMORY
|
||||
/* #define NO_DEBUG_MEMORY */
|
||||
|
||||
#ifdef NO_DEBUG_MEMORY
|
||||
#ifdef HAVE_MALLOC_H
|
||||
|
18
xpath.c
18
xpath.c
@ -13,7 +13,19 @@
|
||||
* Author: Daniel.Veillard@w3.org
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
#ifdef WIN32
|
||||
#define HAVE_FCNTL_H
|
||||
#include <io.h>
|
||||
#else
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#ifdef HAVE_SYS_TYPES_H
|
||||
#include <sys/types.h>
|
||||
#endif
|
||||
#ifdef HAVE_MATH_H
|
||||
#include <math.h>
|
||||
#endif
|
||||
@ -26,8 +38,10 @@
|
||||
#ifdef HAVE_NAN_H
|
||||
#include <nan.h>
|
||||
#endif
|
||||
#include <stdio.h>
|
||||
#ifdef HAVE_CTYPE_H
|
||||
#include <ctype.h>
|
||||
#endif
|
||||
|
||||
#include "xmlmemory.h"
|
||||
#include "tree.h"
|
||||
#include "valid.h"
|
||||
|
Loading…
x
Reference in New Issue
Block a user