Commit f11296bd authored by Greg Ward's avatar Greg Ward

[change from 2000/08/11, propagating now to distutils copy]

Factored the guts of 'warn()' out to 'gen_error()', and added the
'error()' method (trivial thanks to the refactoring).
parent 60cd2864
...@@ -134,6 +134,22 @@ class TextFile: ...@@ -134,6 +134,22 @@ class TextFile:
self.current_line = None self.current_line = None
def gen_error (self, msg, line=None):
outmsg = []
if line is None:
line = self.current_line
outmsg.append(self.filename + ", ")
if type (line) in (ListType, TupleType):
outmsg.append("lines %d-%d: " % tuple (line))
else:
outmsg.append("line %d: " % line)
outmsg.append(str(msg))
return string.join(outmsg, "")
def error (self, msg, line=None):
raise ValueError, "error: " + self.gen_error(msg, line)
def warn (self, msg, line=None): def warn (self, msg, line=None):
"""Print (to stderr) a warning message tied to the current logical """Print (to stderr) a warning message tied to the current logical
line in the current file. If the current logical line in the line in the current file. If the current logical line in the
...@@ -142,15 +158,7 @@ class TextFile: ...@@ -142,15 +158,7 @@ class TextFile:
the current line number; it may be a list or tuple to indicate a the current line number; it may be a list or tuple to indicate a
range of physical lines, or an integer for a single physical range of physical lines, or an integer for a single physical
line.""" line."""
sys.stderr.write("warning: " + self.gen_error(msg, line) + "\n")
if line is None:
line = self.current_line
sys.stderr.write (self.filename + ", ")
if type (line) in (ListType, TupleType):
sys.stderr.write ("lines %d-%d: " % tuple (line))
else:
sys.stderr.write ("line %d: " % line)
sys.stderr.write (str (msg) + "\n")
def readline (self): def readline (self):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment