diff options
| author | Michael Goulet <michael@errs.io> | 2023-01-17 20:16:30 +0000 |
|---|---|---|
| committer | Michael Goulet <michael@errs.io> | 2023-01-18 14:59:15 +0000 |
| commit | 45aa5c0f90124e926662f2c2c2d9efca065e0397 (patch) | |
| tree | 87d03497d2bf6aee587b3e1fe7074260aa713c50 /compiler/rustc_middle/src | |
| parent | 3d87a8e84850e2f5edc0f87ab2f4d3c2b67a48ac (diff) | |
Auto and alias traits
Diffstat (limited to 'compiler/rustc_middle/src')
| -rw-r--r-- | compiler/rustc_middle/src/ty/mod.rs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/rustc_middle/src/ty/mod.rs b/compiler/rustc_middle/src/ty/mod.rs index e68f27cc0fd..db7dd2e5e75 100644 --- a/compiler/rustc_middle/src/ty/mod.rs +++ b/compiler/rustc_middle/src/ty/mod.rs @@ -2382,6 +2382,11 @@ impl<'tcx> TyCtxt<'tcx> { self.trait_def(trait_def_id).has_auto_impl } + /// Returns `true` if this is a trait alias. + pub fn trait_is_alias(self, trait_def_id: DefId) -> bool { + self.def_kind(trait_def_id) == DefKind::TraitAlias + } + pub fn trait_is_coinductive(self, trait_def_id: DefId) -> bool { self.trait_is_auto(trait_def_id) || self.lang_items().sized_trait() == Some(trait_def_id) } |
