next up previous contents index
: コンディションオブジェクトに関する関数 : エラー処理機能 : コンディションクラスの定義   目次   索引


コンディションオブジェクトの生成

(make-condition 〈コンディションクラス〉[〈スロット〉]) 【関数】

〈コンディションクラス〉 のコンディションオブジェクトを生成して 返す.

〈コンディションクラス〉 の後に,スロット名とそのスロット値を書 くことでスロットに値を持たせることができる. 〈スロット〉の書式は次のいずれかである.
〈スロット名〉〈スロット値〉$\cdots$〈スロット名〉〈スロット値〉
(〈スロット名〉 . 〈スロット値〉)$\cdots$(〈スロット名〉 . 〈スロット値〉)
ここで, 〈スロット名〉 は,記号で与える.

例:

次の例はコンディションクラス my-conditionを定義し,スロット slot-aに記号 foo,スロット slot-bに数値 10を持つコンディ ションオブジェクトを生成している.

> (define-condition my-condition (condition)
                      (slot-a slot-b slot-c)
                      (lambda (c s)
                        (format s "Signaled MY-CONDITION.")))
#t
> (make-condition 'my-condition 'slot-a 'foo 'slot-b 10)
(my-condition ((slot-a . foo) (slot-b . 10) (slot-c)) #<function>)
>



Tsuneyasu KOMIYA 平成14年2月22日