% Function ARRAY-DISPLACEMENT
Function ARRAY-DISPLACEMENT
array-displacement
array => displaced-to, displaced-index-offset
array - 配列
displaced-to - 配列か、nil
displaced-index-offset - 非負のfixnum
もしarrayがdisplaced
の配列のとき、
その配列の:displaced-to
と:displaced-index-offset
オプションのものが返却されます
(関数make-array
とadjust-array
をご確認ください)。
もしarrayがdisplaced
の配列ではないとき、
nil
と0
が返却されます。
もしarray-displacement
が
make-array
かadjust-array
の
:displaced-to
引数としてnil
ではない
オブジェクトが指定されたarrayで呼ばれたとき、
それは最初の値にそのオブジェクトを返却しなければなりません。
array-displacement
がarray以外の何かに対して、
nil
ではない主値を返却するかどうかは
実装依存です。
(setq a1 (make-array 5)) => #<ARRAY 5 simple 46115576>
(setq a2 (make-array 4 :displaced-to a1
:displaced-index-offset 1))
=> #<ARRAY 4 indirect 46117134>
(array-displacement a2)
=> #<ARRAY 5 simple 46115576>, 1
(setq a3 (make-array 2 :displaced-to a2
:displaced-index-offset 2))
=> #<ARRAY 2 indirect 46122527>
(array-displacement a3)
=> #<ARRAY 4 indirect 46117134>, 2
なし。
もしarrayが配列ではないとき、型type-error
のエラーが発生します。
なし。