brisk_cartography/
lib.rs

1#![cfg(not(doctest))]
2#![doc = include_str!("../README.MD")]
3#![warn(missing_docs)]
4
5use lazy_static::lazy_static;
6use proc_macro::TokenStream;
7
8mod map;
9mod styling;
10
11lazy_static! {
12    static ref MANAGER: brisk_it::generator::Manager = brisk_it::generator::ManagerBuilder::new()
13        .create::<map::IntoLayer>("IntoLayer")
14        .create::<map::GeoJsonLayer>("GeoJsonLayer")
15        .create::<map::TilesLayer>("TilesLayer")
16        .create::<map::Map>("Map")
17        .create::<styling::Rule>("Rule")
18        .create::<styling::Style>("Style")
19        .create::<styling::Symbol>("Symbol")
20        .into();
21}
22
23/// This macro is used to transform a brisk declarative representation
24/// into a Map or a Style. Look at examples for usage.
25#[proc_macro]
26pub fn brisk_it(input: TokenStream) -> TokenStream {
27    brisk_it::brisk_it(input, &MANAGER)
28}