Previous: Multiple Input Buffers, Up: Other Flex Features [Contents][Index]
¥Õ¥¡¥¤¥ë¤Î½ªÃ¼¡ÊEOF¡Ë¤¬¸«¤Ä¤«¤ë¤È¡¢
Flex¤Ïyywrap()
¤ò¸Æ¤Ó½Ð¤·¡¢
¤Û¤«¤Ë½èÍý¤Ç¤¤ë¾õÂ֤Υե¡¥¤¥ë¤¬Â¸ºß¤¹¤ë¤«Ä´¤Ù¤Þ¤¹¡£
yywrap()
¤¬0°Ê³°¤ÎÃͤòÊÖ¤¹¤È¡¢
¤â¤¦¤³¤ì°Ê¾å¥Õ¥¡¥¤¥ë¤Ï¤Ê¤¤¤È¤¤¤¦¤³¤È¤ò°ÕÌ£¤·¡¢
¤·¤¿¤¬¤Ã¤Æ¡¢
¤³¤ì¤¬¤Þ¤µ¤ËÆþÎϤκǸå¤Ç¤¢¤ë¤È¤¤¤¦¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
¾õ¶·¤Ë¤è¤Ã¤Æ¤Ï¡¢
¤³¤Î»þÅÀ¤Ç¤µ¤é¤Ë½èÍý¤ò¹Ô¤¦É¬ÍפΤ¢¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹
¡ÊÎ㤨¤Ð¡¢
ÆþÎϤΤ¿¤á¤ËÊ̤Υե¡¥¤¥ë¤ò¥»¥Ã¥È¥¢¥Ã¥×¤·¤¿¤¤¤È¤¤¤¦¤³¤È¤¬¤¢¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡Ë¡£
¤³¤Î¤è¤¦¤Ê¾ì¹ç¤Î¤¿¤á¤Ë¡¢
Flex¤Ï<<EOF>>
±é»»»Ò¤òÄ󶡤·¤Æ¤¤¤Þ¤¹¡£
¤³¤ì¤ò»È¤¦¤³¤È¤Ç¡¢
EOF¤¬¸«¤Ä¤«¤Ã¤¿»þ¤Ë¼Â¹Ô¤¹¤Ù¤¤³¤È¤òÄêµÁ¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
See Ê£¿ô¥Ð¥Ã¥Õ¥¡¤ò»È¤¦¼ÂÎã¡£
EOF¥ë¡¼¥ë¤ò»È¤Ã¤Æ¡¢
½ª¤ï¤ê¤Î¤Ê¤¤¥³¥á¥ó¥È¤ä¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤Î½ªÃ¼¤ò¸«¤Ä¤±¤ë¡¢
Îɤ¤Î㤬¼¨¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
<<EOF>>
±é»»»Ò¤Î»ÈÍѤˤϤ¤¤¯¤Ä¤«À©¸Â¤¬¤¢¤ê¤Þ¤¹¡£
À©¸Â»ö¹à¤ò°Ê²¼¤Ë¼¨¤·¤Þ¤¹¡£
EOF¥ë¡¼¥ë¤Ï¡¢
¥¹¥¿¡¼¥È¾õÂ֤ȤΤ߰ì½ï¤Ë»È¤¦¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
¥¹¥¿¡¼¥È¾õÂÖ¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç
¡Ê¤¹¤Ê¤ï¤Á¡¢
<<EOF>>
¥ë¡¼¥ë¤¬¾õÂ֤ˤè¤êÀ©¸Â¤µ¤ì¤Ê¤¤¾ì¹ç¡Ë¡¢
<<EOF>>
¤¬»È¤ï¤ì¤Æ¤¤¤Ê¤¤¤¹¤Ù¤Æ¤Î
¡ÊÇÓ¾Ū¥¹¥¿¡¼¥È¾õÂÖ¤ò´Þ¤à¡Ë
¾õÂÖ¤¬±Æ¶Á¤ò¼õ¤±¤Þ¤¹¡£
¤Ä¤Þ¤ê¡¢
"foo"<<EOF>>
¤¬ÉÔÅö¤Ç¤¢¤ë°ìÊý¤Ç¡¢
<<EOF>> /* <<EOF>>¤¬»È¤ï¤ì¤Æ¤¤¤Ê¤¤¤¹¤Ù¤Æ¤Î */ /* ¾õÂ֤ˤª¤±¤ëEOF */ <indent><<EOF>> /* indent¾õÂ֤ˤª¤±¤ëEOF */ <comment><<EOF>> /* ¥³¥á¥ó¥ÈÆâ¤ÎEOF */
¤Ï¤¹¤Ù¤ÆÀµÅö¤Ç¤¢¤ë¤³¤È¤ò°ÕÌ£¤·¤Æ¤¤¤Þ¤¹¡£
£±¤ÄÃí°Õ¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤ÅÀ¤Ï¡¢
EOF¥ë¡¼¥ë¤ÏÆþÎϤκǸå¤Ç¸Æ¤Ó½Ð¤µ¤ì¤ë¤È¤¤¤¦ÅÀ¤Ç¤¹¡£
¤·¤¿¤¬¤Ã¤Æ¡¢
EOF¥ë¡¼¥ë¤Î¥¢¥¯¥·¥ç¥ó¤Ï¡¢
(1) ¡Êyy_switch_to_buffer()
¡¢
¤Þ¤¿¤ÏYY_NEW_FILE
¤ò»È¤Ã¤Æ¡Ë¿·¤·¤¤ÆþÎÏ¥¹¥È¥ê¡¼¥à¤ò³ÎΩ¤¹¤ë¡¢
(2) ¡Êreturn
ʸ¤ò»È¤Ã¤Æ¡ËÉüµ¢¤¹¤ë¡¢
(3) ¡Êyyterminate()
¡¢
¤Þ¤¿¤Ïexit()
¤ò»È¤Ã¤Æ¡Ë¥¹¥¥ã¥Ê¤Î¼Â¹Ô¤ò½ªÎ»¤µ¤»¤ë¡¢
¤Î¤¤¤º¤ì¤«¤ò¼Â¹Ô¤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£
See Ê£¿ô¥Ð¥Ã¥Õ¥¡¤ò»È¤¦¼ÂÎã¡£
yy_terminate()
¤Èyy_switch_to_buffer()
¤ò»È¤¦Î㤬¼¨¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
¤Þ¤¿¡¢
yyterminate()
¤ÎÀâÌÀ¤Ë¤Ä¤¤¤Æ¤Ï¡¢
Flex and C¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£