Struct rustc_mir_transform::coverage::spans::from_mir::SpanFromMir
source · pub(super) struct SpanFromMir {
pub(super) span: Span,
visible_macro: Option<Symbol>,
pub(super) bcb: BasicCoverageBlock,
pub(super) is_hole: bool,
}
Fields§
§span: Span
A span that has been extracted from MIR and then “un-expanded” back to
within the current function’s body_span
. After various intermediate
processing steps, this span is emitted as part of the final coverage
mappings.
With the exception of fn_sig_span
, this should always be contained
within body_span
.
visible_macro: Option<Symbol>
§bcb: BasicCoverageBlock
§is_hole: bool
If true, this covspan represents a “hole” that should be carved out from other spans, e.g. because it represents a closure expression that will be instrumented separately as its own function.
Implementations§
source§impl SpanFromMir
impl SpanFromMir
fn for_fn_sig(fn_sig_span: Span) -> Self
fn new( span: Span, visible_macro: Option<Symbol>, bcb: BasicCoverageBlock, is_hole: bool ) -> Self
Trait Implementations§
Auto Trait Implementations§
impl DynSend for SpanFromMir
impl DynSync for SpanFromMir
impl Freeze for SpanFromMir
impl RefUnwindSafe for SpanFromMir
impl Send for SpanFromMir
impl Sync for SpanFromMir
impl Unpin for SpanFromMir
impl UnwindSafe for SpanFromMir
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
source§impl<T, R> CollectAndApply<T, R> for T
impl<T, R> CollectAndApply<T, R> for T
§impl<T> Filterable for T
impl<T> Filterable for T
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<P> IntoQueryParam<P> for P
impl<P> IntoQueryParam<P> for P
fn into_query_param(self) -> P
source§impl<T> MaybeResult<T> for T
impl<T> MaybeResult<T> for T
§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<'tcx, T> ToPredicate<'tcx, T> for T
impl<'tcx, T> ToPredicate<'tcx, T> for T
fn to_predicate(self, _tcx: TyCtxt<'tcx>) -> T
source§impl<Tcx, T> Value<Tcx> for Twhere
Tcx: DepContext,
impl<Tcx, T> Value<Tcx> for Twhere
Tcx: DepContext,
default fn from_cycle_error( tcx: Tcx, cycle_error: &CycleError, _guar: ErrorGuaranteed ) -> T
source§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
source§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
impl<'a, T> Captures<'a> for Twhere
T: ?Sized,
impl<'a, T> Captures<'a> for Twhere
T: ?Sized,
impl<T> ErasedDestructor for Twhere
T: 'static,
impl<T> MaybeSendSync for T
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 20 bytes