Macro hyperide

Source
hyperide!() { /* proc-macro */ }
Expand description

Converts a HTML like syntax into a string.

use hyperide::hyperide;
fn returns_tag() -> char {
    'p'
}
fn my_component(a: &str, b: &str) -> String {
    hyperide! {
        <p><strong>{a}{": "}</strong>{b}</p>
    }
}
let my_str = hyperide! {
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="utf-8" />
    </head>
    <body>
        <h1>{"Hello, world!"}</h1>
        <{returns_tag()}>This is in a closed paragraph.</_>
        <!-- "wildcard close tag ⬆️" -->
        {my_component("Foo", "bar")}
    </body>
    </html>
};

Will generate:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8" />
  </head>
  <body>
    <h1>Hello, world!</h1>
    <p>This is in a closed paragraph.</p>
    <!-- "wildcard close tag ⬆️" -->
    <p><strong>Foo: </strong>bar</p>
  </body>
</html>