summaryrefslogtreecommitdiff
path: root/ext/tokenizer/php_tokenizer.h
diff options
context:
space:
mode:
authorStig Bakken <ssb@php.net>2002-02-08 18:49:40 +0000
committerStig Bakken <ssb@php.net>2002-02-08 18:49:40 +0000
commitcf5ba0feec63f4fc60c0703100163cf567e611c8 (patch)
tree36b6edae54dc54a361eccbb022639981c9621afc /ext/tokenizer/php_tokenizer.h
parente8285d6bba352af5b0a1a2bb33dbb6cbf284fb8e (diff)
downloadphp-git-cf5ba0feec63f4fc60c0703100163cf567e611c8.tar.gz
@Added Andrei's tokenizer extension (Stig)
Diffstat (limited to 'ext/tokenizer/php_tokenizer.h')
-rw-r--r--ext/tokenizer/php_tokenizer.h81
1 files changed, 81 insertions, 0 deletions
diff --git a/ext/tokenizer/php_tokenizer.h b/ext/tokenizer/php_tokenizer.h
new file mode 100644
index 0000000000..589b8c4179
--- /dev/null
+++ b/ext/tokenizer/php_tokenizer.h
@@ -0,0 +1,81 @@
+/*
+ +----------------------------------------------------------------------+
+ | PHP Version 4 |
+ +----------------------------------------------------------------------+
+ | Copyright (c) 1997, 1998, 1999, 2000, 2001 The PHP Group |
+ +----------------------------------------------------------------------+
+ | This source file is subject to version 2.02 of the PHP license, |
+ | that is bundled with this package in the file LICENSE, and is |
+ | available at through the world-wide-web at |
+ | http://www.php.net/license/2_02.txt. |
+ | If you did not receive a copy of the PHP license and are unable to |
+ | obtain it through the world-wide-web, please send a note to |
+ | license@php.net so we can mail you a copy immediately. |
+ +----------------------------------------------------------------------+
+ | Authors: |
+ | |
+ +----------------------------------------------------------------------+
+ */
+
+#ifndef PHP_TOKENIZER_H
+#define PHP_TOKENIZER_H
+
+extern zend_module_entry tokenizer_module_entry;
+#define phpext_tokenizer_ptr &tokenizer_module_entry
+
+#ifdef PHP_WIN32
+#define PHP_TOKENIZER_API __declspec(dllexport)
+#else
+#define PHP_TOKENIZER_API
+#endif
+
+#ifdef ZTS
+#include "TSRM.h"
+#endif
+
+PHP_MINIT_FUNCTION(tokenizer);
+PHP_MSHUTDOWN_FUNCTION(tokenizer);
+PHP_RINIT_FUNCTION(tokenizer);
+PHP_RSHUTDOWN_FUNCTION(tokenizer);
+PHP_MINFO_FUNCTION(tokenizer);
+
+PHP_FUNCTION(confirm_tokenizer_compiled); /* For testing, remove later. */
+PHP_FUNCTION(token_get_all);
+PHP_FUNCTION(token_name);
+
+/*
+ Declare any global variables you may need between the BEGIN
+ and END macros here:
+
+ZEND_BEGIN_MODULE_GLOBALS(tokenizer)
+ int global_value;
+ char *global_string;
+ZEND_END_MODULE_GLOBALS(tokenizer)
+*/
+
+/* In every utility function you add that needs to use variables
+ in php_tokenizer_globals, call TSRM_FETCH(); after declaring other
+ variables used by that function, or better yet, pass in TSRMG_CC
+ after the last function argument and declare your utility function
+ with TSRMG_DC after the last declared argument. Always refer to
+ the globals in your function as TOKENIZER_G(variable). You are
+ encouraged to rename these macros something shorter, see
+ examples in any other php module directory.
+*/
+
+#ifdef ZTS
+#define TOKENIZER_G(v) TSRMG(tokenizer_globals_id, zend_tokenizer_globals *, v)
+#else
+#define TOKENIZER_G(v) (tokenizer_globals.v)
+#endif
+
+#endif /* PHP_TOKENIZER_H */
+
+
+/*
+ * Local variables:
+ * tab-width: 4
+ * c-basic-offset: 4
+ * indent-tabs-mode: t
+ * End:
+ */