pub enum KanbanCliError {
Domain(KanbanError),
Resolution {
hint: String,
},
Io(Error),
Serialization(Error),
}Expand description
CLI-boundary error type.
Wraps KanbanError for the domain layer, plus CLI-specific
concerns (handler-built messages, IO, serialization). Handlers
that return Result<T, KanbanCliError> propagate all failure
modes uniformly with ?, and the dispatcher converts to the JSON
CliResponse envelope at the boundary.
Variants§
Domain(KanbanError)
Resolution
Handler-built user-facing message at the CLI boundary.
Named to match the MCP-side KanbanMcpError::Resolution so
the two surfaces stay symmetric. Used when a handler has
enough input context to enrich an otherwise anonymous domain
error (cycle detected: making A a parent of B would create a cycle). Identifier-resolution failures flow through Domain
directly so the structured
kanban_domain::DomainError::NotFoundByName / Ambiguous
variants stay introspectable.
Display renders the hint verbatim, no wrapper prefix,
matching the established CLI convention used by card get /
card delete / card archive.
Io(Error)
Serialization(Error)
Trait Implementations§
Source§impl Debug for KanbanCliError
impl Debug for KanbanCliError
Source§impl Display for KanbanCliError
impl Display for KanbanCliError
Source§impl Error for KanbanCliError
impl Error for KanbanCliError
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()
Source§impl From<Error> for KanbanCliError
impl From<Error> for KanbanCliError
Source§impl From<Error> for KanbanCliError
impl From<Error> for KanbanCliError
Source§impl From<KanbanError> for KanbanCliError
impl From<KanbanError> for KanbanCliError
Source§fn from(source: KanbanError) -> Self
fn from(source: KanbanError) -> Self
Auto Trait Implementations§
impl !RefUnwindSafe for KanbanCliError
impl !UnwindSafe for KanbanCliError
impl Freeze for KanbanCliError
impl Send for KanbanCliError
impl Sync for KanbanCliError
impl Unpin for KanbanCliError
impl UnsafeUnpin for KanbanCliError
Blanket Implementations§
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
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> ToCompactString for Twhere
T: Display,
impl<T> ToCompactString for Twhere
T: Display,
Source§fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
ToCompactString::to_compact_string() Read moreSource§fn to_compact_string(&self) -> CompactString
fn to_compact_string(&self) -> CompactString
CompactString. Read more