pub enum GfError {
NotImplemented(&'static str),
Parse {
msg: String,
span: Span,
},
Bind {
msg: String,
span: Span,
},
Plan(String),
Execution(String),
Provider {
class: String,
provider: String,
model: String,
},
Storage(String),
Project {
code: ProjectErrorCode,
message: String,
},
Api {
code: ApiErrorCode,
message: String,
},
Lifecycle(String),
Validation(String),
Ontology(String),
}Expand description
All errors produced by GraphForge.
Variant names correspond 1-to-1 with the Python exception hierarchy in
graphforge.exceptions so that binding layers can map them without
string-matching.
Variants§
NotImplemented(&'static str)
Feature exists in the API but has not been implemented yet.
Parse
The Cypher parser rejected the input.
Fields
Bind
The binder rejected the query (e.g. undeclared variable, strict-mode
unknown label). Carries the source span of the first error so callers
can point at the offending token; msg lists every binder error. Shares
the PlanError fault domain with GfError::Plan in the binding layers
— it is the span-rich sibling for binder-phase failures.
Fields
Plan(String)
The binder or query planner could not produce a valid plan.
Execution(String)
A runtime fault occurred during query execution.
Provider
A redacted configured-provider invocation failed.
Fields
Storage(String)
A storage I/O operation failed.
Project
The project container cannot be resolved safely.
Fields
code: ProjectErrorCodeStable public error code.
Api
A structured M20/M21 public API failure.
Fields
code: ApiErrorCodeStable closed public error code.
Lifecycle(String)
An operation was invalid for the current instance lifecycle state.
Validation(String)
Input failed validation at the API boundary.
Ontology(String)
An ontology file could not be loaded or applied.
Implementations§
Trait Implementations§
Source§impl Error for GfError
impl Error for GfError
1.30.0 · 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()