class

Error::Usecase

Inherits Reference < Object

例外をログへ落とし、利用者が気付けるようトレイ通知にも出す。 通知の出し方は runtime 側から差し込むため、ここは Win32 にもトレイにも依存しない。

Constants

Log = ::Log.for("error")

Instance methods

display_text
Source
display_text=(display_text : Proc(String, String))
Source
guard(key : String, & : -> Nil) : Nil

中断させたくない処理を包む。例外はログとトレイ通知に変えて握りつぶす。

Source
handle(key : String, exception : Exception) : Nil
Source
log_text

例外の文脈は辞書のキーで受け取り、ログ用と表示用を別々に開く(issue #4)。 ログは開発者が読むものなので言語を固定し、通知は利用者が選んだ言語で出す。 辞書は runtime 側にあり、ここから参照すると層が逆さになるため、 解決そのものは composition root から差し込む。 既定はキーを素通しする。差し込む前に例外が出ても、何の文脈かは残る。

Source
log_text=(log_text : Proc(String, String))

例外の文脈は辞書のキーで受け取り、ログ用と表示用を別々に開く(issue #4)。 ログは開発者が読むものなので言語を固定し、通知は利用者が選んだ言語で出す。 辞書は runtime 側にあり、ここから参照すると層が逆さになるため、 解決そのものは composition root から差し込む。 既定はキーを素通しする。差し込む前に例外が出ても、何の文脈かは残る。

Source
notifier

トレイ通知を出すためのフック。composition root が登録する。 出せたかどうかを返す。出たことにして先へ進む呼び出し側があるためである(issue #10)。

Source
notifier=(notifier : Proc(String, String, Bool))

トレイ通知を出すためのフック。composition root が登録する。 出せたかどうかを返す。出たことにして先へ進む呼び出し側があるためである(issue #10)。

Source
notify(title : String, body : String) : Bool

出せたかどうかを返す。

Source