diff options
-rw-r--r-- | libc/kernel/tools/cpp.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libc/kernel/tools/cpp.py b/libc/kernel/tools/cpp.py index 4b4bd3826..8828a5d23 100644 --- a/libc/kernel/tools/cpp.py +++ b/libc/kernel/tools/cpp.py @@ -1863,6 +1863,16 @@ class BlockList: tokens = tokens[:-1] # remove trailing tokLN self.blocks = [ Block(tokens) ] + self.blocks + def replaceTokens(self,replacements=dict()): + """replace tokens according to the given dict + """ + for b in self.blocks: + if not b.isDirective(): + for tok in b.tokens: + if tok.id == tokIDENT: + if tok.value in replacements: + tok.value = replacements[tok.value] + class BlockParser: """a class used to convert an input source file into a BlockList object""" |