From 65fb5630825b62ca959fcb55252d1657aefea0f3 Mon Sep 17 00:00:00 2001 From: Dirkjan Ochtman Date: Mon, 3 Jul 2023 09:30:28 +0200 Subject: parser: define a struct for Match --- askama_derive/src/generator.rs | 7 +++---- askama_derive/src/heritage.rs | 4 ++-- 2 files changed, 5 insertions(+), 6 deletions(-) (limited to 'askama_derive') diff --git a/askama_derive/src/generator.rs b/askama_derive/src/generator.rs index addde7a..66f1b1c 100644 --- a/askama_derive/src/generator.rs +++ b/askama_derive/src/generator.rs @@ -796,8 +796,7 @@ impl<'a> Generator<'a> { let mut arm_size = 0; for (i, arm) in arms.iter().enumerate() { - let &(ws, ref target, ref body) = arm; - self.handle_ws(ws); + self.handle_ws(arm.ws); if i > 0 { arm_sizes.push(arm_size + self.write_buf_writable(buf)?); @@ -807,10 +806,10 @@ impl<'a> Generator<'a> { } self.locals.push(); - self.visit_target(buf, true, true, target); + self.visit_target(buf, true, true, &arm.target); buf.writeln(" => {")?; - arm_size = self.handle(ctx, body, buf, AstLevel::Nested)?; + arm_size = self.handle(ctx, &arm.block, buf, AstLevel::Nested)?; } self.handle_ws(ws2); diff --git a/askama_derive/src/heritage.rs b/askama_derive/src/heritage.rs index 66f1a1a..342416e 100644 --- a/askama_derive/src/heritage.rs +++ b/askama_derive/src/heritage.rs @@ -94,8 +94,8 @@ impl Context<'_> { nested.push(else_block); } Node::Match(_, _, arms, _) => { - for (_, _, arm) in arms { - nested.push(arm); + for arm in arms { + nested.push(&arm.block); } } _ => {} -- cgit