rustc_dep_node_try_load_from_on_disk_cache!(dep_node, tcx)
}
-/// An analogue of the `Into` trait that's intended only for query paramaters.
-///
-/// This exists to allow queries to accept either `DefId` or `LocalDefId` while requiring that the
-/// user call `to_def_id` to convert between them everywhere else.
-pub trait IntoQueryParam<P> {
- fn into_query_param(self) -> P;
-}
+mod sealed {
+ use super::{DefId, LocalDefId};
+
+ /// An analogue of the `Into` trait that's intended only for query paramaters.
+ ///
+ /// This exists to allow queries to accept either `DefId` or `LocalDefId` while requiring that the
+ /// user call `to_def_id` to convert between them everywhere else.
+ pub trait IntoQueryParam<P> {
+ fn into_query_param(self) -> P;
+ }
-impl<P> IntoQueryParam<P> for P {
- fn into_query_param(self) -> P {
- self
+ impl<P> IntoQueryParam<P> for P {
+ fn into_query_param(self) -> P {
+ self
+ }
}
-}
-impl IntoQueryParam<DefId> for LocalDefId {
- fn into_query_param(self) -> DefId {
- self.to_def_id()
+ impl IntoQueryParam<DefId> for LocalDefId {
+ fn into_query_param(self) -> DefId {
+ self.to_def_id()
+ }
}
}
+
+use sealed::IntoQueryParam;
}
}
-impl From<LocalDefId> for DefId {
- fn from(v: LocalDefId) -> Self {
- v.to_def_id()
- }
-}
-
impl rustc_serialize::UseSpecializedEncodable for LocalDefId {}
impl rustc_serialize::UseSpecializedDecodable for LocalDefId {}