util.py revision 9da6b1244191319b39779307d60d7729811d3d5c
1import inspect 2import os 3import sys 4 5def _write_message(kind, message): 6 # Get the file/line where this message was generated. 7 f = inspect.currentframe() 8 # Step out of _write_message, and then out of wrapper. 9 f = f.f_back.f_back 10 file,line,_,_,_ = inspect.getframeinfo(f) 11 location = '%s:%d' % (os.path.basename(file), line) 12 13 print >>sys.stderr, '%s: %s: %s' % (location, kind, message) 14 15note = lambda message: _write_message('note', message) 16warning = lambda message: _write_message('warning', message) 17error = lambda message: _write_message('error', message) 18fatal = lambda message: (_write_message('fatal error', message), sys.exit(1)) 19 20__all__ = ['note', 'warning', 'error', 'fatal'] 21