From fc0863f40b64ff927a3aa1261b3d8d30afe68d85 Mon Sep 17 00:00:00 2001 From: Dirkjan Ochtman Date: Mon, 25 Jun 2018 12:46:00 +0200 Subject: Add support for 'loop.first' variable --- askama/src/lib.rs | 1 + askama_derive/src/generator.rs | 3 +++ 2 files changed, 4 insertions(+) diff --git a/askama/src/lib.rs b/askama/src/lib.rs index 56c5202..f64fa68 100644 --- a/askama/src/lib.rs +++ b/askama/src/lib.rs @@ -200,6 +200,7 @@ //! //! * *loop.index*: current loop iteration (starting from 1) //! * *loop.index0*: current loop iteration (starting from 0) +//! * *loop.first*: whether this is the first iteration of the loop //! //! ### If //! diff --git a/askama_derive/src/generator.rs b/askama_derive/src/generator.rs index 5ec2238..07c87bf 100644 --- a/askama_derive/src/generator.rs +++ b/askama_derive/src/generator.rs @@ -720,6 +720,9 @@ impl<'a> Generator<'a> { return DisplayWrap::Unwrapped; } else if attr == "index0" { return DisplayWrap::Unwrapped; + } else if attr == "first" { + code.push_str(" == 0"); + return DisplayWrap::Unwrapped; } else { panic!("unknown loop variable"); } -- cgit