srfi.238
- コードセット ¶このモジュールは、エラー番号やシグナル番号のような、システムが提供するコード値の集合を 扱うための統一的なインタフェースを提供します。
Gaucheはエラー番号(errno)を表す整数定数(例:EINTR
)とシグナル番号を
表す整数定数(例SIGINT
)をgauche
モジュールで提供していて、
また整数を対応するシンボルに変換する手続き
(sys-errno->symbol
, sys-signal-name
)
および整数から記述的なメッセージを得る手続き
(sys-strerror
, sys-strsignal
)
を組み込みにしてます。
ただ、ポータブルなコードを書きたい場合はこのSRFIは有用でしょう。
[SRFI-238]{srfi.238
}
objがこのsrfiのAPIのcodeset引数に渡せるものなら#t
を、
そうでなければ#f
を返します。
Gaucheではobjはシンボルerrno
かsignal
でなければなりません。
[SRFI-238]{srfi.238
}
codeset引数で表されるコードセットが定義しているシンボルのリストを返します。
Gaucheではcodesetはシンボルでなければなりません。
それが定義済みコードセットに対応しないシンボルだった場合は空リストが返されます。
(codeset-symbols 'errno) ⇒ (EPERM ENOENT ESRCH EINTR EIO ...)
[SRFI-238]{srfi.238
}
それぞれ、codesetで指定されるコードセット中のcodeに対応する
シンボル、正確な整数、あるいはメッセージ文字列を返します。
code引数はシンボルまたは正確な整数です。 codeset引数はシンボルでなければなりません。
codesetがGaucheでサポートするコードセットを指定しないシンボルだったり、
codeが指定されたコードセット中のコードを指定しない場合は#f
が返ります。
(codeset-symbol 'errno 'EINTR) ⇒ EINTR (codeset-symbol 'errno EINTR) ⇒ EINTR ; Gauche has predefined constant (codeset-number 'errno 'EINTR) ⇒ 4 ; Actual number is platform dependent (codeset-number 'errno 4) ⇒ 4 (codeset-message 'errno EINTR) ⇒ "Interrupted system call" (codeset-message 'errno 'NoSuchErrno) ⇒ #f