summaryrefslogtreecommitdiffstats
path: root/src/scan_states.py
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2019-09-16 18:09:11 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2019-09-16 18:09:11 (GMT)
commitcb013aff054c246d99f1211acf16312a27da7be1 (patch)
tree36e39a359edda686e31364ea5be7707f9220de7e /src/scan_states.py
parent3cf30e72e6b58c70c5a8330cecec4b33fa736852 (diff)
downloadDoxygen-cb013aff054c246d99f1211acf16312a27da7be1.zip
Doxygen-cb013aff054c246d99f1211acf16312a27da7be1.tar.gz
Doxygen-cb013aff054c246d99f1211acf16312a27da7be1.tar.bz2
Simplified code generated by scan_states.py
Diffstat (limited to 'src/scan_states.py')
-rw-r--r--src/scan_states.py20
1 files changed, 8 insertions, 12 deletions
diff --git a/src/scan_states.py b/src/scan_states.py
index 7f69fdd..e156b97 100644
--- a/src/scan_states.py
+++ b/src/scan_states.py
@@ -24,30 +24,26 @@ def main():
lex_file = sys.argv[1]
if (os.path.exists(lex_file)):
#write preamble
- print("#define scanStateToString(x) case x: resultString = #x; break;");
- print("static const char *stateToString(int state)");
- print("{");
- print(" const char *resultString;");
- print(" switch(state)");
- print(" {");
- print(" scanStateToString(INITIAL)");
+ print("static const char *stateToString(int state)")
+ print("{")
+ print(" switch(state)")
+ print(" {")
+ print(" case INITIAL: return \"INITIAL\";")
with open(lex_file) as f:
for line in f:
if re.search(r'^%x', line) or re.search(r'^%s', line):
- print(" scanStateToString(%s)"%line.split()[1]);
+ state = line.split()[1]
+ print(" case %s: return \"%s\";" % (state,state))
elif re.search(r'^%%', line):
break
else:
pass
f.close()
#write post
- print(" default: resultString = \"Unknown\"; break;")
print(" }")
- print(" return resultString;")
+ print(" return \"Unknown\";")
print("}")
-
-
if __name__ == '__main__':
main()