diff options
author | Martin Fischer <martin@push-f.com> | 2023-08-19 13:17:30 +0200 |
---|---|---|
committer | Martin Fischer <martin@push-f.com> | 2023-08-19 13:41:55 +0200 |
commit | b125bec9914bd211d77719bd60bc5a23bd9db579 (patch) | |
tree | d2ece716fa61c44df3361aa13cad9ae2685162b0 /src | |
parent | 7d59ed3a401284299c8139e1c08d8cd6fe29fd15 (diff) |
break!: remove DefaultEmitter from public API
Diffstat (limited to 'src')
-rw-r--r-- | src/emitter.rs | 10 | ||||
-rw-r--r-- | src/lib.rs | 5 |
2 files changed, 9 insertions, 6 deletions
diff --git a/src/emitter.rs b/src/emitter.rs index 30e1d17..0985403 100644 --- a/src/emitter.rs +++ b/src/emitter.rs @@ -165,14 +165,13 @@ pub trait Emitter<O> { fn adjusted_current_node_present_and_not_in_html_namespace(&mut self) -> bool; } -/// The default implementation of [`Emitter`], used to produce tokens. -/// -/// # Warning +/// The DefaultEmitter is not exposed in the public API because: /// /// * Using the DefaultEmitter without calling [`Tokenizer::set_state`] /// results in wrong state transitions: /// -/// ``` +#[cfg_attr(not(feature = "integration-tests"), doc = "```ignore")] +#[cfg_attr(feature = "integration-tests", doc = "```")] /// # use html5tokenizer::{DefaultEmitter, Tokenizer, Token}; /// let emitter = DefaultEmitter::default(); /// let html = "<script><b>"; @@ -184,7 +183,8 @@ pub trait Emitter<O> { /// * The DefaultEmitter implements [`Emitter::adjusted_current_node_present_and_not_in_html_namespace`] /// by returning false, which results in all CDATA sections being tokenized as bogus comments. /// -/// ``` +#[cfg_attr(not(feature = "integration-tests"), doc = "```ignore")] +#[cfg_attr(feature = "integration-tests", doc = "```")] /// # use html5tokenizer::{DefaultEmitter, Tokenizer, Token}; /// let emitter = DefaultEmitter::default(); /// let html = "<svg><![CDATA[I love SVG]]>"; @@ -14,13 +14,16 @@ pub mod reader; mod tokenizer; mod utils; -pub use emitter::{Comment, DefaultEmitter, Doctype, Emitter, EndTag, StartTag, Token}; +pub use emitter::{Comment, Doctype, Emitter, EndTag, StartTag, Token}; pub use error::Error; pub use tokenizer::{State, Tokenizer}; #[cfg(feature = "integration-tests")] pub use utils::State as InternalState; +#[cfg(feature = "integration-tests")] +pub use emitter::DefaultEmitter; + /// Relative links in the README.md don't work in rustdoc, so we have to override them. macro_rules! file_url { ($path:literal) => { |