pub(crate) mod machine; use crate::offset::{Offset, Position}; use crate::reader::{IntoReader, Reader}; use crate::Emitter; use machine::ControlToken; #[cfg(feature = "integration-tests")] pub use machine::State as InternalState; /// An HTML tokenizer. /// /// # Warning /// /// Iterating over the tokenizer directly without calling [`Tokenizer::set_state`] /// results in wrong state transitions: /// /// ``` /// # use html5tokenizer::{BasicEmitter, Event, Tokenizer, Token}; /// let emitter = BasicEmitter::default(); /// let html = "