Function CONSTANTP

UP


Function CONSTANTP

Function CONSTANTP

構文

constantp form &optional environment => generalized-boolean

引数と戻り値

form - フォーム
environment - 環境オブジェクト。デフォルトはnilです。
generalized-boolean - generalized-boolean

定義

指定されたenvironmentの下で、 formがその実装によって定数フォームであると決定できるとき、 trueが返却されます。 それ以外の、フォームが定数フォームではないか、 あるいはフォームが定数かどうか決定できないかの、 どちらかの場合にはfalseが返却されます。

下記に定義された種類のフォームが定数フォームであると考えます。

もし実装がenvironmentの情報を使用するとしたとき、 マクロ展開や関数のinlineといった動作は許されますが、必須ではありません。 しかしコンパイラーマクロの展開は許されません。

例文

(constantp 1) =>  true
(constantp 'temp) =>  false
(constantp ''temp)) =>  true
(defconstant this-is-a-constant 'never-changing) =>  THIS-IS-A-CONSTANT 
(constantp 'this-is-a-constant) =>  true
(constantp "temp") =>  true
(setq a 6) =>  6 
(constantp a) =>  true
(constantp '(sin pi)) =>  implementation-dependent
(constantp '(car '(x))) =>  implementation-dependent
(constantp '(eql x x)) =>  implementation-dependent
(constantp '(typep x 'nil)) =>  implementation-dependent
(constantp '(typep x 't)) =>  implementation-dependent
(constantp '(values this-is-a-constant)) =>  implementation-dependent
(constantp '(values 'x 'y)) =>  implementation-dependent
(constantp '(let ((a '(a b c))) (+ (length a) 6))) =>  implementation-dependent

副作用

なし。

影響

グローバル環境の状態 (例えば定数変数の名前として宣言されたシンボルなど)。

例外

なし。

参考

defconstant

備考

なし。


TOP, Github