summaryrefslogtreecommitdiff
path: root/projects/hackc/parser.py
diff options
context:
space:
mode:
authorFrederick Yin <fkfd@fkfd.me>2022-08-29 22:59:56 +0800
committerFrederick Yin <fkfd@fkfd.me>2022-08-29 22:59:56 +0800
commitd303447dc7a830489828be2e66ccf8c36af4aed6 (patch)
tree53c02938a9b85ff94a5621371faa360f5630a6d8 /projects/hackc/parser.py
parent7f54baf2668a58f2908f8242b2fbafc65a7f684a (diff)
hackc: backslash escape extension
Diffstat (limited to 'projects/hackc/parser.py')
-rw-r--r--projects/hackc/parser.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/projects/hackc/parser.py b/projects/hackc/parser.py
index 400b096..f73c3d1 100644
--- a/projects/hackc/parser.py
+++ b/projects/hackc/parser.py
@@ -29,8 +29,9 @@ SYMBOLS = "{}()[].,;+-*/&|<>=~"
class Parser:
- def __init__(self, fp):
+ def __init__(self, fp, extensions=[]):
self._fp = fp
+ self._extensions = extensions
self.tokens = []
def print_tokens(self):
@@ -80,7 +81,7 @@ class Parser:
break
rem = line[pos:] # remainder of line
- token = Token.from_line(rem, line_no, pos)
+ token = Token.from_line(rem, line_no, pos, extensions=self._extensions)
if token is not None:
self.tokens.append(token)
pos += token.length()