No description
Find a file
Coleman McFarland 0f453a5568 Refactor to keep up with changes to proc_macro
Instead of a `kind` field containting a `TokenNode` variant, a
TokenTree is now an enum with variants of different types (Literal, Op,
Term, etc). Note that a TokenTree could be a sequence of TokenTrees if it is a
Group variant.

Other notes:

I'm unsure about the set_span call in Builder::emit_if, but I did not want to
throw away the passed in Span.

Parsing relies on destructuring references to the values associated with
TokenTree enum variants

It doesn't seem as easy to compose/chain TokenStreams as it is to
collect a Vec<TokenTree> into a TokenStream. There is probably some
iterator API I could use instead. See `match_arms` and build.rs

Refs 
2018-04-12 14:19:26 -07:00
benchmarks Add askama bench 2017-11-29 22:13:05 +13:00
maud Release 0.17.2 2017-11-19 20:12:38 +13:00
maud_extras Enable lints on tests and extras; fix maud_doctype lint not firing 2017-10-07 14:45:06 +13:00
maud_htmlescape Move escaping routines into a shared maud_htmlescape crate 2017-07-29 20:03:00 +12:00
maud_lints Remove unnecessary AsciiExt import 2017-11-08 20:55:25 +13:00
maud_macros Refactor to keep up with changes to proc_macro 2018-04-12 14:19:26 -07:00
.gitignore First commit 2014-12-17 21:11:56 +13:00
.travis.yml Travis: don't use --manifest-path for Clippy 2017-07-31 22:05:23 +12:00
Cargo.toml Exclude benchmarks from workspace 2017-10-07 14:20:53 +13:00
CHANGELOG.md Release 0.17.2 2017-11-19 20:12:38 +13:00
CONTRIBUTING.md Release 0.17.2 2017-11-19 20:12:38 +13:00
LICENSE-APACHE First commit 2014-12-17 21:11:56 +13:00
LICENSE-MIT First commit 2014-12-17 21:11:56 +13:00
maud.png HTML5 rocks 2015-01-11 15:05:42 +13:00
README.md Add conventional docs.rs badge 2017-11-08 20:54:26 +13:00
rust-toolchain Enforce nightly toolchain () 2017-10-07 11:31:37 +13:00

HTML5 rocks. maud

Build Status Cargo API reference

Documentation (source) • API referenceChange log

Maud is an HTML template engine for Rust. It's implemented as a macro, html!, which compiles your markup to specialized Rust code. This unique approach makes Maud templates blazing fast, super type-safe, and easy to deploy.

Note that Maud depends on the unstable procedural macro API, and so requires the nightly version of Rust.

For more info on Maud, see the official book.

Stability

As of version 0.11, I am satisfied with the core syntax and semantics of the library. Development at this stage is focused on adding features and fixing bugs.

The underlying procedural macro API is still unstable though, so updating your compiler may break things. Please file an issue when this happens!