diff options
author | Yoav Alon <yoava333@gmail.com> | 2016-03-09 23:48:32 +0200 |
---|---|---|
committer | Yoav Alon <yoava333@gmail.com> | 2016-03-09 23:48:32 +0200 |
commit | 444eddb4a14bca067ba1f61f6a098aa38f099f67 (patch) | |
tree | f1a58d0766036ba3f1e766ed5f6de296b6015b92 /components/plugins/lints/ban.rs | |
parent | 25c6c29a27d2a176a967ee49d97a29ad1d3a140e (diff) | |
download | servo-444eddb4a14bca067ba1f61f6a098aa38f099f67.tar.gz servo-444eddb4a14bca067ba1f61f6a098aa38f099f67.zip |
Added compiler lint ban on DOMRefCell
Diffstat (limited to 'components/plugins/lints/ban.rs')
-rw-r--r-- | components/plugins/lints/ban.rs | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/components/plugins/lints/ban.rs b/components/plugins/lints/ban.rs index 02037a5d76a..0e1ebc94721 100644 --- a/components/plugins/lints/ban.rs +++ b/components/plugins/lints/ban.rs @@ -37,5 +37,11 @@ impl EarlyLintPass for BanPass { .is_some() { cx.span_lint(BANNED_TYPE, ty.span, "Banned type Cell<JSVal> detected. Use MutHeap<JSVal> instead") } + if match_ty_unwrap(ty, &["dom", "bindings", "cell", "DOMRefCell"]) + .and_then(|t| t.get(0)) + .and_then(|t| match_ty_unwrap(&**t, &["dom", "bindings", "js", "JS"])) + .is_some() { + cx.span_lint(BANNED_TYPE, ty.span, "Banned type DOMRefCell<JS<T>> detected. Use MutHeap<JS<T>> instead") + } } } |