struct TargetGroup {
ids: SeqHashMap<TargetTriple, ItemId>,
}Expand description
A set of items that share the same base name and item kind. These are candidates for merging into a single cross-target item.
Fields§
§ids: SeqHashMap<TargetTriple, ItemId>Implementations§
Source§impl TargetGroup
impl TargetGroup
Sourcefn canonical_id(&self) -> ItemId
fn canonical_id(&self) -> ItemId
Deterministically chosen representative id.
Sourcefn is_function_group(&self) -> bool
fn is_function_group(&self) -> bool
Whether this group is a group of function items.
Sourcefn decide_merge(
&self,
krate: &TranslatedCrate,
remap: &HashMap<ItemId, ItemId>,
) -> MergeDecision
fn decide_merge( &self, krate: &TranslatedCrate, remap: &HashMap<ItemId, ItemId>, ) -> MergeDecision
Compare the items of this group under the provided id mapping.
Sourcefn remap_entries<'a>(&'a self) -> impl Iterator<Item = (ItemId, ItemId)> + 'a
fn remap_entries<'a>(&'a self) -> impl Iterator<Item = (ItemId, ItemId)> + 'a
Yields (non_canonical_id, canonical_id) pairs for building an ID remap.
fn into_remap_entries(self) -> impl Iterator<Item = (ItemId, ItemId)>
Sourcefn build_facade_decl(
&self,
def_id: FunDeclId,
krate: &TranslatedCrate,
) -> FunDecl
fn build_facade_decl( &self, def_id: FunDeclId, krate: &TranslatedCrate, ) -> FunDecl
Build a façade FunDecl for a group of functions with matching signatures but different
bodies. The def_id is set to a placeholder and must be fixed up on insertion.
Auto Trait Implementations§
impl Freeze for TargetGroup
impl RefUnwindSafe for TargetGroup
impl Send for TargetGroup
impl Sync for TargetGroup
impl Unpin for TargetGroup
impl UnwindSafe for TargetGroup
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
§impl<I, T> ExtractContext<I, ()> for T
impl<I, T> ExtractContext<I, ()> for T
§fn extract_context(self, _original_input: I)
fn extract_context(self, _original_input: I)
Given the context attached to a nom error, and given the original
input to the nom parser, extract more the useful context information. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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§impl<I> RecreateContext<I> for I
impl<I> RecreateContext<I> for I
§fn recreate_context(_original_input: I, tail: I) -> I
fn recreate_context(_original_input: I, tail: I) -> I
Given the original input, as well as the context reported by nom,
recreate a context in the original string where the error occurred. Read more