For Development HEAD DRAFTSearch (procedure/syntax/module):

11.66 srfi.238 - コードセット

Module: srfi.238

このモジュールは、エラー番号やシグナル番号のような、システムが提供するコード値の集合を 扱うための統一的なインタフェースを提供します。

Gaucheはエラー番号(errno)を表す整数定数(例:EINTR)とシグナル番号を 表す整数定数(例SIGINT)をgaucheモジュールで提供していて、 また整数を対応するシンボルに変換する手続き (sys-errno->symbol, sys-signal-name) および整数から記述的なメッセージを得る手続き (sys-strerror, sys-strsignal) を組み込みにしてます。 ただ、ポータブルなコードを書きたい場合はこのSRFIは有用でしょう。

Function: codeset? obj

[SRFI-238]{srfi.238} objがこのsrfiのAPIのcodeset引数に渡せるものなら#tを、 そうでなければ#fを返します。 Gaucheではobjはシンボルerrnosignalでなければなりません。

Function: codeset-symbols codeset

[SRFI-238]{srfi.238} codeset引数で表されるコードセットが定義しているシンボルのリストを返します。 Gaucheではcodesetはシンボルでなければなりません。 それが定義済みコードセットに対応しないシンボルだった場合は空リストが返されます。

(codeset-symbols 'errno)
 ⇒ (EPERM ENOENT ESRCH EINTR EIO ...)
Function: codeset-symbol codeset code
Function: codeset-number codeset code
Function: codeset-message codeset code

[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


For Development HEAD DRAFTSearch (procedure/syntax/module):
DRAFT