Previous: Pure Decl, Up: Declarations   [Contents][Index]


3.6.8 BisonÀë¸À¤ÎÍ×Ìó

BisonÀë¸À¤ÎÍ×Ìó¤ò¼¨¤·¤Þ¤¹¡£

%union

°ÕÌ£Ãͤ¬»ý¤Á¤¦¤ë¥Ç¡¼¥¿·¿¤Î½¸¹ç¤òÀë¸À¤·¤Þ¤¹ ¡Êsee The Collection of Value Types¡Ë¡£

%token

Í¥Àè½ç°Ì¤È·ë¹çÀ­¤ò»ØÄꤻ¤º¤Ë¡¢½ªÃ¼µ­¹æ¡Ê¥È¡¼¥¯¥ó·¿Ì¾¡Ë¤òÀë¸À¤·¤Þ¤¹ ¡Êsee Token Type Names¡Ë¡£

%right

±¦·ë¹çŪ¤Ê½ªÃ¼µ­¹æ¡Ê¥È¡¼¥¯¥ó·¿Ì¾¡Ë¤òÀë¸À¤·¤Þ¤¹ ¡Êsee Operator Precedence¡Ë¡£

%left

º¸·ë¹çŪ¤Ê½ªÃ¼µ­¹æ¡Ê¥È¡¼¥¯¥ó·¿Ì¾¡Ë¤òÀë¸À¤·¤Þ¤¹ ¡Êsee Operator Precedence¡Ë¡£

%nonassoc

·ë¹çÀ­¤¬¤Ê¤¤¡¢¤Ä¤Þ¤ê¡¢·ë¹ç¤·¤Æ»È¤ª¤¦¤È¤¹¤ë¤È¹½Ê¸¥¨¥é¡¼¤Ë¤Ê¤ë¡¢ ½ªÃ¼µ­¹æ¡Ê¥È¡¼¥¯¥ó·¿Ì¾¡Ë¤òÀë¸À¤·¤Þ¤¹ ¡Êsee Operator Precedence¡Ë¡£

%type

Èó½ªÃ¼µ­¹æ¤ËÂФ¹¤ë°ÕÌ£Ãͤη¿¤òÀë¸À¤·¤Þ¤¹ ¡Êsee Nonterminal Symbols¡Ë¡£

%start

ʸˡ¤Î³«»Ïµ­¹æ¤òÀë¸À¤·¤Þ¤¹ ¡Êsee The Start-Symbol¡Ë¡£

%expect

ͽÁÛ¤µ¤ì¤ë¥·¥Õ¥È´Ô¸µ¾×ÆÍ¤Î¿ô¤òÀë¸À¤·¤Þ¤¹ ¡Êsee Suppressing Conflict Warnings¡Ë¡£

%pure_parser

½ã¿è¤Ê¡ÊºÆÆþ²Äǽ¤Ê¡Ë¹½Ê¸²òÀÏ´ï¤òÀ¸À®¤·¤Þ¤¹ ¡Êsee A Pure (Reentrant) Parser¡Ë¡£

%no_lines

¹½Ê¸²òÀÏ´ï¥Õ¥¡¥¤¥ë¤Ë¡¢#line¥×¥ê¥×¥í¥»¥Ã¥µ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤òÀ¸À®¤·¤Þ¤»¤ó¡£ Bison¤Ï¡¢Ä̾C¥³¥ó¥Ñ¥¤¥é¤È¥Ç¥Ð¥Ã¥¬¤¬¥¨¥é¡¼¤È¤¢¤Ê¤¿¤Î¥½¡¼¥¹¥Õ¥¡¥¤¥ë ¡Êʸˡ¥Õ¥¡¥¤¥ë¡Ë¤ò´ØÏ¢¤Å¤±¤é¤ì¤ë¤è¤¦¤Ë¡¢¹½Ê¸²òÀÏ´ï¥Õ¥¡¥¤¥ë¤Ë #line¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤ò½ñ¤­¹þ¤ß¤Þ¤¹¡£ %no_linesÀë¸À¤Ï¡¢¥¨¥é¡¼¤ò¹½Ê¸²òÀÏ´ï¥Õ¥¡¥¤¥ë¤Î¹Ô¿ô¤È´ØÏ¢¤Å¤±¡¢ ¹½Ê¸²òÀÏ´ï¥Õ¥¡¥¤¥ë¤ò¤½¤ì¼«¿È¤ÇÆÈΩ¤·¤¿¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤È ¤ß¤Ê¤¹¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£

%raw

