rustc_middle/util/
mod.rs

1pub mod bug;
2
3#[derive(Default, Copy, Clone)]
4pub struct Providers {
5    pub queries: crate::query::Providers,
6    pub extern_queries: crate::query::ExternProviders,
7    pub hooks: crate::hooks::Providers,
8}
9
10/// Backwards compatibility hack to keep the diff small. This
11/// gives direct access to the `queries` field's fields, which
12/// are what almost everything wants access to.
13impl std::ops::DerefMut for Providers {
14    fn deref_mut(&mut self) -> &mut Self::Target {
15        &mut self.queries
16    }
17}
18
19impl std::ops::Deref for Providers {
20    type Target = crate::query::Providers;
21
22    fn deref(&self) -> &Self::Target {
23        &self.queries
24    }
25}