doubango/thirdparties/common/include/libxml/uri.h
c732d49e
 /**
  * Summary: library of generic URI related routines
  * Description: library of generic URI related routines
  *              Implements RFC 2396
  *
  * Copy: See Copyright for the status of this software.
  *
  * Author: Daniel Veillard
  */
 
 #ifndef __XML_URI_H__
 #define __XML_URI_H__
 
 #include <libxml/xmlversion.h>
 #include <libxml/tree.h>
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
 /**
  * xmlURI:
  *
  * A parsed URI reference. This is a struct containing the various fields
  * as described in RFC 2396 but separated for further processing.
  *
  * Note: query is a deprecated field which is incorrectly unescaped.
  * query_raw takes precedence over query if the former is set.
  * See: http://mail.gnome.org/archives/xml/2007-April/thread.html#00127
  */
 typedef struct _xmlURI xmlURI;
 typedef xmlURI *xmlURIPtr;
 struct _xmlURI {
     char *scheme;	/* the URI scheme */
     char *opaque;	/* opaque part */
     char *authority;	/* the authority part */
     char *server;	/* the server part */
     char *user;		/* the user part */
     int port;		/* the port number */
     char *path;		/* the path string */
     char *query;	/* the query string (deprecated - use with caution) */
     char *fragment;	/* the fragment identifier */
     int  cleanup;	/* parsing potentially unclean URI */
     char *query_raw;	/* the query string (as it appears in the URI) */
 };
 
 /*
  * This function is in tree.h:
  * xmlChar *	xmlNodeGetBase	(xmlDocPtr doc,
  *                               xmlNodePtr cur);
  */
 XMLPUBFUN xmlURIPtr XMLCALL
 		xmlCreateURI		(void);
 XMLPUBFUN xmlChar * XMLCALL
 		xmlBuildURI		(const xmlChar *URI,
 					 const xmlChar *base);
 XMLPUBFUN xmlChar * XMLCALL
 		xmlBuildRelativeURI	(const xmlChar *URI,
 					 const xmlChar *base);
 XMLPUBFUN xmlURIPtr XMLCALL
 		xmlParseURI		(const char *str);
 XMLPUBFUN xmlURIPtr XMLCALL
 		xmlParseURIRaw		(const char *str,
 					 int raw);
 XMLPUBFUN int XMLCALL
 		xmlParseURIReference	(xmlURIPtr uri,
 					 const char *str);
 XMLPUBFUN xmlChar * XMLCALL
 		xmlSaveUri		(xmlURIPtr uri);
 XMLPUBFUN void XMLCALL
 		xmlPrintURI		(FILE *stream,
 					 xmlURIPtr uri);
 XMLPUBFUN xmlChar * XMLCALL
 		xmlURIEscapeStr         (const xmlChar *str,
 					 const xmlChar *list);
 XMLPUBFUN char * XMLCALL
 		xmlURIUnescapeString	(const char *str,
 					 int len,
 					 char *target);
 XMLPUBFUN int XMLCALL
 		xmlNormalizeURIPath	(char *path);
 XMLPUBFUN xmlChar * XMLCALL
 		xmlURIEscape		(const xmlChar *str);
 XMLPUBFUN void XMLCALL
 		xmlFreeURI		(xmlURIPtr uri);
 XMLPUBFUN xmlChar* XMLCALL
 		xmlCanonicPath		(const xmlChar *path);
 XMLPUBFUN xmlChar* XMLCALL
 		xmlPathToURI		(const xmlChar *path);
 
 #ifdef __cplusplus
 }
 #endif
 #endif /* __XML_URI_H__ */