Refactor XML (incompleted)

This commit is contained in:
Xinchen Hui 2014-05-03 15:58:09 +08:00
parent d820ea9f5e
commit 5984f95d8f
2 changed files with 334 additions and 402 deletions

View file

@ -44,22 +44,22 @@ ZEND_BEGIN_MODULE_GLOBALS(xml)
ZEND_END_MODULE_GLOBALS(xml) ZEND_END_MODULE_GLOBALS(xml)
typedef struct { typedef struct {
int index;
int case_folding; int case_folding;
XML_Parser parser; XML_Parser parser;
XML_Char *target_encoding; XML_Char *target_encoding;
zval *startElementHandler; zval index;
zval *endElementHandler; zval startElementHandler;
zval *characterDataHandler; zval endElementHandler;
zval *processingInstructionHandler; zval characterDataHandler;
zval *defaultHandler; zval processingInstructionHandler;
zval *unparsedEntityDeclHandler; zval defaultHandler;
zval *notationDeclHandler; zval unparsedEntityDeclHandler;
zval *externalEntityRefHandler; zval notationDeclHandler;
zval *unknownEncodingHandler; zval externalEntityRefHandler;
zval *startNamespaceDeclHandler; zval unknownEncodingHandler;
zval *endNamespaceDeclHandler; zval startNamespaceDeclHandler;
zval endNamespaceDeclHandler;
zend_function *startElementPtr; zend_function *startElementPtr;
zend_function *endElementPtr; zend_function *endElementPtr;
@ -73,14 +73,14 @@ typedef struct {
zend_function *startNamespaceDeclPtr; zend_function *startNamespaceDeclPtr;
zend_function *endNamespaceDeclPtr; zend_function *endNamespaceDeclPtr;
zval *object; zval object;
zval *data; zval data;
zval *info; zval info;
int level; int level;
int toffset; int toffset;
int curtag; int curtag;
zval **ctag; zval *ctag;
char **ltags; char **ltags;
int lastwasopen; int lastwasopen;
int skipwhite; int skipwhite;
@ -133,9 +133,9 @@ PHP_FUNCTION(utf8_encode);
PHP_FUNCTION(utf8_decode); PHP_FUNCTION(utf8_decode);
PHP_FUNCTION(xml_parse_into_struct); PHP_FUNCTION(xml_parse_into_struct);
PHPAPI char *_xml_zval_strdup(zval *val); PHPAPI char *_xml_zval_strdup(zval *);
PHPAPI char *xml_utf8_decode(const XML_Char *, int, int *, const XML_Char *); PHPAPI zend_string *xml_utf8_decode(const XML_Char *, int, const XML_Char *);
PHPAPI char *xml_utf8_encode(const char *s, int len, int *newlen, const XML_Char *encoding); PHPAPI zend_string *xml_utf8_encode(const char *, int, const XML_Char *);
#endif /* HAVE_LIBEXPAT */ #endif /* HAVE_LIBEXPAT */

File diff suppressed because it is too large Load diff