Skip to content

Commit

Permalink
Remove LateContext::match_def_path()
Browse files Browse the repository at this point in the history
This function was only kept for Clippy use. The last use in Clippy was
removed in c9315bc.
  • Loading branch information
samueltardieu committed Jan 29, 2025
1 parent 61cc3e5 commit 0bb3d52
Showing 1 changed file with 1 addition and 25 deletions.
26 changes: 1 addition & 25 deletions compiler/rustc_lint/src/context.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
//! overview of how lints are implemented.
use std::cell::Cell;
use std::{iter, slice};
use std::slice;

use rustc_data_structures::fx::FxIndexMap;
use rustc_data_structures::sync;
Expand Down Expand Up @@ -718,30 +718,6 @@ impl<'tcx> LateContext<'tcx> {
}
}

/// Check if a `DefId`'s path matches the given absolute type path usage.
///
/// Anonymous scopes such as `extern` imports are matched with `kw::Empty`;
/// inherent `impl` blocks are matched with the name of the type.
///
/// Instead of using this method, it is often preferable to instead use
/// `rustc_diagnostic_item` or a `lang_item`. This is less prone to errors
/// as paths get invalidated if the target definition moves.
///
/// # Examples
///
/// ```rust,ignore (no context or def id available)
/// if cx.match_def_path(def_id, &[sym::core, sym::option, sym::Option]) {
/// // The given `def_id` is that of an `Option` type
/// }
/// ```
///
/// Used by clippy, but should be replaced by diagnostic items eventually.
pub fn match_def_path(&self, def_id: DefId, path: &[Symbol]) -> bool {
let names = self.get_def_path(def_id);

names.len() == path.len() && iter::zip(names, path).all(|(a, &b)| a == b)
}

/// Gets the absolute path of `def_id` as a vector of `Symbol`.
///
/// # Examples
Expand Down

0 comments on commit 0bb3d52

Please sign in to comment.