summaryrefslogtreecommitdiff
path: root/src/library/page.rs
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2021-05-18 21:32:40 +0200
committerLaurenz <laurmaedje@gmail.com>2021-05-18 21:32:40 +0200
commit118fc1014bcfc5585fd3ce32348fbfe14bdc05a9 (patch)
tree51ef7937188776d0343196fda207c77e732859d1 /src/library/page.rs
parent7025590405623b99ec93aa6eddc9fc909e8f83a8 (diff)
Leaner argument parsing
Diffstat (limited to 'src/library/page.rs')
-rw-r--r--src/library/page.rs20
1 files changed, 10 insertions, 10 deletions
diff --git a/src/library/page.rs b/src/library/page.rs
index 1694b7d4..59cca1f0 100644
--- a/src/library/page.rs
+++ b/src/library/page.rs
@@ -22,22 +22,22 @@ use crate::paper::{Paper, PaperClass};
/// A template that configures page properties. The effect is scoped to the body
/// if present.
pub fn page(ctx: &mut EvalContext, args: &mut FuncArgs) -> Value {
- let paper = args.find::<Spanned<String>>(ctx).and_then(|name| {
+ let paper = args.eat::<Spanned<String>>(ctx).and_then(|name| {
Paper::from_name(&name.v).or_else(|| {
ctx.diag(error!(name.span, "invalid paper name"));
None
})
});
- let width = args.get(ctx, "width");
- let height = args.get(ctx, "height");
- let margins = args.get(ctx, "margins");
- let left = args.get(ctx, "left");
- let top = args.get(ctx, "top");
- let right = args.get(ctx, "right");
- let bottom = args.get(ctx, "bottom");
- let flip = args.get(ctx, "flip");
- let body = args.find::<TemplateValue>(ctx);
+ let width = args.eat_named(ctx, "width");
+ let height = args.eat_named(ctx, "height");
+ let margins = args.eat_named(ctx, "margins");
+ let left = args.eat_named(ctx, "left");
+ let top = args.eat_named(ctx, "top");
+ let right = args.eat_named(ctx, "right");
+ let bottom = args.eat_named(ctx, "bottom");
+ let flip = args.eat_named(ctx, "flip");
+ let body = args.eat::<TemplateValue>(ctx);
let span = args.span;
Value::template("page", move |ctx| {