[Python-checkins] cpython (2.7): #11481: update copy_reg docs and add example.

ezio.melotti python-checkins at python.org
Thu Nov 8 10:06:31 CET 2012


http://hg.python.org/cpython/rev/2bd6150b48ea
changeset: 80302:2bd6150b48ea
branch: 2.7
parent: 80297:58564aeec8e4
user: Ezio Melotti <ezio.melotti at gmail.com>
date: Thu Nov 08 10:59:03 2012 +0200
summary:
 #11481: update copy_reg docs and add example.
files:
 Doc/library/copy_reg.rst | 31 +++++++++++++++++++++++----
 1 files changed, 26 insertions(+), 5 deletions(-)
diff --git a/Doc/library/copy_reg.rst b/Doc/library/copy_reg.rst
--- a/Doc/library/copy_reg.rst
+++ b/Doc/library/copy_reg.rst
@@ -14,11 +14,11 @@
 module: cPickle
 module: copy
 
-The :mod:`copy_reg` module provides support for the :mod:`pickle` and
-:mod:`cPickle` modules. The :mod:`copy` module is likely to use this in the
-future as well. It provides configuration information about object constructors
-which are not classes. Such constructors may be factory functions or class
-instances.
+The :mod:`copy_reg` module offers a way to define fuctions used while pickling
+specific objects. The :mod:`pickle`, :mod:`cPickle, and :mod:`copy` modules
+use those functions when pickling/copying those objects. The module provides
+configuration information about object constructors which are not classes.
+Such constructors may be factory functions or class instances.
 
 
 .. function:: constructor(object)
@@ -43,3 +43,24 @@
 See the :mod:`pickle` module for more details on the interface expected of
 *function* and *constructor*.
 
+Example
+-------
+
+The example below would like to show how to register a pickle function and how
+it will be used:
+
+ >>> import copy_reg, copy, pickle
+ >>> class C(object):
+ ... def __init__(self, a):
+ ... self.a = a
+ ...
+ >>> def pickle_c(c):
+ ... print("pickling a C instance...")
+ ... return C, (c.a,)
+ ...
+ >>> copy_reg.pickle(C, pickle_c)
+ >>> c = C(1)
+ >>> d = copy.copy(c)
+ pickling a C instance...
+ >>> p = pickle.dumps(c)
+ pickling a C instance...
-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /