PHP 8.2.30
Preview: zend_language_scanner.h Size: 2.99 KB
//opt/cloudlinux/alt-php80/root/usr/include/php/Zend/zend_language_scanner.h

/*
   +----------------------------------------------------------------------+
   | Zend Engine                                                          |
   +----------------------------------------------------------------------+
   | Copyright (c) Zend Technologies Ltd. (http://www.zend.com)           |
   +----------------------------------------------------------------------+
   | This source file is subject to version 2.00 of the Zend license,     |
   | that is bundled with this package in the file LICENSE, and is        |
   | available through the world-wide-web at the following url:           |
   | http://www.zend.com/license/2_00.txt.                                |
   | If you did not receive a copy of the Zend license and are unable to  |
   | obtain it through the world-wide-web, please send a note to          |
   | license@zend.com so we can mail you a copy immediately.              |
   +----------------------------------------------------------------------+
   | Authors: Andi Gutmans <andi@php.net>                                 |
   |          Zeev Suraski <zeev@php.net>                                 |
   +----------------------------------------------------------------------+
*/

#ifndef ZEND_SCANNER_H
#define ZEND_SCANNER_H

typedef struct _zend_lex_state {
	unsigned int yy_leng;
	unsigned char *yy_start;
	unsigned char *yy_text;
	unsigned char *yy_cursor;
	unsigned char *yy_marker;
	unsigned char *yy_limit;
	int yy_state;
	zend_stack state_stack;
	zend_ptr_stack heredoc_label_stack;
	zend_stack nest_location_stack; /* for syntax error reporting */

	zend_file_handle *in;
	uint32_t lineno;
	zend_string *filename;

	/* original (unfiltered) script */
	unsigned char *script_org;
	size_t script_org_size;

	/* filtered script */
	unsigned char *script_filtered;
	size_t script_filtered_size;

	/* input/output filters */
	zend_encoding_filter input_filter;
	zend_encoding_filter output_filter;
	const zend_encoding *script_encoding;

	/* hooks */
	void (*on_event)(
		zend_php_scanner_event event, int token, int line,
		const char *text, size_t length, void *context);
	void *on_event_context;

	zend_ast *ast;
	zend_arena *ast_arena;
} zend_lex_state;

typedef struct _zend_heredoc_label {
	char *label;
	int length;
	int indentation;
	zend_bool indentation_uses_spaces;
} zend_heredoc_label;

/* Track locations of unclosed {, [, (, etc. for better syntax error reporting */
typedef struct _zend_nest_location {
	char text;
	int  lineno;
} zend_nest_location;

BEGIN_EXTERN_C()
ZEND_API void zend_save_lexical_state(zend_lex_state *lex_state);
ZEND_API void zend_restore_lexical_state(zend_lex_state *lex_state);
ZEND_API void zend_prepare_string_for_scanning(zval *str, const char *filename);
ZEND_API void zend_multibyte_yyinput_again(zend_encoding_filter old_input_filter, const zend_encoding *old_encoding);
ZEND_API zend_result zend_multibyte_set_filter(const zend_encoding *onetime_encoding);
ZEND_API zend_result zend_lex_tstring(zval *zv, zend_lexer_ident_ref ident_ref);

END_EXTERN_C()

#endif

Directory Contents

Dirs: 0 × Files: 87

Name Size Perms Modified Actions
13.53 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
18.84 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
2.57 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
89.96 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
5.93 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
12.32 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
5.11 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
503 B lrw-r--r-- 2026-03-08 19:30:21
Edit Download
7.75 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
1.59 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
1.48 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
12.71 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
2.16 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
1.71 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
43.81 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
32 B lrw-r--r-- 2026-03-08 19:30:22
Edit Download
6.33 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
7.32 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
2.00 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
2.34 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
4.02 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
7.91 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
18.25 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
6.05 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
15.08 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
3.85 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
1.39 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
7.26 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
1.97 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
7.88 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
2.74 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
37.71 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
2.24 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
1.92 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
9.88 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
2.67 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
1.84 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
225 B lrw-r--r-- 2026-03-08 19:30:21
Edit Download
4.33 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
5.16 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
1.50 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
3.50 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
5.82 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
2.99 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
310 B lrw-r--r-- 2026-03-08 19:30:21
Edit Download
3.39 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
3.71 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
4.15 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
3.39 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
4.72 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
4.78 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
9.62 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
1.77 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
4.59 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
13.53 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
3.34 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
30.45 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
20.36 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
4.21 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
2.93 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
3.99 KB lrw-r--r-- 2026-03-08 19:30:21
Edit Download
5.25 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
4.14 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
1.21 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
1.10 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
1.50 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
2.31 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
3.47 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
18.36 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
1.81 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
3.33 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
1.37 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
5.34 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
43.85 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
3.67 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
2.99 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
12.32 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
1.91 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
273.36 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
1.98 MB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
89.27 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
12.23 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
3.14 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
1.71 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
2.60 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
1.67 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download
2.49 KB lrw-r--r-- 2026-03-08 19:30:22
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).