⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xlink.h.svn-base

📁 这是一个用于解析xml文件的类库。使用这个类库
💻 SVN-BASE
字号:
/* * Summary: unfinished XLink detection module * Description: unfinished XLink detection module * * Copy: See Copyright for the status of this software. * * Author: Daniel Veillard */#ifndef __XML_XLINK_H__#define __XML_XLINK_H__#include <libxml/xmlversion.h>#include <libxml/tree.h>#ifdef __cplusplusextern "C" {#endif/** * Various defines for the various Link properties. * * NOTE: the link detection layer will try to resolve QName expansion *       of namespaces. If "foo" is the prefix for "http://foo.com/" *       then the link detection layer will expand role="foo:myrole" *       to "http://foo.com/:myrole". * NOTE: the link detection layer will expand URI-Refences found on *       href attributes by using the base mechanism if found. */typedef xmlChar *xlinkHRef;typedef xmlChar *xlinkRole;typedef xmlChar *xlinkTitle;typedef enum {    XLINK_TYPE_NONE = 0,    XLINK_TYPE_SIMPLE,    XLINK_TYPE_EXTENDED,    XLINK_TYPE_EXTENDED_SET} xlinkType;typedef enum {    XLINK_SHOW_NONE = 0,    XLINK_SHOW_NEW,    XLINK_SHOW_EMBED,    XLINK_SHOW_REPLACE} xlinkShow;typedef enum {    XLINK_ACTUATE_NONE = 0,    XLINK_ACTUATE_AUTO,    XLINK_ACTUATE_ONREQUEST} xlinkActuate;/** * xlinkNodeDetectFunc: * @ctx:  user data pointer * @node:  the node to check *  * This is the prototype for the link detection routine. * It calls the default link detection callbacks upon link detection. */typedef void (*xlinkNodeDetectFunc) (void *ctx, xmlNodePtr node);/* * The link detection module interact with the upper layers using * a set of callback registered at parsing time. *//** * xlinkSimpleLinkFunk: * @ctx:  user data pointer * @node:  the node carrying the link * @href:  the target of the link * @role:  the role string * @title:  the link title * * This is the prototype for a simple link detection callback. */typedef void(*xlinkSimpleLinkFunk)	(void *ctx,			 xmlNodePtr node,			 const xlinkHRef href,			 const xlinkRole role,			 const xlinkTitle title);/** * xlinkExtendedLinkFunk: * @ctx:  user data pointer * @node:  the node carrying the link * @nbLocators: the number of locators detected on the link * @hrefs:  pointer to the array of locator hrefs * @roles:  pointer to the array of locator roles * @nbArcs: the number of arcs detected on the link * @from:  pointer to the array of source roles found on the arcs * @to:  pointer to the array of target roles found on the arcs * @show:  array of values for the show attributes found on the arcs * @actuate:  array of values for the actuate attributes found on the arcs * @nbTitles: the number of titles detected on the link * @title:  array of titles detected on the link * @langs:  array of xml:lang values for the titles * * This is the prototype for a extended link detection callback. */typedef void(*xlinkExtendedLinkFunk)(void *ctx,			 xmlNodePtr node,			 int nbLocators,			 const xlinkHRef *hrefs,			 const xlinkRole *roles,			 int nbArcs,			 const xlinkRole *from,			 const xlinkRole *to,			 xlinkShow *show,			 xlinkActuate *actuate,			 int nbTitles,			 const xlinkTitle *titles,			 const xmlChar **langs);/** * xlinkExtendedLinkSetFunk: * @ctx:  user data pointer * @node:  the node carrying the link * @nbLocators: the number of locators detected on the link * @hrefs:  pointer to the array of locator hrefs * @roles:  pointer to the array of locator roles * @nbTitles: the number of titles detected on the link * @title:  array of titles detected on the link * @langs:  array of xml:lang values for the titles * * This is the prototype for a extended link set detection callback. */typedef void(*xlinkExtendedLinkSetFunk)	(void *ctx,				 xmlNodePtr node,				 int nbLocators,				 const xlinkHRef *hrefs,				 const xlinkRole *roles,				 int nbTitles,				 const xlinkTitle *titles,				 const xmlChar **langs);/** * This is the structure containing a set of Links detection callbacks. * * There is no default xlink callbacks, if one want to get link * recognition activated, those call backs must be provided before parsing. */typedef struct _xlinkHandler xlinkHandler;typedef xlinkHandler *xlinkHandlerPtr;struct _xlinkHandler {    xlinkSimpleLinkFunk simple;    xlinkExtendedLinkFunk extended;    xlinkExtendedLinkSetFunk set;};/* * The default detection routine, can be overridden, they call the default * detection callbacks.  */XMLPUBFUN xlinkNodeDetectFunc XMLCALL			xlinkGetDefaultDetect	(void);XMLPUBFUN void XMLCALL					xlinkSetDefaultDetect	(xlinkNodeDetectFunc func);/* * Routines to set/get the default handlers. */XMLPUBFUN xlinkHandlerPtr XMLCALL			xlinkGetDefaultHandler	(void);XMLPUBFUN void XMLCALL				xlinkSetDefaultHandler	(xlinkHandlerPtr handler);/* * Link detection module itself. */XMLPUBFUN xlinkType XMLCALL	 		xlinkIsLink		(xmlDocPtr doc,					 xmlNodePtr node);#ifdef __cplusplus}#endif#endif /* __XML_XLINK_H__ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -