Builtins::copy(3) Copy a value


any copy( any x )


x The value to copy


Create a deep copy of any value. Contrasting with assignment, which creates another reference, this function traverses the entire structure and creates a clone. Note that this function is not pure, as even called with the same input, it returns a different copy each time.

 a = [5,6,7];
 myFunction(a); // pass by shallow copy
 myFunction(copy(a)); // pass by deep copy

Copying a structure containing a foreign pointer (for example a database or file handle, or a piece of binary data) will copy the pointer but will not copy the contents of that pointer.


Kaya standard library by Edwin Brady, Chris Morris and others ([email protected]). For further information see http://kayalang.org/


The Kaya standard library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License (version 2.1 or any later version) as published by the Free Software Foundation.