Struct rustc_query_system::query::QueryJob
source · pub struct QueryJob {
pub id: QueryJobId,
pub span: Span,
pub parent: Option<QueryJobId>,
}
Expand description
Represents an active query job.
Fields§
§id: QueryJobId
§span: Span
The span corresponding to the reason for which this query was required.
parent: Option<QueryJobId>
The parent query job which created this job and is implicitly waiting on it.
Implementations§
source§impl QueryJob
impl QueryJob
sourcepub fn new(id: QueryJobId, span: Span, parent: Option<QueryJobId>) -> Self
pub fn new(id: QueryJobId, span: Span, parent: Option<QueryJobId>) -> Self
Creates a new query job.
sourcepub fn signal_complete(self)
pub fn signal_complete(self)
Signals to waiters that the query is complete.
This does nothing for single threaded rustc, as there are no concurrent jobs which could be waiting on us
Trait Implementations§
Auto Trait Implementations§
impl RefUnwindSafe for QueryJob
impl !Send for QueryJob
impl !Sync for QueryJob
impl Unpin for QueryJob
impl UnwindSafe for QueryJob
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<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: &[QueryInfo], _guar: ErrorGuaranteed ) -> 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: 24 bytes