blob: 6605ad2cb1616d37850c7945232c96b6249505bd [file] [log] [blame]
Greg Ward2689e3d1999-03-22 14:52:19 +00001"""distutils.errors
2
3Provides exceptions used by the Distutils modules. Note that Distutils
4modules may raise standard exceptions; in particular, SystemExit is
5usually raised for errors that are obviously the end-user's fault
6(eg. bad command-line arguments).
7
8This module safe to use in "from ... import *" mode; it only exports
9symbols whose names start with "Distutils" and end with "Error"."""
10
11# created 1999/03/03, Greg Ward
12
13__rcsid__ = "$Id$"
14
15from types import *
16
17if type (RuntimeError) is ClassType:
18
19 # DistutilsError is the root of all Distutils evil.
20 class DistutilsError (Exception):
21 pass
22
23 # DistutilsModuleError is raised if we are unable to load an expected
24 # module, or find an expected class within some module
25 class DistutilsModuleError (DistutilsError):
26 pass
27
28 # DistutilsClassError is raised if we encounter a distribution or command
29 # class that's not holding up its end of the bargain.
30 class DistutilsClassError (DistutilsError):
31 pass
32
33 # DistutilsGetoptError (help me -- I have JavaProgrammersDisease!) is
34 # raised if the option table provided to fancy_getopt is bogus.
35 class DistutilsGetoptError (DistutilsError):
36 pass
37
38 # DistutilsArgError is raised by fancy_getopt in response to getopt.error;
39 # distutils.core then turns around and raises SystemExit from that. (Thus
40 # client code should never see DistutilsArgError.)
41 class DistutilsArgError (DistutilsError):
42 pass
43
44 # DistutilsFileError is raised for any problems in the filesystem:
45 # expected file not found, etc.
46 class DistutilsFileError (DistutilsError):
47 pass
48
49 # DistutilsOptionError is raised anytime an attempt is made to access
50 # (get or set) an option that does not exist for a particular command
51 # (or for the distribution itself).
52 class DistutilsOptionError (DistutilsError):
53 pass
54
55# String-based exceptions
56else:
57 DistutilsError = 'DistutilsError'
58 DistutilsModuleError = 'DistutilsModuleError'
59 DistutilsClassError = 'DistutilsClassError'
60 DistutilsGetoptError = 'DistutilsGetoptError'
61 DistutilsArgError = 'DistutilsArgError'
62 DistutilsFileError = 'DistutilsFileError'
63 DistutilsOptionError = 'DistutilsOptionError'