diff options
author | Keith Yeung <kungfukeith11@gmail.com> | 2016-04-17 17:09:37 -0400 |
---|---|---|
committer | Keith Yeung <kungfukeith11@gmail.com> | 2016-04-17 19:37:42 -0400 |
commit | c6b6d2c84ec101c858f54afc923fbddd8d671d0d (patch) | |
tree | a0c4010b86bee1906fc6b1e25fd8b4994f86552c | |
parent | a76af66abbf9efb217162eba270d0f332254992b (diff) | |
download | servo-c6b6d2c84ec101c858f54afc923fbddd8d671d0d.tar.gz servo-c6b6d2c84ec101c858f54afc923fbddd8d671d0d.zip |
Avoid generating parameter names that are Rust keywords
-rw-r--r-- | components/script/dom/bindings/codegen/CodegenRust.py | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/components/script/dom/bindings/codegen/CodegenRust.py b/components/script/dom/bindings/codegen/CodegenRust.py index 57b7be5c7bb..74dff1cce9f 100644 --- a/components/script/dom/bindings/codegen/CodegenRust.py +++ b/components/script/dom/bindings/codegen/CodegenRust.py @@ -36,6 +36,13 @@ TRACE_HOOK_NAME = '_trace' CONSTRUCT_HOOK_NAME = '_constructor' HASINSTANCE_HOOK_NAME = '_hasInstance' +RUST_KEYWORDS = {"abstract", "alignof", "as", "become", "box", "break", "const", "continue", + "else", "enum", "extern", "false", "final", "fn", "for", "if", "impl", "in", + "let", "loop", "macro", "match", "mod", "move", "mut", "offsetof", "override", + "priv", "proc", "pub", "pure", "ref", "return", "static", "self", "sizeof", + "struct", "super", "true", "trait", "type", "typeof", "unsafe", "unsized", + "use", "virtual", "where", "while", "yield"} + def replaceFileIfChanged(filename, newContents): """ @@ -5247,7 +5254,7 @@ class CGDictionary(CGThing): @staticmethod def makeMemberName(name): # Can't use Rust keywords as member names. - if name == "type": + if name in RUST_KEYWORDS: return name + "_" return name |