Home | Trees | Indices | Help |
|
---|
|
object --+ | exceptions.BaseException --+ | exceptions.Exception --+ | DNSException
Abstract base class shared by all dnspython exceptions.
It supports two basic modes of operation:
a) Old/compatible mode is used if __init__ was called with empty **kwargs. In compatible mode all *args are passed to standard Python Exception class as before and all *args are printed by standard __str__ implementation. Class variable msg (or doc string if msg is None) is returned from str() if *args is empty.
b) New/parametrized mode is used if __init__ was called with non-empty **kwargs. In the new mode *args has to be empty and all kwargs has to exactly match set in class variable self.supp_kwargs. All kwargs are stored inside self.kwargs and used in new __str__ implementation to construct formatted message based on self.fmt string.
In the simplest case it is enough to override supp_kwargs and fmt class variables to get nice parametrized messages.
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
Inherited from Inherited from Inherited from |
|
|||
fmt = None hash(x) |
|||
msg = None hash(x) |
|||
supp_kwargs =
|
|
|||
Inherited from Inherited from |
|
x.__init__(...) initializes x; see help(type(x)) for signature
|
str(x)
|
Old exceptions supported only args and not kwargs. For sanity we do not allow to mix old and new behavior. |
Format kwargs before printing them. Resulting dictionary has to have keys necessary for str.format call on fmt class variable. |
Home | Trees | Indices | Help |
|
---|
Generated by Epydoc 3.0.1 on Fri Sep 30 08:16:42 2016 | http://epydoc.sourceforge.net |