# Overview
The following syntax will no longer work:
```rust
html! {
br /
link rel="stylesheet" href="styles.css" /
}
```
This should be changed to the following:
```rust
html! {
br;
link rel="stylesheet" href="styles.css";
}
```
# Rationale
The `;` syntax was introduced in #96; the rationale for it can be found there.
Removing support for the older `/` syntax will simplify the API surface, and allow for the space to be used for other things.
* Add support for Option<T> attributes
Introduces the `attr=[value]` syntax that assumes `value` is an
`Option<T>`. Renders `attr="value"` for `Some(value)` and entirely
omits the attribute for `None`.
Implements and therefore closes#283.
* Call `Generator::splice` directly
* Handle struct literals (edge case)
Co-authored-by: Chris Wong <xbuns@google.com>
Removed references to `std` and replaced them with references to `core` and `alloc`.
Features `rocket` and `iron` still require `std`.
Co-authored-by: Chris Wong <lambda.fairy@gmail.com>
* Use `std::matches!`
- Remove crates.io `matches` in favor of the `std` version
- Fix Clippy warning by changing a `match ... { ... }` to
`matches!(...)`
* Satisfy `blocks_in_if_conditions`
* Add proc_macro2 and quote dependencies
* Completly switch over to proc_macro2 where possible
* Remove unessesary ::from casts
* Remove pendantic cast that i missed
* Make Builder::push_tokens accept TokenStream
* Remove stray commented out code
* Reword unclear comment on `Span` to a todo item
* Move comment closer to its intended line
* Use into instead of explicit conversion
Fixes#91.
To avoid erroneously preventing elements which are actually meant to be
called `if` from being used, this is only a warning, with a suggestion
of the template syntax.