亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mxml.h

?? minixml2.5最新的版本。 嵌入式xml 解析、查找、生成、遍歷 功能,全部實現是標準c,移植很容易。 最新的2.5
?? H
字號:
/* * "$Id: mxml.h 307 2007-09-15 20:03:15Z mike $" * * Header file for Mini-XML, a small XML-like file parsing library. * * Copyright 2003-2007 by Michael Sweet. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public * License as published by the Free Software Foundation; either * version 2, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU General Public License for more details. *//* * Prevent multiple inclusion... */#ifndef _mxml_h_#  define _mxml_h_/* * Include necessary headers... */#  include <stdio.h>#  include <stdlib.h>#  include <string.h>#  include <ctype.h>#  include <errno.h>/* * Constants... */#  define MXML_TAB		8	/* Tabs every N columns */#  define MXML_NO_CALLBACK	0	/* Don't use a type callback */#  define MXML_INTEGER_CALLBACK	mxml_integer_cb					/* Treat all data as integers */#  define MXML_OPAQUE_CALLBACK	mxml_opaque_cb					/* Treat all data as opaque */#  define MXML_REAL_CALLBACK	mxml_real_cb					/* Treat all data as real numbers */#  define MXML_TEXT_CALLBACK	0	/* Treat all data as text */#  define MXML_IGNORE_CALLBACK	mxml_ignore_cb					/* Ignore all non-element content */#  define MXML_NO_PARENT	0	/* No parent for the node */#  define MXML_DESCEND		1	/* Descend when finding/walking */#  define MXML_NO_DESCEND	0	/* Don't descend when finding/walking */#  define MXML_DESCEND_FIRST	-1	/* Descend for first find */#  define MXML_WS_BEFORE_OPEN	0	/* Callback for before open tag */#  define MXML_WS_AFTER_OPEN	1	/* Callback for after open tag */#  define MXML_WS_BEFORE_CLOSE	2	/* Callback for before close tag */#  define MXML_WS_AFTER_CLOSE	3	/* Callback for after close tag */#  define MXML_ADD_BEFORE	0	/* Add node before specified node */#  define MXML_ADD_AFTER	1	/* Add node after specified node */#  define MXML_ADD_TO_PARENT	NULL	/* Add node relative to parent *//* * Data types... */typedef enum mxml_sax_event_e		/**** SAX event type. ****/{  MXML_SAX_CDATA,			/* CDATA node */  MXML_SAX_COMMENT,			/* Comment node */  MXML_SAX_DATA,			/* Data node */  MXML_SAX_DIRECTIVE,			/* Processing directive node */  MXML_SAX_ELEMENT_CLOSE,		/* Element closed */  MXML_SAX_ELEMENT_OPEN			/* Element opened */} mxml_sax_event_t;typedef enum mxml_type_e		/**** The XML node type. ****/{  MXML_IGNORE = -1,			/* Ignore/throw away node @since Mini-XML 2.3@ */  MXML_ELEMENT,				/* XML element with attributes */  MXML_INTEGER,				/* Integer value */  MXML_OPAQUE,				/* Opaque string */  MXML_REAL,				/* Real value */  MXML_TEXT,				/* Text fragment */  MXML_CUSTOM				/* Custom data @since Mini-XML 2.1@ */} mxml_type_t;typedef void (*mxml_custom_destroy_cb_t)(void *);					/**** Custom data destructor ****/typedef void (*mxml_error_cb_t)(const char *);  					/**** Error callback function ****/typedef struct mxml_attr_s		/**** An XML element attribute value. ****/{  char			*name;		/* Attribute name */  char			*value;		/* Attribute value */} mxml_attr_t;typedef struct mxml_element_s		/**** An XML element value. ****/{  char			*name;		/* Name of element */  int			num_attrs;	/* Number of attributes */  mxml_attr_t		*attrs;		/* Attributes */} mxml_element_t;typedef struct mxml_text_s		/**** An XML text value. ****/{  int			whitespace;	/* Leading whitespace? */  char			*string;	/* Fragment string */} mxml_text_t;typedef struct mxml_custom_s		/**** An XML custom value. @since Mini-XML 2.1@ ****/{  void			*data;		/* Pointer to (allocated) custom data */  mxml_custom_destroy_cb_t destroy;	/* Pointer to destructor function */} mxml_custom_t;typedef union mxml_value_u		/**** An XML node value. ****/{  mxml_element_t	element;	/* Element */  int			integer;	/* Integer number */  char			*opaque;	/* Opaque string */  double		real;		/* Real number */  mxml_text_t		text;		/* Text fragment */  mxml_custom_t		custom;		/* Custom data @since Mini-XML 2.1@ */} mxml_value_t;typedef struct mxml_node_s		/**** An XML node. ****/{  mxml_type_t		type;		/* Node type */  struct mxml_node_s	*next;		/* Next node under same parent */  struct mxml_node_s	*prev;		/* Previous node under same parent */  struct mxml_node_s	*parent;	/* Parent node */  struct mxml_node_s	*child;		/* First child node */  struct mxml_node_s	*last_child;	/* Last child node */  mxml_value_t		value;		/* Node value */  int			ref_count;	/* Use count */  void			*user_data;	/* User data */} mxml_node_t;typedef struct mxml_index_s		/**** An XML node index. ****/{  char			*attr;		/* Attribute used for indexing or NULL */  int			num_nodes;	/* Number of nodes in index */  int			alloc_nodes;	/* Allocated nodes in index */  int			cur_node;	/* Current node */  mxml_node_t		**nodes;	/* Node array */} mxml_index_t;typedef int (*mxml_custom_load_cb_t)(mxml_node_t *, const char *);					/**** Custom data load callback function ****/typedef char *(*mxml_custom_save_cb_t)(mxml_node_t *);  					/**** Custom data save callback function ****/typedef mxml_type_t (*mxml_load_cb_t)(mxml_node_t *);					/**** Load callback function ****/typedef const char *(*mxml_save_cb_t)(mxml_node_t *, int);					/**** Save callback function ****/typedef void (*mxml_sax_cb_t)(mxml_node_t *, mxml_sax_event_t, void *);  					/**** SAX callback function ****//* * C++ support... */#  ifdef __cplusplusextern "C" {#  endif /* __cplusplus *//* * Prototypes... */extern void		mxmlAdd(mxml_node_t *parent, int where,			        mxml_node_t *child, mxml_node_t *node);extern void		mxmlDelete(mxml_node_t *node);extern void		mxmlElementDeleteAttr(mxml_node_t *node,			                      const char *name);extern const char	*mxmlElementGetAttr(mxml_node_t *node, const char *name);extern void		mxmlElementSetAttr(mxml_node_t *node, const char *name,			                   const char *value);extern void		mxmlElementSetAttrf(mxml_node_t *node, const char *name,			                    const char *format, ...)#    ifdef __GNUC____attribute__ ((__format__ (__printf__, 3, 4)))#    endif /* __GNUC__ */;extern int		mxmlEntityAddCallback(int (*cb)(const char *name));extern const char	*mxmlEntityGetName(int val);extern int		mxmlEntityGetValue(const char *name);extern void		mxmlEntityRemoveCallback(int (*cb)(const char *name));extern mxml_node_t	*mxmlFindElement(mxml_node_t *node, mxml_node_t *top,			                 const char *name, const char *attr,					 const char *value, int descend);extern void		mxmlIndexDelete(mxml_index_t *ind);extern mxml_node_t	*mxmlIndexEnum(mxml_index_t *ind);extern mxml_node_t	*mxmlIndexFind(mxml_index_t *ind,			               const char *element,			               const char *value);extern mxml_index_t	*mxmlIndexNew(mxml_node_t *node, const char *element,			              const char *attr);extern mxml_node_t	*mxmlIndexReset(mxml_index_t *ind);extern mxml_node_t	*mxmlLoadFd(mxml_node_t *top, int fd,			            mxml_type_t (*cb)(mxml_node_t *));extern mxml_node_t	*mxmlLoadFile(mxml_node_t *top, FILE *fp,			              mxml_type_t (*cb)(mxml_node_t *));extern mxml_node_t	*mxmlLoadString(mxml_node_t *top, const char *s,			                mxml_type_t (*cb)(mxml_node_t *));extern mxml_node_t	*mxmlNewCDATA(mxml_node_t *parent, const char *string);extern mxml_node_t	*mxmlNewCustom(mxml_node_t *parent, void *data,			               mxml_custom_destroy_cb_t destroy);extern mxml_node_t	*mxmlNewElement(mxml_node_t *parent, const char *name);extern mxml_node_t	*mxmlNewInteger(mxml_node_t *parent, int integer);extern mxml_node_t	*mxmlNewOpaque(mxml_node_t *parent, const char *opaque);extern mxml_node_t	*mxmlNewReal(mxml_node_t *parent, double real);extern mxml_node_t	*mxmlNewText(mxml_node_t *parent, int whitespace,			             const char *string);extern mxml_node_t	*mxmlNewTextf(mxml_node_t *parent, int whitespace,			              const char *format, ...)#    ifdef __GNUC____attribute__ ((__format__ (__printf__, 3, 4)))#    endif /* __GNUC__ */;extern mxml_node_t	*mxmlNewXML(const char *version);extern int		mxmlRelease(mxml_node_t *node);extern void		mxmlRemove(mxml_node_t *node);extern int		mxmlRetain(mxml_node_t *node);extern char		*mxmlSaveAllocString(mxml_node_t *node,			        	     mxml_save_cb_t cb);extern int		mxmlSaveFd(mxml_node_t *node, int fd,			           mxml_save_cb_t cb);extern int		mxmlSaveFile(mxml_node_t *node, FILE *fp,			             mxml_save_cb_t cb);extern int		mxmlSaveString(mxml_node_t *node, char *buffer,			               int bufsize, mxml_save_cb_t cb);extern mxml_node_t	*mxmlSAXLoadFd(mxml_node_t *top, int fd,			               mxml_type_t (*cb)(mxml_node_t *),			               mxml_sax_cb_t sax, void *sax_data);extern mxml_node_t	*mxmlSAXLoadFile(mxml_node_t *top, FILE *fp,			                 mxml_type_t (*cb)(mxml_node_t *),			                 mxml_sax_cb_t sax, void *sax_data);extern mxml_node_t	*mxmlSAXLoadString(mxml_node_t *top, const char *s,			                   mxml_type_t (*cb)(mxml_node_t *),			                   mxml_sax_cb_t sax, void *sax_data);extern int		mxmlSetCDATA(mxml_node_t *node, const char *data);extern int		mxmlSetCustom(mxml_node_t *node, void *data,			              mxml_custom_destroy_cb_t destroy);extern void		mxmlSetCustomHandlers(mxml_custom_load_cb_t load,			                      mxml_custom_save_cb_t save);extern int		mxmlSetElement(mxml_node_t *node, const char *name);extern void		mxmlSetErrorCallback(mxml_error_cb_t cb);extern int		mxmlSetInteger(mxml_node_t *node, int integer);extern int		mxmlSetOpaque(mxml_node_t *node, const char *opaque);extern int		mxmlSetReal(mxml_node_t *node, double real);extern int		mxmlSetText(mxml_node_t *node, int whitespace,			            const char *string);extern int		mxmlSetTextf(mxml_node_t *node, int whitespace,			             const char *format, ...)#    ifdef __GNUC____attribute__ ((__format__ (__printf__, 3, 4)))#    endif /* __GNUC__ */;extern void		mxmlSetWrapMargin(int column);extern mxml_node_t	*mxmlWalkNext(mxml_node_t *node, mxml_node_t *top,			              int descend);extern mxml_node_t	*mxmlWalkPrev(mxml_node_t *node, mxml_node_t *top,			              int descend);/* * Semi-private functions... */extern void		mxml_error(const char *format, ...);extern mxml_type_t	mxml_ignore_cb(mxml_node_t *node);extern mxml_type_t	mxml_integer_cb(mxml_node_t *node);extern mxml_type_t	mxml_opaque_cb(mxml_node_t *node);extern mxml_type_t	mxml_real_cb(mxml_node_t *node);/* * C++ support... */#  ifdef __cplusplus}#  endif /* __cplusplus */#endif /* !_mxml_h_ *//* * End of "$Id: mxml.h 307 2007-09-15 20:03:15Z mike $". */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本欧美久久久久免费播放网| 国产精品盗摄一区二区三区| 99re视频精品| 国产乱码字幕精品高清av| 美女一区二区三区| 美女一区二区三区| 国产一区二区三区免费| 国产成人精品三级麻豆| 国产成人精品免费在线| 99久久婷婷国产综合精品| 色综合视频一区二区三区高清| 国产91精品一区二区麻豆网站 | 欧美高清视频一二三区 | 亚洲永久精品国产| 亚洲一区在线观看免费 | 免费视频一区二区| 狠狠色丁香九九婷婷综合五月| 激情图片小说一区| 97超碰欧美中文字幕| 色婷婷久久久久swag精品| 欧美猛男男办公室激情| 精品日韩在线观看| 最新成人av在线| 丝袜诱惑亚洲看片| 国产中文字幕精品| 日本丶国产丶欧美色综合| 9191国产精品| 国产精品毛片久久久久久| 亚洲一本大道在线| 国产在线看一区| 色婷婷一区二区三区四区| 欧美成人性战久久| 亚洲视频图片小说| 韩国欧美国产1区| 在线视频一区二区免费| 久久亚洲影视婷婷| 性做久久久久久久免费看| 国产乱人伦偷精品视频不卡| 欧美午夜精品电影| 国产亚洲短视频| 亚洲一区二区三区视频在线播放 | 国产三级精品视频| 亚洲国产精品一区二区久久恐怖片| 精品一区二区影视| 欧美三级电影精品| 中文一区二区完整视频在线观看| 天堂va蜜桃一区二区三区漫画版| 成人免费视频网站在线观看| 日韩一二三四区| 午夜精品久久久久久不卡8050| 国产sm精品调教视频网站| 91精品一区二区三区在线观看| 中文字幕日本乱码精品影院| 狂野欧美性猛交blacked| 欧美三日本三级三级在线播放| 国产精品免费视频网站| 黄一区二区三区| 91精品婷婷国产综合久久性色| 亚洲欧美一区二区三区国产精品| 国产成a人亚洲精品| 日韩免费看的电影| 日产国产欧美视频一区精品| 欧美日韩另类国产亚洲欧美一级| 中文字幕中文字幕在线一区| 国产精品亚洲成人| 久久丝袜美腿综合| 精品亚洲国内自在自线福利| 欧美一卡在线观看| 蜜桃视频一区二区三区| 7777女厕盗摄久久久| 亚洲成人黄色影院| 欧美日韩一区二区三区高清| 亚洲中国最大av网站| 欧美唯美清纯偷拍| 亚洲美女屁股眼交| 91福利社在线观看| 亚洲一区影音先锋| 欧美日韩一区三区| 婷婷激情综合网| 91精品国产欧美一区二区| 日韩电影在线一区二区| 91精品国产免费| 精品制服美女丁香| 久久久亚洲精华液精华液精华液| 国产精品白丝jk白祙喷水网站 | 一区二区三区不卡视频在线观看| 97国产精品videossex| 一区二区三区免费网站| 欧美中文字幕一区二区三区| 日日骚欧美日韩| 欧美mv和日韩mv的网站| 国产成人av电影在线| 亚洲欧美日韩电影| 69堂成人精品免费视频| 韩国av一区二区| 国产精品黄色在线观看| 欧美最新大片在线看 | 成人黄色电影在线| 亚洲精品日韩综合观看成人91| 欧美日韩一区久久| 国产精品一级片在线观看| 亚洲欧洲国产专区| 欧美日韩午夜精品| 国产原创一区二区| 亚洲欧美二区三区| 在线综合视频播放| 成人免费高清视频在线观看| 亚洲一区二区欧美| 久久这里都是精品| 在线观看av一区二区| 韩国午夜理伦三级不卡影院| 香蕉久久一区二区不卡无毒影院| 欧美一区二区三区在线观看| 成人白浆超碰人人人人| 免费观看日韩电影| 亚洲美女免费视频| 久久久久久免费| 欧美日韩国产综合一区二区 | 91精品国产aⅴ一区二区| 成人在线综合网| 青青草97国产精品免费观看| 中文字幕一区免费在线观看| 日韩一区二区中文字幕| 91成人国产精品| 成人av免费观看| 国内久久精品视频| 日韩在线a电影| 一区二区三区免费在线观看| 亚洲国产精品成人综合色在线婷婷 | 色婷婷一区二区| 成人av网站大全| 国产精一区二区三区| 免费成人小视频| 亚洲福利一区二区三区| 亚洲卡通动漫在线| 欧美国产欧美综合| 91精品国产一区二区| 欧美色男人天堂| 欧美三级视频在线观看| 在线观看欧美精品| 91久久国产综合久久| 91麻豆精品视频| 99riav一区二区三区| 99久久综合精品| 99精品欧美一区二区三区综合在线| 国内精品免费**视频| 韩国在线一区二区| 国产高清成人在线| 丰满亚洲少妇av| 成人av在线电影| 色婷婷国产精品| 色噜噜狠狠色综合中国| 97久久超碰国产精品电影| kk眼镜猥琐国模调教系列一区二区| 国产成人免费网站| 不卡一区二区在线| 日本韩国欧美国产| 欧美日韩国产在线播放网站| 欧美日韩在线电影| 日韩精品最新网址| 国产欧美视频一区二区| 国产精品国模大尺度视频| 亚洲欧美日韩国产成人精品影院| 一区二区在线观看视频| 香蕉久久夜色精品国产使用方法| 午夜精品久久久久久久久| 日本中文字幕不卡| 国产一区二区三区国产| 北条麻妃一区二区三区| 色婷婷国产精品| 日韩一区二区免费电影| 精品国产成人在线影院 | 亚洲午夜久久久久久久久电影网| 亚洲最色的网站| 麻豆91在线播放免费| 国产成人免费视频一区| 在线观看国产日韩| xf在线a精品一区二区视频网站| 日本一区二区高清| 亚洲福利一区二区| 国产99久久久国产精品潘金网站| 91女人视频在线观看| 日韩视频在线永久播放| 亚洲国产经典视频| 香蕉加勒比综合久久| 国产91精品露脸国语对白| 欧美日韩国产小视频| 国产午夜精品久久久久久免费视| 一区二区三区免费在线观看| 狠狠色丁香久久婷婷综合丁香| 91最新地址在线播放| 欧美一区二区免费视频| 亚洲国产岛国毛片在线| 日韩精品欧美成人高清一区二区| 国产激情视频一区二区三区欧美| 日本精品一级二级| 国产午夜亚洲精品午夜鲁丝片| 亚洲一区二区三区自拍| 风间由美一区二区三区在线观看 | 日韩欧美成人一区|