Next: Summary or Flex Variables and Functions (Flex 2.5), Previous: Switches Summary (Flex 2.5), Up: Summary [Contents][Index]
Flex¤ËÂФ¹¤ë¼çÍפÊC¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤Ï¡¢ °Ê²¼¤Î¥ë¡¼¥Á¥ó¤ª¤è¤ÓÊÑ¿ô¤òÄ̤¸¤Æ¼Â¸½¤µ¤ì¤Þ¤¹¡£ ¸Ä¡¹¤Î¥ë¡¼¥Á¥ó¡¢ÊÑ¿ô¤Ë´Ø¤¹¤ë´°Á´¤ÊÀâÌÀ¤Ë¤Ä¤¤¤Æ¤Ï¡¢ See Interfacing to Flex¡£
yylex()
¼çÍפʥ¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤Ç¤¹¡£ ¤³¤ì¤¬¼ÂºÝ¤Î¥¹¥¥ã¥ó½èÍý¤ò¹Ô¤¦´Ø¿ô¤Ç¤¹¡£
yyin
yylex()
¤¬Ê¸»ú¤òÆÉ¤ß¹þ¤à¸µ¤È¤Ê¤ë¥Õ¥¡¥¤¥ë¤Ç¤¹¡£
¤³¤Î¥Ç¥Õ¥©¥ë¥È¤Ïstdin
¤Ç¤¹¡£
yyout
¥¹¥¥ã¥Ê¤Î½ÐÎÏ¥Õ¥¡¥¤¥ë¤Ç¤¹¡£
¥Ç¥Õ¥©¥ë¥È¤Ïstdout
¤Ç¤¹¡£
yytext
ºÇ¸å¤Ë¥Þ¥Ã¥Á¤·¤¿Ê¸»úÎó¤òÊÝ»ý¤¹¤ëÂç°èÊÑ¿ô¤Ç¤¹¡£ ¤Ä¤Þ¤ê¡¢ ºÇ¸å¤Ëǧ¼±¤µ¤ì¤¿¥È¡¼¥¯¥ó¤òÊÝ»ý¤·¤Æ¤¤¤Þ¤¹¡£
yyleng
ºÇ¸å¤Ëǧ¼±¤µ¤ì¤¿¥È¡¼¥¯¥ó¤ÎŤµ¤òÊÝ»ý¤¹¤ëÂç°èÊÑ¿ô¤Ç¤¹¡£
yywrap()
¤³¤Î´Ø¿ô¤Ï¡¢
yyin
¤Î½ªÃ¼¤Ë㤷¤¿»þ¤Ë¸Æ¤Ó½Ð¤µ¤ì¤Þ¤¹¡£
¤³¤ì¤¬TRUE
¡Ê¥¼¥í°Ê³°¡Ë¤òÊÖ¤¹¤È¥¹¥¥ã¥Ê¤Ï¼Â¹Ô¤ò½ªÎ»¤·¤Þ¤¹¤¬¡¢
FALSE
¡Ê¥¼¥í¡Ë¤òÊÖ¤¹¤È¡¢
yyin
¤¬¼¡¤ÎÆþÎÏ¥Õ¥¡¥¤¥ë¤ò»Ø¤¹¤è¤¦ÀßÄꤵ¤ì¤¿¤â¤Î¤ÈÁÛÄꤷ¡¢
¥¹¥¥ã¥ó½èÍý¤Ï·Ñ³¤µ¤ì¤Þ¤¹¡£
yymore()
¼¡¤Ëǧ¼±¤µ¤ì¤ë¥È¡¼¥¯¥ó¤Çyytext
¤ÎÆâÍÆ¤ò¾å½ñ¤¤¹¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢
¤½¤Î¥È¡¼¥¯¥ó¤òyytext
¤ÎËöÈø¤ËÉղ乤ë¤è¤¦Flex¤ËÄÌÃΤ¹¤ë´Ø¿ô¤Ç¤¹¡£
yyless(n)
yymore()
¤È¤Û¤ÜÈ¿ÂФΤ³¤È¤ò¹Ô¤¤¤Þ¤¹¡£
¤³¤Î´Ø¿ô¤Ï¡¢
ºÇ½é¤Înʸ»ú¤ò½ü¤¯¤¹¤Ù¤Æ¤Îʸ»ú¤òÌᤷ¤Þ¤¹¡£
Ìᤵ¤ì¤¿Ê¸»ú¤ÎʤӤϡ¢
¼¡¤Î¥È¡¼¥¯¥ó¤ò¥Þ¥Ã¥Á¤¹¤ë¤Î¤Ë»È¤ï¤ì¤Þ¤¹¡£
yyleng
¤Èyytext
¤ÎÆâÍÆ¤Ë¤Ï¡¢
¤³¤ÎÊѹ¹¤¬È¿±Ç¤µ¤ì¤Þ¤¹¡£
input()
ÆþÎϤ«¤é¼¡¤Î£±Ê¸»ú¤òÊÖ¤·¤Þ¤¹¡£ ¤³¤ì¤Ï¡¢ ɸ½à¤ÎFlexµ½Ò¸À¸ì¤äÆÃ¤ËLexµ½Ò¸À¸ì¤ò»È¤Ã¤¿¤Î¤Ç¤Ï¤¦¤Þ¤¯½èÍý¤Ç¤¤Ê¤¤¤è¤¦¤Ê¥¹¥¥ã¥Ê¤Ë¤ª¤¤¤Æ¡¢ ¤è¤¯»È¤ï¤ì¤Þ¤¹¡£
unput(c)
¤³¤Î´Ø¿ô¤Ï¡¢ ʸ»úc¤òÆþÎÏ¥¹¥È¥ê¡¼¥à¤ËÌᤷ¤Þ¤¹¡£ ¤³¤Î¸å¡¢ ¤³¤Îʸ»ú¤Ï¼¡¤Ë¥¹¥¥ã¥ó¤µ¤ì¤ëʸ»ú¤Ë¤Ê¤ê¤Þ¤¹¡£
yyterminate()
¤³¤Î´Ø¿ô¤Ï¡¢
¥¢¥¯¥·¥ç¥ó¤ÎÃæ¤Ç»È¤ï¤ì¤ë¤È¡¢
¥¹¥¥ã¥Ê¡Êyylex()
¡Ë¤Î¼Â¹Ô¤ò½ªÎ»¤µ¤»¤Þ¤¹¡£
½ªÎ»¤·¤¿¥¹¥¥ã¥Ê¤Ï0¤òÊÖ¤·¤Þ¤¹¡£
¤³¤Î¸åyyrestart()
¤¬¸Æ¤Ó½Ð¤µ¤ì¤Ê¤¤´Ö¤Ï¡¢
yylex()
¤ò¸Æ¤Ó½Ð¤·¤Æ¤â¤¹¤°¤ËÉüµ¢¤·¤Æ¤·¤Þ¤¤¤Þ¤¹¡£
yyrestart(file)
¤³¤Î´Ø¿ô¤Ï¡¢
¥¹¥¥ã¥Ê¤Î¼Â¹Ô¤òºÆ³«¤¹¤ë¤è¤¦Flex¤ËÄÌÃΤ·¤Þ¤¹¡£
¤³¤ì¤Ï¡¢
¥¹¥¥ã¥ó¤¹¤Ù¤¥Õ¥¡¥¤¥ë¡ÊÄ̾ï¤Ïyyin
¡Ë¤òɽ¤¹°ú¿ô¤ò£±¤Ä¼è¤ê¤Þ¤¹¡£
EOF¤ò½èÍý¤¹¤ë¤Î¤Ë»È¤¦¤³¤È¤¬¤Ç¤¤Þ¤¹¤·¡¢
¤Þ¤¿¡¢
Flex¤Ë³ä¤ê¹þ¤ß¤ò¤«¤±¡¢
¤½¤Î¸å¤ÇºÆ³«»Ï¤¹¤ë¤³¤È¤ò²Äǽ¤Ë¤¹¤ë¤¿¤á¤Ë»È¤¦¤³¤È¤â¤Ç¤¤Þ¤¹¡£
¡ÊFlex¤¬ºÆÆþ²Äǽ¤Ç¤Ï¤Ê¤¤¤Î¤Ç¡¢
¤³¤Î¤è¤¦¤Ê¤³¤È¤¬É¬Íפˤʤê¤Þ¤¹¡£¡Ë
ECHO
yytext
¤ÎÆâÍÆ¤òyyout
¤Ë¥³¥Ô¡¼¤¹¤ë¥Þ¥¯¥í¤Ç¤¹¡£
REJECT
¥«¥ì¥ó¥È¤Ê¥È¡¼¥¯¥ó¤òǧ¼±¤·¤Ê¤¤¤Ç¡¢ ¼¡¤ËºÇ¤â¤è¤¯¥Þ¥Ã¥Á¤¹¤ë¤â¤Î¤òÁªÂò¤¹¤ë¤è¤¦¡¢ ¥¹¥¥ã¥Ê¤ËÄÌÃΤ·¤Þ¤¹¡£ ¥¹¥¥ã¥Ê¤Ï¡¢ ¥Þ¥Ã¥Á¤¹¤ë¤â¤Î¤Î¤¦¤ÁºÇ¤âŤ¤¤â¤Î¤òõ¤·¤Þ¤¹¡£ ¥Þ¥Ã¥Á¤¹¤ë¤â¤Î¤¬£²¤Ä¤¢¤Ã¤Æ¤½¤ÎŤµ¤¬Æ±¤¸¾ì¹ç¤Ë¤Ï¡¢ ¥¹¥¥ã¥Êµ½Ò¤ÎÃæ¤ÇºÇ½é¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤ë¤â¤Î¤òÁªÂò¤·¤Þ¤¹¡£
BEGIN(state)
¥¹¥¥ã¥Ê¤ò¤¢¤ëÆÃÄê¤Î¥¹¥¿¡¼¥È¾õÂÖ¤ËÃÖ¤¯¤¿¤á¤Ë»È¤ï¤ì¤Þ¤¹¡£
BEGIN
¤Î¸å¤í¤Î̾Á°¤Ï¡¢
¥¹¥¿¡¼¥È¾õÂÖ¤Î̾Á°¤Ç¤¹¡£
¤³¤ì¤Ï¡¢
¥¹¥¥ã¥Êµ½Ò¤ÎÀèÆ¬¤ÎÄêµÁ¥»¥¯¥·¥ç¥ó¤Ë¤ª¤¤¤ÆÀë¸À¤µ¤ì¤Æ¤¤¤ë¤â¤Î¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£
YY_USER_INIT
¥¹¥¥ã¥Ê¤¬½é´ü²½¤µ¤ì¤ëÁ°¤Ë¼Â¹Ô¤µ¤ì¤ë¤Ù¤¥¢¥¯¥·¥ç¥ó¤òÄêµÁ¤·¤Þ¤¹¡£ ¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï¡¢ Flex and C¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
YY_USER_ACTION
¥Þ¥Ã¥Á¤¬È¯À¸¤·¤¿¸å¤Ç¡¢
¥ë¡¼¥ë¡¦¥»¥¯¥·¥ç¥ó¤ËÄêµÁ¤µ¤ì¤¿¥¢¥¯¥·¥ç¥ó¤¬¼Â¹Ô¤µ¤ì¤ëÁ°¤Ë¡¢
¼Â¹Ô¤µ¤ì¤ë¤Ù¤¥¢¥¯¥·¥ç¥ó¤òÄêµÁ¤·¤Þ¤¹¡£
Î㤨¤Ð¡¢
yytext
¤ÎÆâÍÆ¤ò¾®Ê¸»ú¤«¤éÂçʸ»ú¤ØÊÑ´¹¤¹¤ëÅù¤ò¹Ô¤¦¤Î¤Ë»È¤¦¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
¥Ç¥Õ¥©¥ë¥È¤Î¥ë¡¼¥ë¤Ç¤Ï²¿¤â¼Â¹Ô¤µ¤ì¤Þ¤»¤ó¡£
¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï¡¢
Flex and C¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
YY_BREAK
¼ÂºÝ¤Ë¤Ï¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹µ¡Ç½¤Ç¤Ï¤Ê¤¯¡¢ ¤à¤·¤íÀ¸À®¤µ¤ì¤ë¥³¡¼¥É¤òÊѹ¹¤¹¤ë¤¿¤á¤Ë»È¤¦¤³¤È¤¬¤Ç¤¤ë¤â¤Î¤Ç¤¹¡£
¥¹¥¥ã¥Ê¤ÎÃæ¤Ç¤Ï¡¢
¤¹¤Ù¤Æ¤Î¥¢¥¯¥·¥ç¥ó¤Ï£±¤Ä¤ÎÂ礤Êswitch
ʸ¤Î¹½À®Í×ÁǤǤ¢¤ê¡¢
¸Ä¡¹¤Î¥¢¥¯¥·¥ç¥ó¤Î¶èÀÚ¤ê¤Ï¡¢
¥Ç¥Õ¥©¥ë¥È¤Ç‘break;’ʸ¤ËÊÑ´¹¤µ¤ì¤ëYY_BREAK
¤ÇÍ¿¤¨¤é¤ì¤Þ¤¹¡£
¤â¤·¡¢
¤Û¤È¤ó¤É¤Î¥ë¡¼¥ë¤Î¥¢¥¯¥·¥ç¥óÉô¤¬‘return;’ʸ¤ò´Þ¤ó¤Ç¤¤¤ë¤È¡¢
¥³¥ó¥Ñ¥¤¥é¤Ï‘statement not reached’¤È¤¤¤¦¥¨¥é¡¼¤ò¤¿¤¯¤µ¤óɽ¼¨¤¹¤ë¤³¤È¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦
¡Êɽ¼¨¤¹¤ë¤Ï¤º¤Ç¤¹¡Ë¡£
YY_BREAK
¤òºÆÄêµÁ¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢
¤³¤Î·Ù¹ð¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤µ¤»¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡£
Ãí¡§YY_BREAK
¤òºÆÄêµÁ¤¹¤ë¾ì¹ç¤Ï¡¢
¥¢¥¯¥·¥ç¥ó¤¬É¬¤º‘return;’¤«‘break;’¤Ç½ª¤ï¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
YY_DECL
¥¹¥¥ã¥ó½èÍý¤ò¼Â¹Ô¤¹¤ë´Ø¿ô¤Î̾Á°¤òÄêµÁ¤¹¤ë¥Þ¥¯¥í¤Ç¤¹¡£
¥Ç¥Õ¥©¥ë¥È¤Ïyylex
¤Ç¤¹¤¬¡¢
ºÆÄêµÁ¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
ºÆÄêµÁ¤·¤¿Ì¾Á°¤Ï¡¢
´Ø¿ô¤Î¥×¥í¥È¥¿¥¤¥×¤È¤·¤ÆÀµÅö¤Ê¤â¤Î¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£
YY_INPUT
ÆþÎϥ롼¥Á¥ó¤Î̾Á°¤òÄêµÁ¤¹¤ë¥Þ¥¯¥í¤Ç¤¹¡£ ɬÍפ¬¤¢¤ì¤Ð¡¢ ¤³¤Î̾Á°¤ÏºÆÄêµÁ¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£ Î㤨¤Ð¡¢ ʸ»úÎó¤ä¡¢ ɸ½àŪ¤Ç¤Ï¤Ê¤¤²¿¤é¤«¤ÎÆþÎϥǥХ¤¥¹¤òÆþÎϤȤ·¤Æ¡¢ ¥¹¥¥ã¥ó½èÍý¤ò¹Ô¤¦¾ì¹ç¤ËÌò¤ËΩ¤Á¤Þ¤¹¡£
YY_NEW_FILE
yyin
¤¬¿·¤·¤¤¥Õ¥¡¥¤¥ë¤ò»Ø¤¹¤è¤¦ÀßÄꤵ¤ì¤¿¤³¤È¡¢
¤ª¤è¤Ó¡¢
½èÍý¤¬·Ñ³¤µ¤ì¤ë¤Ù¤¤Ç¤¢¤ë¤³¤È¤òFlex¤ËÄÌÃΤ¹¤ë¥Þ¥¯¥í¤Ç¤¹¡£23
YY_CURRENT_BUFFER
¥«¥ì¥ó¥È¤ÊÆþÎϥХåե¡¤òÊÖ¤¹¥Þ¥¯¥í¤Ç¤¹¡£
yy_create_buffer()
¿·¤·¤¤ÆþÎϥХåե¡¤òºîÀ®¤¹¤ë¤Î¤Ë»È¤ï¤ì¤Þ¤¹¡£ ¤³¤Î´Ø¿ô¤È¡¢ ¤³¤Î¸å¤Î£²¤Ä¤Î´Ø¿ô¤ò»È¤¦¤³¤È¤Ë¤è¤ê¡¢ Ê£¿ô¤Î¥Ð¥Ã¥Õ¥¡¤òºîÀ®¤·¡¢ ¥Ð¥Ã¥Õ¥¡´Ö¤ÇÀÚ¤êÂØ¤¨¤ë¤³¤È¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£ See ¥Ð¥Ã¥Õ¥¡¤òÁàºî¤¹¤ë´Ø¿ô¡£
yy_delete_buffer()
°ÊÁ°¤ËºîÀ®¤µ¤ì¤¿ÆþÎϥХåե¡¤òºï½ü¤¹¤ë¤Î¤Ë»È¤ï¤ì¤Þ¤¹¡£
yy_switch_to_buffer()
Ê£¿ô¤ÎÆþÎϥХåե¡¤Î´Ö¤ÇÀÚ¤êÂØ¤¨¤ò¹Ô¤¦¤Î¤Ë»È¤ï¤ì¤Þ¤¹¡£
YY_BUFFER_STATE
¥Ð¥Ã¥Õ¥¡¤ò½èÍý¤¹¤ë¤Î¤Ë»È¤ï¤ì¤ë·¿¤Ç¤¹¡£ ¥Ð¥Ã¥Õ¥¡¤Î¥«¥ì¥ó¥È¤Ê¥³¥ó¥Æ¥¥¹¥È¤òÊÝ»ý¤·¤Þ¤¹¡£ Ê£¿ô¤Î¥Ð¥Ã¥Õ¥¡´Ö¤ÇÀÚ¤êÂØ¤¨¤ò¹Ô¤¦»þ¤Ë¤Ï¡¢ ¤³¤Î·¿¤ÎÊÑ¿ô¤¬É¬Íפˤʤê¤Þ¤¹¡£
YYSTYPE
Bison¥Õ¥¡¥¤¥ëÃæ¤Î%union
¤Î·¿¤Ç¤¹¡£
¤³¤ì¤Ï¡¢
Flex¤ÈBison¤Î´Ö¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤Ç»È¤ï¤ì¤Þ¤¹¡£
yylval
Bison¥Ñ¡¼¥µ¤Î¥«¥ì¥ó¥È¤Ê¥Ñ¡¼¥¹¾õÂ֤˴ØÏ¢¤¹¤ë¥Ç¡¼¥¿¤òÊÝ»ý¤¹¤ë¡¢ Bison¥Ñ¡¼¥µÃæ¤ÎÊÑ¿ô¤Ç¤¹¡£ ¤³¤ÎÊÑ¿ô¤ò»È¤¦¤³¤È¤Ç¡¢ ¥Ç¡¼¥¿¤òFlex¤ÈBison¤Î´Ö¤ÇÅϤ¹¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
Next: Summary or Flex Variables and Functions (Flex 2.5), Previous: Switches Summary (Flex 2.5), Up: Summary [Contents][Index]