Ä̾½ÐÎÏ¥Õ¥¡¥¤¥ëname.h¤Ï¡¢ Yacc¸ß´¹¥È¡¼¥¯¥óÈÖ¹æ¤òÄêµÁ¤·¤Þ¤¹¡£ ¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤ë¤È¡¢Âå¤ï¤ê¤Ë¡¢BisonÆâÉô¤ÎÈֹ椬»È¤ï¤ì¤Þ¤¹ ¡ÊYacc¸ß´¹ÈÖ¹æ¤Ï¡¢1ʸ»ú¥ê¥Æ¥é¥ë¥È¡¼¥¯¥ó¤ò½ü¤¤¤Æ¡¢257¤«¤é»Ï¤Þ¤ê¤Þ¤¹¤¬¡¢ BisonÆâÉô¤Î¥È¡¼¥¯¥óÈÖ¹æ¤Ï¾ï¤Ë3¤«¤é»Ï¤Þ¤ëÏ¢È֤ˤʤê¤Þ¤¹¡Ë¡£

%token_table

¹½Ê¸²òÀÏ´ï¥Õ¥¡¥¤¥ë¤ÎÃæ¤Ë¡¢¥È¡¼¥¯¥ó̾¤Îɽ¤òÀ¸À®¤·¤Þ¤¹¡£ ¤½¤Îɽ¤Î̾Á°¤Ïyytname¤Ç¡¢yytname[i]¤¬ BisonÆâÉô¥È¡¼¥¯¥óÈÖ¹æi¤Î¥È¡¼¥¯¥ó¤Î̾Á°¤Ç¤¹¡£ ºÇ½é¤Î3¸Ä¤ÎÍ×ÁǤϾï¤Ë¡¢"$"¡¢"error"¡¢"$illegal"¤Ç¡¢ ¤³¤Î¸å¤Ëʸˡ¥Õ¥¡¥¤¥ë¤ÇÄêµÁ¤µ¤ì¤¿µ­¹æ¤¬Â³¤­¤Þ¤¹¡£

ɽ¤ÎÃæ¤Ç¡¢1ʸ»ú¥ê¥Æ¥é¥ë¥È¡¼¥¯¥ó¤Ë¤Ï¥·¥ó¥°¥ë¥¯¥©¡¼¥Èµ­¹æ¤¬¡¢ ʸ»úÎó¥ê¥Æ¥é¥ë¥È¡¼¥¯¥ó¤Ë¤Ï¥À¥Ö¥ë¥¯¥©¡¼¥Èµ­¹æ¤¬´Þ¤Þ¤ì¤Þ¤¹¡£ ¤¿¤È¤¨¤Ð¡¢"'+'"¤Ï1ʸ»ú¥ê¥Æ¥é¥ë¥È¡¼¥¯¥ó¤Ç¡¢ "\"<=\""¤Ïʸ»úÎó¥ê¥Æ¥é¥ë¥È¡¼¥¯¥ó¤Ç¤¹¡£ ʸ»úÎó¥ê¥Æ¥é¥ë¥È¡¼¥¯¥ó¤Î¤¹¤Ù¤Æ¤Îʸ»ú¤Ï¤½¤Î¤Þ¤Þɽ¤Ë¸½¤ì¡¢ ¥À¥Ö¥ë¥¯¥©¡¼¥Èµ­¹æ¤â¥¨¥¹¥±¡¼¥×¤µ¤ì¤Þ¤»¤ó¡£ ¤¿¤È¤¨¤Ð¡¢¥È¡¼¥¯¥ó¤¬3ʸ»ú‘*"*’¤«¤é¤Ê¤ì¤Ð¡¢ yytnameÃæ¤Îʸ»úÎó¤Ï‘"*"*"’¤È¤Ê¤ê¤Þ¤¹ ¡ÊC¤Ç¤Ï"\"*\"*\""¤È½ñ¤­¤Þ¤¹¡Ë¡£

%token_table¤ò»ØÄꤹ¤ë¤È¡¢Bison¤Ï¡¢¥Þ¥¯¥í YYNTOKENS¡¢YYNNTS¡¢YYNRULES¡¢YYNSTATES¤Î ÄêµÁ¤âÀ¸À®¤·¤Þ¤¹¡£

YYNTOKENS

ºÇÂç¤Î¥È¡¼¥¯¥óÈÖ¹æ¡Ü1¡£

YYNNTS

Èó½ªÃ¼µ­¹æ¤Î¿ô¡£

YYNRULES

ʸˡµ¬Â§¤Î¿ô¡£

YYNSTATES

¹½Ê¸²òÀÏ´ï¤Î¾õÂ֤οô¡Êsee Parser States¡Ë¡£