summaryrefslogtreecommitdiff
path: root/libc/kernel/tools/cpp.py
diff options
context:
space:
mode:
authorDavid Turner <digit@android.com>2010-12-22 11:29:30 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2010-12-22 11:29:30 -0800
commit4ad2f19f14db1282339334f477808960a884733f (patch)
tree24759d331f1e77408be9475dd7a84f73e1274b2e /libc/kernel/tools/cpp.py
parentbe5755969d70668bbab0e0c0ed75ebd867189723 (diff)
parenta4f6d2281f979c013080e28b1f658c2ba9a8e9f3 (diff)
am a4f6d228: Merge "Add a method for replacing tokens in the preprocessed headers"
* commit 'a4f6d2281f979c013080e28b1f658c2ba9a8e9f3': Add a method for replacing tokens in the preprocessed headers
Diffstat (limited to 'libc/kernel/tools/cpp.py')
-rw-r--r--libc/kernel/tools/cpp.py10
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"""