diff options
| author | flip1995 <9744647+flip1995@users.noreply.github.com> | 2018-07-03 13:50:48 +0200 |
|---|---|---|
| committer | flip1995 <9744647+flip1995@users.noreply.github.com> | 2018-07-04 12:16:46 +0200 |
| commit | dddb8d2eba04610eca944a659c1906f78d210ab4 (patch) | |
| tree | 5703a9130baef311c4e5bf1e245adb55d809037c /src/libsyntax/attr | |
| parent | ed29e86c39cde1a77a8b3a4046d12f9b57fb72fb (diff) | |
| download | rust-dddb8d2eba04610eca944a659c1906f78d210ab4.tar.gz rust-dddb8d2eba04610eca944a659c1906f78d210ab4.zip | |
Implementation of tool lints
Diffstat (limited to 'src/libsyntax/attr')
| -rw-r--r-- | src/libsyntax/attr/mod.rs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/libsyntax/attr/mod.rs b/src/libsyntax/attr/mod.rs index 4e27d6c1525..f8db62083c7 100644 --- a/src/libsyntax/attr/mod.rs +++ b/src/libsyntax/attr/mod.rs @@ -90,6 +90,7 @@ pub fn is_known(attr: &Attribute) -> bool { } const RUST_KNOWN_TOOL: &[&str] = &["clippy", "rustfmt"]; +const RUST_KNOWN_LINT_TOOL: &[&str] = &["clippy"]; pub fn is_known_tool(attr: &Attribute) -> bool { let tool_name = @@ -97,6 +98,12 @@ pub fn is_known_tool(attr: &Attribute) -> bool { RUST_KNOWN_TOOL.contains(&tool_name.as_str().as_ref()) } +pub fn is_known_lint_tool(m_item: &MetaItem) -> bool { + let tool_name = + m_item.ident.segments.iter().next().expect("empty path in meta item").ident.name; + RUST_KNOWN_LINT_TOOL.contains(&tool_name.as_str().as_ref()) +} + impl NestedMetaItem { /// Returns the MetaItem if self is a NestedMetaItemKind::MetaItem. pub fn meta_item(&self) -> Option<&MetaItem> { @@ -290,6 +297,10 @@ impl MetaItem { pub fn is_meta_item_list(&self) -> bool { self.meta_item_list().is_some() } + + pub fn is_scoped(&self) -> bool { + self.ident.segments.len() > 1 + } } impl Attribute { |
