Menu ▾ ▴

[r5]: / Python / base.py  Maximize  Restore  History

Download this file

59 lines (53 with data), 1.9 kB

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# coding: iso-8859-1
#
# script(ed/able/ing/ful) code compiler
# (c)2006 Tiago Rezende
# Distributed freely.
#
# Utility and base classes
#
import os
def isCIdentifierFormat(token):
# evaluates a given string to find if it contains
# a (formally) valid C identifier
if isnum(token[0]):
return False
elif isalpha(token[0]) or token[0]=='_':
for c in token[1:]:
if c=='_':
pass
elif not isalnum(c):
return False
return True
class BaseModule:
# base class for the scc modules, providing verbosity and
# error-message handling
def __init__(self, modulename):
self.verboselevel = 0
self.warninglevel = 0
self.modulename = modulename
self.messages = []
self.warnings = []
self.errors = []
def setVerbosity(self, verbosity):
# sets the verbosity level
self.verboselevel = verbosity
def setWarningLevel(self, level):
# sets the warning level
self.warninglevel = level
def addMessage(self, message, level):
# prints and adds a message if it's level is less than
# the current verbosity level
if(self.verboselevel>level):
print message
self.messages.append(message)
def addWarning(self, message, warningnum, level):
# prints and adds a warning if it's level is less than
# the current warning level
if(self.warninglevel>level):
print "" + self.modulename + " warning<" + warningnum + ">:" + message
self.warnings.append([message, warningnum])
def addError(self, message, errornum):
# prints and adds an error message
print "" + self.modulename + "error<" + errornum + ">: " + message
self.errors.append([message, errornum])