
WildcardAutomaton
- Namespace
- Rowles.LeanLucene.Codecs.Fst
- Assembly
- Rowles.LeanLucene.dll
DFA for wildcard patterns with '*' (any sequence) and '?' (any single byte). Built via NFA-to-DFA subset construction at construction time. Operates on individual UTF-8 bytes (not characters).
public sealed class WildcardAutomaton : IAutomaton
WildcardAutomaton
- Implements
WildcardAutomaton(string)
Initialises a new WildcardAutomaton for the given wildcard pattern. Constructs the DFA via NFA-to-DFA subset construction at construction time.
Start
Initial state of the automaton.
CanMatch(int)
Returns true if the automaton could potentially accept any string starting from the given state. Used for early pruning during intersection. Returns false only if the state is dead (no path to any accept state).
IsAccept(int)
Returns true if the given state is an accepting state.
Step(int, byte)
Transition function: returns next state given current state and input byte, or -1 if no transition.