summaryrefslogtreecommitdiff
path: root/Parser/asdl.py
diff options
context:
space:
mode:
authorEli Bendersky <eliben@gmail.com>2013-09-26 06:31:32 -0700
committerEli Bendersky <eliben@gmail.com>2013-09-26 06:31:32 -0700
commit30fa9a139ac4a5737dfd7b10097fb7997c319f92 (patch)
treeed30fb7d1dcb4bdfe6701df029a05a5bf92ce360 /Parser/asdl.py
parent65786e6f018ad2211b931ce4377a2068d46bc811 (diff)
downloadcpython-30fa9a139ac4a5737dfd7b10097fb7997c319f92.tar.gz
Small fixes in Parser/asdl.py - no change in functionality.
1. Make it work when invoked directly from the command-line. It was failing due to a couple of stale function/class usages in the __main__ section. 2. Close the parsed file in the parse() function after opening it.
Diffstat (limited to 'Parser/asdl.py')
-rw-r--r--Parser/asdl.py10
1 files changed, 6 insertions, 4 deletions
diff --git a/Parser/asdl.py b/Parser/asdl.py
index 7df76c0e38..25987b8659 100644
--- a/Parser/asdl.py
+++ b/Parser/asdl.py
@@ -16,8 +16,9 @@ import traceback
import spark
-def output(string):
- sys.stdout.write(string + "\n")
+def output(*strings):
+ for s in strings:
+ sys.stdout.write(str(s) + "\n")
class Token(object):
@@ -397,7 +398,8 @@ def parse(file):
scanner = ASDLScanner()
parser = ASDLParser()
- buf = open(file).read()
+ with open(file) as f:
+ buf = f.read()
tokens = scanner.tokenize(buf)
try:
return parser.parse(tokens)
@@ -428,4 +430,4 @@ if __name__ == "__main__":
output("Check failed")
else:
for dfn in mod.dfns:
- output(dfn.type)
+ output(dfn.name, dfn.value)