//! NFA bytecode opcode constants and execution limits.
//!
//! The NFA-scan kernel reads a flat byte program where each instruction
//! begins with one of these 1-byte opcodes. Keeping every opcode together
//! prevents drift (two opcodes silently taking the same value) and makes
//! the bytecode wire format self-documenting.
/// Match a literal byte operand.
pub const OP_LITERAL: u8 = 1;
/// Match any single byte.
pub const OP_ANY: u8 = 2;
/// Kleene star over a literal byte operand.
pub const OP_STAR_LITERAL: u8 = 3;
/// Kleene star over any byte.
pub const OP_STAR_ANY: u8 = 4;
/// Accept state — program terminates here.
pub const OP_MATCH: u8 = 255;
/// Upper bound on states the NFA interpreter may visit per input before
/// returning an actionable error (cap = 16 MiB states).
pub const MAX_NFA_STATES_VISITED: usize = 16 * 1024 * 1024;