aho_corasick/packed/teddy/
mod.rs

1#[cfg(not(all(feature = "std", target_arch = "x86_64")))]
2pub use crate::packed::teddy::fallback::{Builder, Teddy};
3#[cfg(all(feature = "std", target_arch = "x86_64"))]
4pub use crate::packed::teddy::{compile::Builder, runtime::Teddy};
5
6#[cfg(all(feature = "std", target_arch = "x86_64"))]
7mod compile;
8#[cfg(all(feature = "std", target_arch = "x86_64"))]
9mod runtime;
10
11#[cfg(not(all(feature = "std", target_arch = "x86_64")))]
12mod fallback {
13    use crate::{packed::pattern::Patterns, Match};
14
15    #[derive(Clone, Debug, Default)]
16    pub struct Builder(());
17
18    impl Builder {
19        pub fn new() -> Builder {
20            Builder(())
21        }
22
23        pub fn build(&self, _: &Patterns) -> Option<Teddy> {
24            None
25        }
26
27        pub fn fat(&mut self, _: Option<bool>) -> &mut Builder {
28            self
29        }
30
31        pub fn avx(&mut self, _: Option<bool>) -> &mut Builder {
32            self
33        }
34    }
35
36    #[derive(Clone, Debug)]
37    pub struct Teddy(());
38
39    impl Teddy {
40        pub fn find_at(
41            &self,
42            _: &Patterns,
43            _: &[u8],
44            _: usize,
45        ) -> Option<Match> {
46            None
47        }
48
49        pub fn minimum_len(&self) -> usize {
50            0
51        }
52
53        pub fn memory_usage(&self) -> usize {
54            0
55        }
56    }
57}