summaryrefslogtreecommitdiff
path: root/preprocessor.py
diff options
context:
space:
mode:
Diffstat (limited to 'preprocessor.py')
-rw-r--r--preprocessor.py18
1 files changed, 16 insertions, 2 deletions
diff --git a/preprocessor.py b/preprocessor.py
index 150ea951d..5f19953bb 100644
--- a/preprocessor.py
+++ b/preprocessor.py
@@ -552,6 +552,7 @@ def include_file(asm):
read_line(line)
def read_line(l):
+ """Preprocesses a given line of asm."""
# strip and store any comment on this line
if ";" in l:
asm, comment = separate_comment(l)
@@ -581,5 +582,18 @@ def read_line(l):
if comment != None:
sys.stdout.write(comment)
-for l in sys.stdin:
- read_line(l)
+def preprocess(lines=None):
+ """Main entry point for the preprocessor."""
+ if not lines:
+ # read each line from stdin
+ lines = sys.stdin
+ elif not isinstance(lines, list):
+ # split up the input into individual lines
+ lines = lines.split("\n")
+
+ for l in lines:
+ read_line(l)
+
+# only run against stdin when not included as a module
+if __name__ == "__main__":
+ preprocess()