summaryrefslogtreecommitdiff
path: root/ext/xml/php_xml.h
diff options
context:
space:
mode:
authorSascha Schumann <sas@php.net>1999-12-04 19:19:57 +0000
committerSascha Schumann <sas@php.net>1999-12-04 19:19:57 +0000
commit5b983c944f66b55192c901ce3fa38fcce6ca21e3 (patch)
tree89c7d57484170f274eba416495d88e02be541e6f /ext/xml/php_xml.h
parent83ce7c13d1a7f21b4bd7dd0b5ce4f4d6764d7e52 (diff)
downloadphp-git-5b983c944f66b55192c901ce3fa38fcce6ca21e3.tar.gz
Clean up php3.*\.h files. The files itself are renamed, and references in all
.*\.[ch] files were changed. There is a slight chance that my script missed a few changes, please correct them manually.
Diffstat (limited to 'ext/xml/php_xml.h')
-rw-r--r--ext/xml/php_xml.h161
1 files changed, 161 insertions, 0 deletions
diff --git a/ext/xml/php_xml.h b/ext/xml/php_xml.h
new file mode 100644
index 0000000000..23d89c0fd2
--- /dev/null
+++ b/ext/xml/php_xml.h
@@ -0,0 +1,161 @@
+/*
+ +----------------------------------------------------------------------+
+ | PHP HTML Embedded Scripting Language Version 3.0 |
+ +----------------------------------------------------------------------+
+ | Copyright (c) 1997,1998 PHP Development Team (See Credits file) |
+ +----------------------------------------------------------------------+
+ | This program is free software; you can redistribute it and/or modify |
+ | it under the terms of one of the following licenses: |
+ | |
+ | A) the GNU General Public License as published by the Free Software |
+ | Foundation; either version 2 of the License, or (at your option) |
+ | any later version. |
+ | |
+ | B) the PHP License as published by the PHP Development Team and |
+ | included in the distribution in the file: LICENSE |
+ | |
+ | 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. |
+ | |
+ | You should have received a copy of both licenses referred to here. |
+ | If you did not, or have any questions about PHP licensing, please |
+ | contact core@php.net. |
+ +----------------------------------------------------------------------+
+ | Authors: Stig Sæther Bakken <ssb@guardian.no> |
+ +----------------------------------------------------------------------+
+ */
+
+/* $Id$ */
+
+#ifndef _PHP_XML_H
+# define _PHP_XML_H
+
+# if HAVE_LIBEXPAT
+
+#include <xmltok.h>
+#include <xmlparse.h>
+
+#if WIN32||WINNT
+#define PHP_XML_API __declspec(dllexport)
+#else
+#define PHP_XML_API
+#endif
+
+
+#ifdef XML_UNICODE
+# error "UTF-16 Unicode support not implemented!"
+#endif
+
+typedef struct {
+ XML_Char *default_encoding;
+} php_xml_globals;
+
+typedef struct {
+ int index;
+ int case_folding;
+ XML_Parser parser;
+ XML_Char *target_encoding;
+ char *startElementHandler;
+ char *endElementHandler;
+ char *characterDataHandler;
+ char *processingInstructionHandler;
+ char *defaultHandler;
+ char *unparsedEntityDeclHandler;
+ char *notationDeclHandler;
+ char *externalEntityRefHandler;
+ char *unknownEncodingHandler;
+
+ pval *data;
+ pval *info;
+ int level;
+ int toffset;
+ int curtag;
+ pval **ctag;
+ char **ltags;
+ int lastwasopen;
+ int skipwhite;
+
+ XML_Char *baseURI;
+} xml_parser;
+
+
+typedef struct {
+ XML_Char *name;
+ char (*decoding_function)(unsigned short);
+ unsigned short (*encoding_function)(unsigned char);
+} xml_encoding;
+
+
+extern php3_module_entry xml_module_entry;
+# define xml_module_ptr &xml_module_entry
+
+enum php3_xml_option {
+ PHP3_XML_OPTION_CASE_FOLDING = 1,
+ PHP3_XML_OPTION_TARGET_ENCODING,
+ PHP3_XML_OPTION_SKIP_TAGSTART,
+ PHP3_XML_OPTION_SKIP_WHITE
+};
+
+# define RETURN_OUT_OF_MEMORY \
+ php_error(E_WARNING, "Out of memory");\
+ RETURN_FALSE
+
+/* for xml_parse_into_struct */
+
+#define XML_MAXLEVEL 255 /* XXX this should be dynamic */
+
+PHP_FUNCTION(xml_parser_create);
+PHP_FUNCTION(xml_set_element_handler);
+PHP_FUNCTION(xml_set_character_data_handler);
+PHP_FUNCTION(xml_set_processing_instruction_handler);
+PHP_FUNCTION(xml_set_default_handler);
+PHP_FUNCTION(xml_set_unparsed_entity_decl_handler);
+PHP_FUNCTION(xml_set_notation_decl_handler);
+PHP_FUNCTION(xml_set_external_entity_ref_handler);
+PHP_FUNCTION(xml_parse);
+PHP_FUNCTION(xml_get_error_code);
+PHP_FUNCTION(xml_error_string);
+PHP_FUNCTION(xml_get_current_line_number);
+PHP_FUNCTION(xml_get_current_column_number);
+PHP_FUNCTION(xml_get_current_byte_index);
+PHP_FUNCTION(xml_parser_free);
+PHP_FUNCTION(xml_parser_set_option);
+PHP_FUNCTION(xml_parser_get_option);
+PHP_FUNCTION(utf8_encode);
+PHP_FUNCTION(utf8_decode);
+PHP_FUNCTION(xml_parse_into_struct);
+
+#else /* !HAVE_LIBEXPAT */
+
+# define xml_module_ptr NULL
+
+#endif /* HAVE_LIBEXPAT */
+
+#define phpext_xml_ptr xml_module_ptr
+
+#ifdef ZTS
+#define XMLLS_D php_xml_globals *xml_globals
+#define XMLLS_DC , PSLS_D
+#define XMLLS_C xml_globals
+#define XMLLS_CC , XMLLS_C
+#define XML(v) (xml_globals->v)
+#define XMLLS_FETCH() php_xml_globals *xml_globals = ts_resource(xml_globals_id)
+#else
+#define XMLLS_D
+#define XMLLS_DC
+#define XMLLS_C
+#define XMLLS_CC
+#define XML(v) (xml_globals.v)
+#define XMLLS_FETCH()
+#endif
+
+# endif /* _PHP_XML_H */
+
+/*
+ * Local variables:
+ * tab-width: 4
+ * c-basic-offset: 4
+ * End:
+ */