pub trait TyEncoder<'tcx>: SpanEncoder {
const CLEAR_CROSS_CRATE: bool;
// Required methods
fn position(&self) -> usize;
fn type_shorthands(&mut self) -> &mut FxHashMap<Ty<'tcx>, usize>;
fn predicate_shorthands(
&mut self,
) -> &mut FxHashMap<PredicateKind<'tcx>, usize>;
fn encode_alloc_id(&mut self, alloc_id: &AllocId);
}
Required Associated Constants§
const CLEAR_CROSS_CRATE: bool
Required Methods§
fn position(&self) -> usize
fn type_shorthands(&mut self) -> &mut FxHashMap<Ty<'tcx>, usize>
fn predicate_shorthands(&mut self) -> &mut FxHashMap<PredicateKind<'tcx>, usize>
fn encode_alloc_id(&mut self, alloc_id: &AllocId)
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.