PHP 構文解析形式に関する問題 - Bison アクションに関する問題

WBOY
リリース: 2016-06-13 12:47:23
オリジナル
987 人が閲覧しました

php 语法分析格式的问题--关于bison action的问题
查看php的语法文件文件(zend_language_parser.y),发现有如下的写法:

<br />
|	T_FOR<br />
		'('<br />
			for_expr<br />
		';' { zend_do_free(&$3 TSRMLS_CC); $4.u.op.opline_num = get_next_op_number(CG(active_op_array)); }<br />
			for_expr<br />
		';' { zend_do_extended_info(TSRMLS_C); zend_do_for_cond(&$6, &$7 TSRMLS_CC); }<br />
			for_expr<br />
		')' { zend_do_free(&$9 TSRMLS_CC); zend_do_for_before_statement(&$4, &$7 TSRMLS_CC); }<br />
<br />
ログイン後にコピー


为什么可以在分号后面单独加 action呢? 如:
<br />
';' { zend_do_free(&$3 TSRMLS_CC); $4.u.op.opline_num = get_next_op_number(CG(active_op_array)); }<br />
ログイン後にコピー


bison的 action 不都是放在一个production后面么,为什么可以在production中间加 action?我自己写的一个语法分析文件采用这种方式就会报错,why...?

parser?bison?action
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート