% Function MAKE-LOAD-FORM-SAVING-SLOTS
Function MAKE-LOAD-FORM-SAVING-SLOTS
make-load-form-saving-slots object &key slot-names environment
=> creation-form, initialization-form
object - オブジェクト
slot-names - リスト
environment - 環境オブジェクト
creation-form - フォーム
initialization-form - フォーム
返却値のフォームが評価されたとき、
initialization-formの実行なしに、
objectと同等のオブジェクトが構築されます。
新しいオブジェクトのスロットの初期化は、
objectの初期化されているスロットに対してはその値を用いて行われます。
objectの初期化されていないスロットについては、
新しいオブジェクトでは初期化されません。
make-load-form-saving-slotsは、
standard-objectかstructure-objectの
インスタンスであれば動作します。
slot-namesは保存するスロットの名前のリストです。 slot-namesが与えられない場合、その値はすべての局所スロットになります。
make-load-form-saving-slotsは2つの値を返却するので、
循環構造を扱うことができます。
この結果がアプリケーションで有用かどうかは、
オブジェクトの型とスロットの内容が、
アプリケーションの考えるオブジェクトの状態を
完全に捉えているかどうかに依存します。
environmentはフォームを処理する環境です。
なし。
なし。
なし。
なし。
make-load-form,
make-instance,
setf,
slot-value,
slot-makunbound
make-load-form-saving-slotsは、
ユーザーがmake-load-formメソッドを作成する際に便利です。
もしobjectがstandard-objectのインスタンスならば、
make-load-form-saving-slotsは
creation-formにallocate-instanceを呼ぶフォームを、
initialization-formにはslot-valueのsetfと、
slot-makunboundを含むフォームが返却されます。
しかし、実際には同様の効果を持つ他の関数が使用されるかもしれません。