ib_matcher/matcher/
pattern.rs1#![cfg_attr(not(feature = "syntax"), allow(dead_code))]
2use crate::matcher::encoding::EncodedStr;
3
4#[derive(Debug)]
5pub struct Pattern<'a, HaystackStr>
6where
7 HaystackStr: EncodedStr + ?Sized,
8{
9 pub(crate) pattern: &'a HaystackStr,
10 pub(crate) lang_only: Option<LangOnly>,
11}
12
13impl<'a, HaystackStr> From<&'a HaystackStr> for Pattern<'a, HaystackStr>
14where
15 HaystackStr: EncodedStr + ?Sized,
16{
17 fn from(value: &'a HaystackStr) -> Self {
18 Self {
19 pattern: value,
20 lang_only: None,
21 }
22 }
23}
24
25#[derive(Debug, PartialEq, Eq)]
26pub(crate) enum LangOnly {
27 English,
28 Pinyin,
29 Romaji,
30}