struct LiveExportCollector<'a> {
cx: &'a Context,
module: &'a Module,
live_exports: IndexSet<ExportKey, BuildHasherDefault<FxHasher>>,
seen_types: FxHashSet<Type>,
seen_consts: FxHashSet<Const>,
seen_data_inst_forms: FxHashSet<DataInstForm>,
seen_global_vars: FxHashSet<GlobalVar>,
seen_funcs: FxHashSet<Func>,
}
Fields§
§cx: &'a Context
§module: &'a Module
§live_exports: IndexSet<ExportKey, BuildHasherDefault<FxHasher>>
§seen_types: FxHashSet<Type>
§seen_consts: FxHashSet<Const>
§seen_data_inst_forms: FxHashSet<DataInstForm>
§seen_global_vars: FxHashSet<GlobalVar>
§seen_funcs: FxHashSet<Func>
Trait Implementations§
source§impl Visitor<'_> for LiveExportCollector<'_>
impl Visitor<'_> for LiveExportCollector<'_>
fn visit_attr_set_use(&mut self, _attrs: AttrSet)
fn visit_type_use(&mut self, ty: Type)
fn visit_const_use(&mut self, ct: Const)
fn visit_data_inst_form_use(&mut self, data_inst_form: DataInstForm)
fn visit_global_var_use(&mut self, gv: GlobalVar)
fn visit_func_use(&mut self, func: Func)
fn visit_import(&mut self, import: &Import)
fn visit_spv_dialect(&mut self, _dialect: &Dialect)
fn visit_spv_module_debug_info(&mut self, _debug_info: &ModuleDebugInfo)
fn visit_module(&mut self, module: &'a Module)
fn visit_module_dialect(&mut self, dialect: &'a ModuleDialect)
fn visit_module_debug_info(&mut self, debug_info: &'a ModuleDebugInfo)
fn visit_attr_set_def(&mut self, attrs_def: &'a AttrSetDef)
fn visit_attr(&mut self, attr: &'a Attr)
fn visit_type_def(&mut self, ty_def: &'a TypeDef)
fn visit_const_def(&mut self, ct_def: &'a ConstDef)
fn visit_global_var_decl(&mut self, gv_decl: &'a GlobalVarDecl)
fn visit_func_decl(&mut self, func_decl: &'a FuncDecl)
fn visit_control_region_def( &mut self, func_at_control_region: FuncAt<'a, ControlRegion>, )
fn visit_control_node_def( &mut self, func_at_control_node: FuncAt<'a, ControlNode>, )
fn visit_data_inst_def(&mut self, data_inst_def: &'a DataInstDef)
fn visit_data_inst_form_def(&mut self, data_inst_form_def: &'a DataInstFormDef)
fn visit_value_use(&mut self, v: &'a Value)
Auto Trait Implementations§
impl<'a> Freeze for LiveExportCollector<'a>
impl<'a> !RefUnwindSafe for LiveExportCollector<'a>
impl<'a> !Send for LiveExportCollector<'a>
impl<'a> !Sync for LiveExportCollector<'a>
impl<'a> Unpin for LiveExportCollector<'a>
impl<'a> !UnwindSafe for LiveExportCollector<'a>
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
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more