pub enum CompileError {
Io(Error),
Diagnostics(Vec<ResolvedDiagnostic>),
CircularInclude(String),
Codegen(CodegenError),
InvalidSourceKey(String),
NonNativeSourceKey(String),
}Expand description
Errors that can occur during compilation.
Variants§
Io(Error)
File I/O error (missing file, permission denied, etc.).
Diagnostics(Vec<ResolvedDiagnostic>)
One or more diagnostics prevented compilation.
CircularInclude(String)
Circular INCLUDE dependency detected.
Codegen(CodegenError)
Codegen (brink-codegen-inkb) refused a Program that violates an
invariant an earlier compiler stage is supposed to guarantee — a
compiler bug, not an authoring mistake. See
brink_codegen_inkb::CodegenError and #586.
InvalidSourceKey(String)
Native (.brink) discovery produced a source key that is not
root-relative (contains a .. segment) — see
brink_driver::DiscoverError::InvalidKey (issue #1288 review note
(a)). Not reachable through RealFs/GitRev today; a save-key-
identity guardrail against a future SourceTree impl that doesn’t
uphold the contract.
NonNativeSourceKey(String)
Native (.brink) discovery was handed a SourceTree that listed a
non-.brink key — see brink_driver::DiscoverError::NonNativeKey
(issue #1371). Not reachable through prepare_driver’s RealFs::new
today (native-scoped, .brink-only); a guardrail against a future
caller mistakenly widening the tree it hands to native discovery.
Trait Implementations§
Source§impl Debug for CompileError
impl Debug for CompileError
Source§impl Display for CompileError
impl Display for CompileError
Source§impl Error for CompileError
impl Error for CompileError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()