pub trait Position {
    type Target;
    type Range;

    // Required methods
    fn range(&self, ranges: &[&str]) -> Result<Self::Range, ParseError>;
    fn get<'a>(&self, label: &'a Label) -> Option<&'a Self::Target>;
    fn test(&self, range: &Self::Range, target: &Self::Target) -> bool;
}
Expand description

The trait that Position requires to implement

Required Associated Types§

source

type Target

The type of match target

source

type Range

The type of range

Required Methods§

source

fn range(&self, ranges: &[&str]) -> Result<Self::Range, ParseError>

Parse range strings

source

fn get<'a>(&self, label: &'a Label) -> Option<&'a Self::Target>

Get part of Label this position matches to.

source

fn test(&self, range: &Self::Range, target: &Self::Target) -> bool

Check if the range matches target

Implementors§