1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
//! Provides token definitions for HTML stream processing. The goal of this //! library is to provide a simple API over which higher abstraction can be //! built on. //! //! ## Example //! //! ```rust //! #[macro_use] //! extern crate hamlet; //! //! use std::fmt::Write; //! //! fn main() { //! use hamlet::Token; //! let tokens = vec![ //! Token::text("Hello, "), //! Token::start_tag("small", attrs!(class="foo")), //! Token::text("world!"), //! Token::end_tag("small"), //! ]; //! //! let mut html = String::from(""); //! for token in tokens { //! write!(html, "{}", token); //! } //! //! assert_eq!(html, "Hello, <small class=\"foo\">world!</small>"); //! } //! ``` #![warn(missing_docs)] /// Currently contains just a semi-private utility function to support the /// [`attrs!`](./macro.attrs!.html) macro. pub mod util; #[macro_use] mod macros; /// Contains structs for defining attributes on elements. pub mod attr; mod escape; mod token; pub use token::Token;