diff options
Diffstat (limited to 'src/library/mod.rs')
| -rw-r--r-- | src/library/mod.rs | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/src/library/mod.rs b/src/library/mod.rs index af23d050..e59201dc 100644 --- a/src/library/mod.rs +++ b/src/library/mod.rs @@ -4,6 +4,7 @@ mod align; mod boxed; mod color; mod font; +mod graphics; mod page; mod spacing; @@ -11,29 +12,35 @@ pub use align::*; pub use boxed::*; pub use color::*; pub use font::*; +pub use graphics::*; pub use page::*; pub use spacing::*; use crate::eval::{Scope, ValueFunc}; macro_rules! std { - ($($name:literal => $func:expr),* $(,)?) => { + ($($func:expr $(=> $name:expr)?),* $(,)?) => { /// Create a scope with all standard library functions. pub fn _std() -> Scope { let mut std = Scope::new(); - $(std.set($name, ValueFunc::new($func));)* + $( + let _name = stringify!($func); + $(let _name = $name;)? + std.set(_name, ValueFunc::new($func)); + )* std } }; } std! { - "align" => align, - "box" => boxed, - "font" => font, - "h" => h, - "page" => page, - "pagebreak" => pagebreak, - "rgb" => rgb, - "v" => v, + align, + boxed => "box", + font, + h, + image, + page, + pagebreak, + rgb, + v, } |
