next up previous contents index
: 等号 : 述語 : 述語   目次   索引

データ型述語

(boolean? 〈データ〉) 【関数】

引数が #tまたは #fなら #tを返す. それ以外のデータなら #fを返す.

例:
(boolean? #f) $\Rightarrow$ #t
(boolean? 'a) $\Rightarrow$ #f

(number? 〈データ〉) 【関数】

引数が数値なら #tを返す. 数値以外のデータなら #fを返す.

例:
(number? 100) $\Rightarrow$ #t
(number? 1.5) $\Rightarrow$ #t
(number? 'a) $\Rightarrow$ #f

(complex? 〈データ〉) 【関数】

引数が複素数なら #tを返す. それ以外のデータなら #fを返す. TUTSchemeでは,すべての数値は複素数なので, この関数は number?と等価である.
(real? 〈データ〉) 【関数】

引数が実数なら #tを返す. 実数以外のデータなら #fを返す. TUTSchemeでは,引数が整数,浮動小数点数,分数の いずれかの場合に #tを返す.
(rational? 〈データ〉) 【関数】

引数が有理数なら #tを返す. それ以外のデータなら #fを返す. TUTSchemeでは,引数が整数または分数の場合に #tを返す.
(integer? 〈データ〉) 【関数】

引数が整数なら #tを返す. 整数以外のデータなら #fを返す.

例:
(integer? 100) $\Rightarrow$ #t
(integer? 1.5) $\Rightarrow$ #f
(integer? 'a) $\Rightarrow$ #f

(fixnum? 〈データ〉) 【関数】

引数がfixnum( $-2^{25}\sim 2^{25}-1$の範囲の整数)なら #tを返す. それ以外のデータなら #fを返す.

例:
(fixnum? 100) $\Rightarrow$ #t
(fixnum? 100000000) $\Rightarrow$ #f
(fixnum? 1.5) $\Rightarrow$ #f
(fixnum? 'a) $\Rightarrow$ #f

(char? 〈データ〉) 【関数】

引数が文字データなら #tを返す.文字以外のデータなら #fを返す. 例:
(char? #\a) $\Rightarrow$ #t
(char? #\湯) $\Rightarrow$ #t
(char? 97) $\Rightarrow$ #f

(symbol? 〈データ〉) 【関数】

引数が記号データなら #tを返す. 記号以外のデータなら #fを返す.

例:
(symbol? 100) $\Rightarrow$ #f
(symbol? 'a) $\Rightarrow$ #t
(symbol? car) $\Rightarrow$ #f
(symbol? 'car) $\Rightarrow$ #t
(symbol? '(a . b)) $\Rightarrow$ #f
(symbol? #f) $\Rightarrow$ #f
(symbol? ()) $\Rightarrow$ #f

(pair? 〈データ〉) 【関数】

引数がコンス・データなら #tを返す. コンス以外のデータなら #fを返す.

例:
(pair? '(a . b)) $\Rightarrow$ #t
(pair? #f) $\Rightarrow$ #f
(pair? 'a) $\Rightarrow$ #f

(weak-pair? 〈データ〉) 【関数】

引数がweakコンスなら #tを返す. weakコンス以外のデータなら #fを返す.
(list? 〈データ〉) 【関数】

引数がリストなら #tを返す. それ以外のデータなら #fを返す.
(atom? 〈データ〉) 【関数】

引数がコンス・データまたはweakコンスなら #fを返す. それ以外のデータなら #tを返す.
(promise? 〈データ〉) 【関数】

引数がpromiseなら #tを返す. それ以外のデータなら #fを返す.
(function? 〈データ〉) 【関数】 (procedure? 〈データ〉) 【関数】
引数が関数データなら #tを返す. それ以外のデータなら #fを返す.

例:
(function? car) $\Rightarrow$ #t
(function? (lambda (x) (car x))) $\Rightarrow$ #t
(call-with-current-continuation function?) $\Rightarrow$ #t
(function? #f) $\Rightarrow$ #f
(function? 10) $\Rightarrow$ #f

(vector? 〈データ〉) 【関数】

引数がベクタなら #tを返す. それ以外のデータなら #fを返す.

例:
(vector? #(a b c)) $\Rightarrow$ #t
(vector? 'abc) $\Rightarrow$ #f
(vector? 100) $\Rightarrow$ #f

(string? 〈データ〉) 【関数】

引数が文字列データなら #tを返す. それ以外のデータなら #fを返す.

例:
(string? "abc") $\Rightarrow$ #t
(string? 'abc) $\Rightarrow$ #f
(string? 100) $\Rightarrow$ #f

(null? 〈データ〉) 【関数】

引数が空リストなら #tを返し,空リスト以外なら #fを返す.

例:
(null? '()) $\Rightarrow$ #t
(null? 'a) $\Rightarrow$ #f

(input-port? 〈データ〉) 【関数】

引数が入力ポートなら #tを返し, それ以外なら #fを返す.
(output-port? 〈データ〉) 【関数】

引数が出力ポートなら #tを返し, それ以外なら #fを返す.
(port? 〈データ〉) 【関数】

引数がポートなら #tを返し, それ以外なら #fを返す.
(string-port? 〈データ〉) 【関数】

引数が文字列ポートなら #tを返し, それ以外なら #fを返す.
(eof-object? 〈データ〉) 【関数】

引数がend-of-fileオブジェクトならば #tを返し, そうでなければ #fを返す.


next up previous contents index
: 等号 : 述語 : 述語   目次   索引
Tsuneyasu KOMIYA 平成14年2月22日