Struct rustc_query_system::query::QuerySideEffects
source · pub struct QuerySideEffects {
pub(crate) diagnostics: ThinVec<Diagnostic>,
}
Expand description
Tracks ‘side effects’ for a particular query. This struct is saved to disk along with the query result, and loaded from disk if we mark the query as green. This allows us to ‘replay’ changes to global state that would otherwise only occur if we actually executed the query method.
Fields§
§diagnostics: ThinVec<Diagnostic>
Stores any diagnostics emitted during query execution. These diagnostics will be re-emitted if we mark the query as green.
Implementations§
Trait Implementations§
source§impl Clone for QuerySideEffects
impl Clone for QuerySideEffects
source§fn clone(&self) -> QuerySideEffects
fn clone(&self) -> QuerySideEffects
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for QuerySideEffects
impl Debug for QuerySideEffects
source§impl<__D: Decoder> Decodable<__D> for QuerySideEffects
impl<__D: Decoder> Decodable<__D> for QuerySideEffects
source§impl Default for QuerySideEffects
impl Default for QuerySideEffects
source§fn default() -> QuerySideEffects
fn default() -> QuerySideEffects
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl RefUnwindSafe for QuerySideEffects
impl !Send for QuerySideEffects
impl !Sync for QuerySideEffects
impl Unpin for QuerySideEffects
impl UnwindSafe for QuerySideEffects
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: 8 bytes