pub struct CheckResult {
pub env: Env,
pub references: GPooled<Vec<ReferenceSite>>,
pub module_references: GPooled<Vec<ModuleRefSite>>,
pub scope_map: GPooled<Vec<ScopeMapEntry>>,
pub lsp: Lsp,
}Expand description
Result of a typecheck-only compile pass. Carries the env as it
would be after the source was compiled, plus the set of resolved
name references and module references encountered during
compilation. The IDE-side collections are GPooled so the buffers
return to the runtime-side named pools after crossing the LSP
thread boundary, keeping the recompile-per-keystroke loop
allocation-free in steady state.
Fields§
§env: Env§references: GPooled<Vec<ReferenceSite>>§module_references: GPooled<Vec<ModuleRefSite>>§scope_map: GPooled<Vec<ScopeMapEntry>>§lsp: LspIDE side-channels populated only in lsp_mode: type references,
sig→impl bind links, and per-module impl-side env snapshots.
Empty for non-LSP compiles.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for CheckResult
impl !RefUnwindSafe for CheckResult
impl Send for CheckResult
impl Sync for CheckResult
impl Unpin for CheckResult
impl UnsafeUnpin for CheckResult
impl !UnwindSafe for CheckResult
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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