Enum stack_graphs::paths::PathResolutionError [−][src]
pub enum PathResolutionError {
Show 14 variants
EmptyScopeStack,
EmptySymbolStack,
IncompatibleScopeStackVariables,
IncompatibleSymbolStackVariables,
IncorrectFile,
IncorrectPoppedSymbol,
IncorrectSourceNode,
MissingAttachedScopeList,
ScopeStackUnsatisfied,
SymbolStackUnsatisfied,
UnboundSymbolStackVariable,
UnboundScopeStackVariable,
UnexpectedAttachedScopeList,
UnknownAttachedScope,
}
Expand description
Errors that can occur during the path resolution process.
Variants
The path contains a jump to scope node, but there are no scopes on the scope stack to jump to.
The path contains a pop symbol or pop scoped symbol node, but there are no symbols on the symbol stack to pop off.
The partial path contains multiple references to a scope stack variable, and those references can’t unify on a single scope stack.
The partial path contains multiple references to a symbol stack variable, and those references can’t unify on a single symbol stack.
The partial path contains edges from multiple files.
The path contains a pop symbol or pop scoped symbol node, but the symbol at the top of the symbol stack does not match.
The path contains an edge whose source node does not match the sink node of the preceding edge.
The path contains a pop scoped symbol node, but the symbol at the top of the symbol stack does not have an attached scope list to pop off.
The path’s scope stack does not satisfy the partial path’s scope stack precondition.
The path’s symbol stack does not satisfy the partial path’s symbol stack precondition.
The partial path’s postcondition references a symbol stack variable that isn’t present in the precondition.
The partial path’s postcondition references a scope stack variable that isn’t present in the precondition.
The path contains a pop symbol node, but the symbol at the top of the symbol stack has an attached scope list that we weren’t expecting.
A push scoped symbol node referes to an exported scope node that doesn’t exist.