Next: Processing of Errors, Previous: Errors, Up: Errors [Contents][Index]
¤Û¤È¤ó¤É¤Î¥¨¥é¡¼¤Ï¡¢Â¾¤ÎÌÜŪ¤Ç¸Æ¤Ó½Ð¤·¤¿Lisp´Ø¿ô¤ÎÆâÉô¤Ç¡Ø¼«Æ°Åª¡Ù¤Ë
ÄÌÃΤµ¤ì¤Þ¤¹¡£
À°¿ô¤ÎCAR¤ò·×»»¤·¤è¤¦¤È¤·¤¿¤ê¡¢
¥Ð¥Ã¥Õ¥¡¤ÎËöÈø¤Ç1ʸ»ú¿Ê¤á¤è¤¦¤È¤·¤¿¤ê¤·¤¿¤È¤¤Ê¤É¤Ç¤¹¡£
´Ø¿ôerror
¤ä´Ø¿ôsignal
¤Ç¡¢
ÌÀ¼¨Åª¤Ë¥¨¥é¡¼¤òÄÌÃΤ¹¤ë¤³¤È¤â¤Ç¤¤Þ¤¹¡£
¥æ¡¼¥¶¡¼¤¬C-g¤òÂǤ俤Ȥ¤ËȯÀ¸¤¹¤ëÃæÃǤϡ¢ ¥¨¥é¡¼¤È¤Ï¹Í¤¨¤Þ¤»¤ó¤¬¡¢¥¨¥é¡¼¤Î¤è¤¦¤Ë°·¤¤¤Þ¤¹¡£
¤³¤Î´Ø¿ô¤Ï¡¢format-string¤Èargs¤Ë
format
¡Êsee String Conversion¡Ë¤òŬÍѤ·¤Æºî¤Ã¤¿
¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤òȼ¤Ã¤¿¥¨¥é¡¼¤òÄÌÃΤ¹¤ë¡£
error
¤Îŵ·¿Åª¤Ê»È¤¤Êý¤ò°Ê²¼¤Ë¼¨¤¹¡£
(error "That is an error -- try something else") error→ That is an error -- try something else
(error "You have committed %d errors" 10) error→ You have committed 10 errors
error
¤Ï¡¢2¤Ä¤Î°ú¿ô¡¢
¥¨¥é¡¼¥·¥ó¥Ü¥ëerror
¤Èformat
¤¬ÊÖ¤¹Ê¸»úÎó¤ò´Þ¤à¥ê¥¹¥È
¤Çsignal
¤ò¸Æ¤Ó½Ð¤¹¤³¤È¤Çưºî¤¹¤ë¡£
·Ù¹ð¡§
ÆÈ¼«¤Î¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤ò¤½¤Î¤Þ¤Þ»È¤¤¤¿¤¤¾ì¹ç¤Ë¡¢
ñ¤Ë(error string)
¤È¤Ï½ñ¤«¤Ê¤¤¤³¤È¡£
string¤Ë‘%’¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¤È¡¢
¤½¤ì¤Ï½ñ¼°ÉÕ¤±»ØÄê¤È²ò¼á¤µ¤ì¡¢Í½Â¬ÉÔǽ¤Ê·ë²Ì¤ò¾·¤¯¡£
¤½¤Î¤«¤ï¤ê¤Ë¡¢(error "%s" string)
¤ò»È¤¦¡£
¤³¤Î´Ø¿ô¤Ï¡¢error-symbol¤È¤¤¤¦Ì¾Á°¤Î¥¨¥é¡¼¤òÄÌÃΤ¹¤ë¡£ °ú¿ôdata¤Ï¡¢¥¨¥é¡¼¤Î¾õ¶·¤Ë´ØÏ¢¤·¤¿Lisp¥ª¥Ö¥¸¥§¥¯¥È¤Î¥ê¥¹¥È¤Ç¤¢¤ë¡£
°ú¿ôerror-symbol¤Ï¡¢¥¨¥é¡¼¥·¥ó¥Ü¥ë¡Êerror symbol¡Ë¤Ç¤¢¤ë
ɬÍפ¬¤¢¤ë¡£
¤Ä¤Þ¤ê¡¢Â°Àerror-conditions
¤ò»ý¤Ä¥·¥ó¥Ü¥ë¤Ç¤¢¤ê¡¢
¤½¤Î°ÀÃͤϾò·ï̾¤Î¥ê¥¹¥È¤Ç¤¢¤ë¡£
¤³¤ì¤Ë¤è¤ê¡¢Emacs¤Ï¥¨¥é¡¼¤Î°Û¤Ê¤ë¼ïÎà¤òʬÎह¤ë¡£
data¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Î¸Ä¿ô¤È½ÅÍ×À¤Ïerror-symbol¤Ë°Í¸¤¹¤ë¡£
¤¿¤È¤¨¤Ð¡¢¥¨¥é¡¼wrong-type-arg
¤Ç¤Ï¡¢
¥ê¥¹¥È¤Ë¤Ï2¤Ä¤Î¥ª¥Ö¥¸¥§¥¯¥È¤¬¤¢¤ë¤Ï¤º¤Ç¡¢
ͽ´ü¤·¤¿·¿¤òɽ¤¹½Ò¸ì¤È¤½¤Î·¿¤Ë°ìÃפ·¤Ê¤«¤Ã¤¿¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¢¤ë¡£
¥¨¥é¡¼¥·¥ó¥Ü¥ë¤ÎÀâÌÀ¤Ï¡¢see Error Symbols¡£
error-symbol¤Èdata¤Îξ¼Ô¤Ï¡¢
Ǥ°Õ¤Î¥¨¥é¡¼¥Ï¥ó¥É¥é¤ÇÍøÍѤǤ¤ë¡£
condition-case
¤Ï¡¢¥í¡¼¥«¥ëÊÑ¿ô¤Ë
¥Õ¥©¡¼¥à(error-symbol . data)
¤Î¥ê¥¹¥È¤ò«Çû¤¹¤ë
¡Êsee Handling Errors¡Ë¡£
¥¨¥é¡¼¤¬½èÍý¤µ¤ì¤Ê¤¤¤È¡¢¤³¤ì¤é¤Î2¤Ä¤ÎÃͤϥ¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤Îɽ¼¨¤Ë»È¤ï¤ì¤ë¡£
´Ø¿ôsignal
¤Ï¤±¤Ã¤·¤ÆÌá¤é¤Ê¤¤
¡Ê¤·¤«¤·¡¢Emacs¤Î¸Å¤¤ÈǤǤÏÌá¤ë¾ì¹ç¤â¤¢¤ë¡Ë¡£
(signal 'wrong-number-of-arguments '(x y)) error→ Wrong number of arguments: x, y
(signal 'no-such-error '("My unknown error condition")) error→ peculiar error: "My unknown error condition"
Common Lisp¤Ë´Ø¤·¤¿Ãí°Õ¡§
Emacs¤Ë¤Ï¡¢Common lisp¤Î·Ñ³²Äǽ¤Ê¥¨¥é¡¼¤Î³µÇ°¤ËÁêÅö¤¹¤ë¤â¤Î¤Ï¤Ê¤¤¡£