oo_copy man page on SmartOS

Man page or keyword search:  
man Server   16655 pages
apropos Keyword Search (all sections)
Output format
SmartOS logo
[printable version]

copy(n)				TclOO Commands			       copy(n)


       oo::copy - create copies of objects and classes

       package require TclOO

       oo::copy sourceObject ?targetObject?

       The oo::copy command creates a copy of an object or class. It takes the
       name of the object or class to be copied, sourceObject, and  optionally
       the  name of the object or class to create, targetObject, which will be
       resolved relative to the current namespace if not an absolute qualified
       name.   If  targetObject	 is  omitted, a new name is chosen. The copied
       object will be of the same class as the source object,  and  will  have
       all  its per-object methods copied. If it is a class, it will also have
       all the class methods in the class copied, but it will not have any  of
       its instances copied.

       After the targetObject has been created and all definitions of its con‐ │
       figuration (e.g., methods, filters, mixins) copied, the <cloned> method │
       of targetObject will be invoked, to allow for customization of the cre‐ │
       ated object such as installing related variable traces. The only	 argu‐ │
       ment  given  will  be  sourceObject. The default implementation of this │
       method (in oo::object) just copies the procedures and variables in  the │
       namespace  of  sourceObject  to	the namespace of targetObject. If this │
       method call does not return a result that is successful (i.e., an error │
       or  other  kind of exception) then the targetObject will be deleted and │
       an error returned.

       The result of the oo::copy command will be the fully-qualified name  of
       the new object or class.

       This  example creates an object, copies it, modifies the source object,
       and then demonstrates that the copied object is indeed a copy.

	      oo::object create src
	      oo::objdefine src method msg {} {puts foo}
	      oo::copy src dst
	      oo::objdefine src method msg {} {puts bar}
	      src msg		   → prints "bar"
	      dst msg		   → prints "foo"

       oo::class(n), oo::define(n), oo::object(n)

       clone, copy, duplication, object

TclOO				      0.1			       copy(n)

List of man pages available for SmartOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
Vote for polarhome
Free Shell Accounts :: the biggest list on the net