Skip to main content

Resolve

Trait Resolve 

Source
pub trait Resolve {
    type Content: Clone;

    // Required methods
    fn find_by_id(
        &self,
        content: &Self::Content,
        id: &str,
    ) -> Result<(usize, usize)>;
    fn find_by_id_inclusive(
        &self,
        content: &Self::Content,
        id: &str,
    ) -> Result<(usize, usize)>;
    fn find_by_pointer(
        &self,
        content: &Self::Content,
        pointer: &str,
    ) -> Result<(usize, usize)>;
    fn replace(
        &self,
        content: &mut Self::Content,
        start: usize,
        end: usize,
        replacement: &str,
    );
    fn insert(&self, content: &mut Self::Content, pos: usize, text: &str);
    fn delete(&self, content: &mut Self::Content, start: usize, end: usize);
    fn to_string(&self, content: &Self::Content) -> String;
    fn from_string(&self, s: &str) -> Self::Content;
}
Expand description

Content resolution — how to find and replace targeted regions.

Required Associated Types§

Required Methods§

Source

fn find_by_id( &self, content: &Self::Content, id: &str, ) -> Result<(usize, usize)>

Source

fn find_by_id_inclusive( &self, content: &Self::Content, id: &str, ) -> Result<(usize, usize)>

Source

fn find_by_pointer( &self, content: &Self::Content, pointer: &str, ) -> Result<(usize, usize)>

Source

fn replace( &self, content: &mut Self::Content, start: usize, end: usize, replacement: &str, )

Source

fn insert(&self, content: &mut Self::Content, pos: usize, text: &str)

Source

fn delete(&self, content: &mut Self::Content, start: usize, end: usize)

Source

fn to_string(&self, content: &Self::Content) -> String

Source

fn from_string(&self, s: &str) -> Self::Content

Implementors§