pub struct CompileOutcome {
pub hir: Option<Program>,
pub error: Option<OpyError>,
pub diagnostics: Vec<Diagnostic>,
pub files: Vec<FileRecord>,
pub display_root: PathBuf,
pub post_compile_hook: Option<PostCompileHookRecord>,
}Expand description
The outcome of a compile with overlays.
Unlike compile_with_overlay, this retains the source file registry
even when parsing or lowering fails, so language tooling can map span file
ids to their actual source identities without building a diagnostics-only
project model.
Fields§
§hir: Option<Program>§error: Option<OpyError>§diagnostics: Vec<Diagnostic>§files: Vec<FileRecord>§display_root: PathBufThe directory the files display paths resolve against — the
#!mainFile effective directory when the entry redirects the project
root, otherwise the canonicalized input root.
post_compile_hook: Option<PostCompileHookRecord>The declared #!postCompileHook script, when the source declared one
and compilation succeeded.
This is the declaration record, not an execution result: the OPY implementation recognizes, parses, validates, and records the directive, but never executes the hook. Execution against the final Workshop text is lowering-dependent (workshop-rs emission, issue #8); source analysis never fabricates a Workshop payload.