[−][src]Struct c2rust_refactor::analysis::ownership::MonoResult
Results specific to a function monomorphization.
Each monomorphization has a parent FunctionResult
and a parent VariantResult
. If the
function's variants
field is None
, then the ID of the variant is the same as the function
ID. Otherwise, the variant ID is found by indexing into variants
with the index of this
monomorphization.
Fields
suffix: String
Suffix to add to the function name when this monomorphization is split into its own fn
.
Usually something like "mut"
or "take"
. If empty, the original name should be used.
assign: IndexVec<Var, ConcretePerm>
Assignment of concrete permission values to the signature variables of the function. All
monomorphizations use the sig
that appears in their parent FunctionResult
, but each has
a different assignments to the SigVar
s.
The length of assign
should be equal to the parent FunctionResult
's num_sig_vars
.
callee_mono_idxs: Vec<usize>
Index of the chosen monomorphization for each function reference. These entries correspond
to those in the parent VariantResult
's func_refs
field.
Auto Trait Implementations
impl Send for MonoResult
impl Sync for MonoResult
Blanket Implementations
impl<T> Lone for T
[src]
impl<T> From for T
[src]
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<E> SpecializationError for E
[src]
default fn not_found<S, T>(
trait_name: &'static str,
method_name: &'static str
) -> E where
T: ?Sized,
[src]
trait_name: &'static str,
method_name: &'static str
) -> E where
T: ?Sized,
impl<T> Erased for T
[src]
impl<T> Send for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Sync for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Same for T
type Output = T
Should always be Self
impl<T> MaybeResult for T
[src]
impl<'a, T> Captures for T where
T: ?Sized,
[src]
T: ?Sized,