]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
added PicklingError exception
authorGuido van Rossum <guido@python.org>
Thu, 9 Mar 1995 14:08:35 +0000 (14:08 +0000)
committerGuido van Rossum <guido@python.org>
Thu, 9 Mar 1995 14:08:35 +0000 (14:08 +0000)
Lib/pickle.py

index 7984b98168bf8ba07e559194bd555fd4b32e3490..44447d40d039aa35d76b2faae0a0139a1af63ee8 100644 (file)
@@ -126,11 +126,13 @@ I have no answers.  Garbage Collection may also become a problem here.)
 """
 
 __format_version__ = "1.0"             # File format version
-__version__ = "1.2"                    # Code version
+__version__ = "1.4"                    # Code version
 
 from types import *
 import string
 
+PicklingError = "pickle.PicklingError"
+
 AtomicTypes = [NoneType, IntType, FloatType, StringType]
 
 def safe(object):
@@ -191,7 +193,12 @@ class Pickler:
                        self.write(GET + `d` + '\n')
                        return
                t = type(object)
-               self.dispatch[t](self, object)
+               try:
+                       f = self.dispatch[t]
+               except KeyError:
+                       raise PicklingError, \
+                             "can't pickle %s objects" % `t.__name__`
+               f(self, object)
 
        def persistent_id(self, object):
                return None