summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-06-06 22:28:29 +0300
committerAndrei Karas <akaras@inbox.ru>2015-06-06 22:28:29 +0300
commit98568a54bbc3b673a09d60a149734a45fbe9cfab (patch)
tree6f39510e2b4cc33f7c73f9fc35ce079d7fa882ef /scripts
parentcece4c61572038cb4116acb05170346a5c89aef8 (diff)
downloadparanucker-98568a54bbc3b673a09d60a149734a45fbe9cfab.tar.gz
paranucker-98568a54bbc3b673a09d60a149734a45fbe9cfab.tar.bz2
paranucker-98568a54bbc3b673a09d60a149734a45fbe9cfab.tar.xz
paranucker-98568a54bbc3b673a09d60a149734a45fbe9cfab.zip
In generate script add support for add new data into includes.
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/addfile.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/scripts/addfile.py b/scripts/addfile.py
index 6f55842..42d3aef 100755
--- a/scripts/addfile.py
+++ b/scripts/addfile.py
@@ -9,8 +9,8 @@ import sys
def readFile(path):
with open(path, "r") as f:
return f.read()
-def writeFile(fileName, data):
- with open(fileName, "w") as w:
+def writeFile(fileName, data, opts="w"):
+ with open(fileName, opts) as w:
w.write(data)
def firstBigLetter(text):
return text[0].upper() + text[1:]
@@ -19,6 +19,9 @@ def firstBigLetter(text):
if len(sys.argv) < 2 or len(sys.argv) > 3:
print "Usage:"
print " addfile.py [dir] nodename"
+ print "Examples:"
+ print " addfile.py expr TestExpr"
+ print " addfile.py TestNode"
exit(1)
nodeTemplate = readFile("tpl/node.tpl")
@@ -84,3 +87,9 @@ writeFile(nodeFileName,
nodeTemplate.format(guardHeader, baseName, typeName, baseTypeName))
writeFile(parserFileName,
parserTemplate.format(typeName, nodeInclude, parserBaseInclude, parserAdditionalCode1, parserAdditionalCode2))
+writeFile("../src/includes/nodeincludes.h",
+ "#include \"nodes/{0}.h\"\n".format(nodeInclude), "a");
+writeFile("../src/includes/nodeshandling.inc",
+ "handleNodeType({0}, {1})\n".format(guardHeader, typeName), "a");
+writeFile("../src/includes/parserdefines.inc",
+ "parserDefine({0});\n".format(typeName), "a");