textum/snip/snippet/
error.rs1use crate::snip::target::error::TargetError;
2use crate::snip::BoundaryError;
3
4#[derive(Debug, Clone, PartialEq, Eq)]
5pub enum SnippetError {
7 BoundaryError(BoundaryError),
9 InvalidRange {
11 start: usize,
13 end: usize,
15 },
16 InvalidUtf8(String),
18 OutOfBounds {
20 index: usize,
22 rope_len: usize,
24 },
25}
26
27impl From<BoundaryError> for SnippetError {
28 fn from(err: BoundaryError) -> Self {
29 SnippetError::BoundaryError(err)
30 }
31}
32
33impl From<TargetError> for SnippetError {
34 fn from(err: TargetError) -> Self {
35 SnippetError::BoundaryError(BoundaryError::TargetError(err))
37 }
38}