pub struct FindRefinementBlockers {
pub base: TypeOnceVisitor,
pub found: DenseHashSet<TypeId>,
}Fields§
§base: TypeOnceVisitor§found: DenseHashSet<TypeId>Implementations§
Source§impl FindRefinementBlockers
impl FindRefinementBlockers
pub fn find_refinement_blockers() -> Self
Source§impl FindRefinementBlockers
impl FindRefinementBlockers
pub fn visit_type_id_blocked_type( &mut self, ty: TypeId, _blocked: &BlockedType, ) -> bool
Source§impl FindRefinementBlockers
impl FindRefinementBlockers
pub fn visit_type_id_pending_expansion_type( &mut self, ty: TypeId, _pending: &PendingExpansionType, ) -> bool
Source§impl FindRefinementBlockers
impl FindRefinementBlockers
pub fn visit_type_id_extern_type( &mut self, _ty: TypeId, _extern: &ExternType, ) -> bool
Source§impl FindRefinementBlockers
impl FindRefinementBlockers
pub fn new() -> Self
pub fn visit_blocked_type(&mut self, ty: TypeId, _btv: &BlockedType) -> bool
pub fn visit_pending_expansion_type( &mut self, ty: TypeId, _petv: &PendingExpansionType, ) -> bool
pub fn visit_extern_type(&mut self, _ty: TypeId, _etv: &ExternType) -> bool
Trait Implementations§
Source§impl Clone for FindRefinementBlockers
impl Clone for FindRefinementBlockers
Source§fn clone(&self) -> FindRefinementBlockers
fn clone(&self) -> FindRefinementBlockers
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for FindRefinementBlockers
impl Debug for FindRefinementBlockers
Source§impl GenericTypeVisitorTrait for FindRefinementBlockers
impl GenericTypeVisitorTrait for FindRefinementBlockers
type Seen = DenseHashSet<*mut c_void>
fn visitor_base(&mut self) -> &mut GenericTypeVisitor<Self::Seen>
fn visit_type_id_blocked_type(&mut self, ty: TypeId, btv: &BlockedType) -> bool
fn visit_type_id_pending_expansion_type( &mut self, ty: TypeId, petv: &PendingExpansionType, ) -> bool
fn visit_type_id_extern_type(&mut self, ty: TypeId, etv: &ExternType) -> bool
fn cycle_type_id(&mut self, _ty: TypeId)
fn cycle_type_pack_id(&mut self, _tp: TypePackId)
fn visit_type_id(&mut self, _ty: TypeId) -> bool
fn visit_type_id_bound_type(&mut self, ty: TypeId, _btv: &BoundType) -> bool
fn visit_type_id_free_type(&mut self, ty: TypeId, _ftv: &FreeType) -> bool
fn visit_type_id_generic_type(&mut self, ty: TypeId, _gtv: &GenericType) -> bool
fn visit_type_id_error_type(&mut self, ty: TypeId, _etv: &ErrorType) -> bool
fn visit_type_id_primitive_type( &mut self, ty: TypeId, _ptv: &PrimitiveType, ) -> bool
fn visit_type_id_function_type( &mut self, ty: TypeId, _ftv: &FunctionType, ) -> bool
fn visit_type_id_table_type(&mut self, ty: TypeId, _ttv: &TableType) -> bool
fn visit_type_id_metatable_type( &mut self, ty: TypeId, _mtv: &MetatableType, ) -> bool
fn visit_type_id_any_type(&mut self, ty: TypeId, _atv: &AnyType) -> bool
fn visit_type_id_no_refine_type( &mut self, ty: TypeId, _nrt: &NoRefineType, ) -> bool
fn visit_type_id_unknown_type(&mut self, ty: TypeId, _utv: &UnknownType) -> bool
fn visit_type_id_never_type(&mut self, ty: TypeId, _ntv: &NeverType) -> bool
fn visit_type_id_union_type(&mut self, ty: TypeId, _utv: &UnionType) -> bool
fn visit_type_id_intersection_type( &mut self, ty: TypeId, _itv: &IntersectionType, ) -> bool
fn visit_type_id_singleton_type( &mut self, ty: TypeId, _stv: &SingletonType, ) -> bool
fn visit_type_id_negation_type( &mut self, ty: TypeId, _ntv: &NegationType, ) -> bool
fn visit_type_id_type_function_instance_type( &mut self, ty: TypeId, _tfit: &TypeFunctionInstanceType, ) -> bool
fn visit_type_pack_id(&mut self, _tp: TypePackId) -> bool
fn visit_type_pack_id_bound_type_pack( &mut self, tp: TypePackId, _btp: &BoundTypePack, ) -> bool
fn visit_type_pack_id_free_type_pack( &mut self, tp: TypePackId, _ftp: &FreeTypePack, ) -> bool
fn visit_type_pack_id_generic_type_pack( &mut self, tp: TypePackId, _gtp: &GenericTypePack, ) -> bool
fn visit_type_pack_id_error_type_pack( &mut self, tp: TypePackId, _etp: &ErrorTypePack, ) -> bool
fn visit_type_pack_id_type_pack( &mut self, tp: TypePackId, _pack: &TypePack, ) -> bool
fn visit_type_pack_id_variadic_type_pack( &mut self, tp: TypePackId, _vtp: &VariadicTypePack, ) -> bool
fn visit_type_pack_id_blocked_type_pack( &mut self, tp: TypePackId, _btp: &BlockedTypePack, ) -> bool
fn visit_type_pack_id_type_function_instance_type_pack( &mut self, tp: TypePackId, _tfitp: &TypeFunctionInstanceTypePack, ) -> bool
Source§fn traverse_type_id(&mut self, ty: TypeId)where
Self: Sized,
fn traverse_type_id(&mut self, ty: TypeId)where
Self: Sized,
C++
void traverse(TypeId ty) (VisitType.h:217). Body in the traverse
node file.Source§fn traverse_type_pack_id(&mut self, tp: TypePackId)where
Self: Sized,
fn traverse_type_pack_id(&mut self, tp: TypePackId)where
Self: Sized,
C++
void traverse(TypePackId tp) (VisitType.h:444).Auto Trait Implementations§
impl !Send for FindRefinementBlockers
impl !Sync for FindRefinementBlockers
impl Freeze for FindRefinementBlockers
impl RefUnwindSafe for FindRefinementBlockers
impl Unpin for FindRefinementBlockers
impl UnsafeUnpin for FindRefinementBlockers
impl UnwindSafe for FindRefinementBlockers
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more