copy shelf to shelfor
copy-clear shelf to shelf
You can use
copy to copy the entire contents of one shelf to another. The contents of the destination shelf are removed and replaced with the contents of the source shelf.
You can use
copy-clear to copy the entire contents of one shelf to another. The contents of the destination shelf are removed and replaced with the contents of the source shelf. The contents of the source shelf are removed.
Because the destination shelf will become the same size as the source shelf, it must be either
variable size or the same size as the source shelf. If the destination shelf was declared variable with a maximum size, the maximum size must be equal to or greater than the current size of the source shelf.
copy-clear the source shelf must be of
variable size. Fixed sized shelves cannot be cleared.
When stream shelves are copied using
copy, all streams on the source shelf must either be unattached or attached to buffers and closed. When you use
copy-clear, however, streams on the source shelf may be attached and open and will remain attached an open on the destination shelf.
All open streams on the destination shelf will automatically be discarded before the
copy action takes place.
This example copies all the items of the integer shelf "reference-counts" to "saved-reference-counts". After the copy, "saved-reference-counts" has the same number of items as "reference-counts", and each item in "saved-reference-counts" has the same value and key as its corresponding item in "reference-counts".
global integer reference-counts process local integer saved-reference-counts copy reference-counts to saved-reference-counts
copy does not copy the values of a shelf of
records but the references to
these records. After the copy both shelves reference the same set of records.