@@ -106,7 +106,7 @@ impl Moire {
106106}
107107
108108impl Render for Moire {
109− fn render<'bump>(&self, cx: &mut RenderContext<'bump>) -> Node<'bump> {
109+ fn render<'a>(&self, cx: &mut RenderContext<'a>) -> Node<'a> {
110110 use dodrio::builder::*;
111111
112112 let elapsed = web_sys::window()
@@ -150,7 +150,7 @@ impl Render for Moire {
150150/// Rendering helper methods.
151151impl Moire {
152152 /// Generate the main Moire element's inline CSS styles.
153− fn moire_style<'bump>(&self, cx: &mut RenderContext<'bump>, elapsed: f64) -> &'bump str {
153+ fn moire_style<'a>(&self, cx: &mut RenderContext<'a>, elapsed: f64) -> &'a str {
154154 let elapsed = elapsed / 3.0;
155155 let color = colors::get_interpolated_color(|(_, bg)| bg, elapsed % 1.0);
156156 let style = bumpalo::format!(
@@ -164,7 +164,7 @@ impl Moire {
164164 }
165165
166166 /// Generate the orbiting circle objects.
167− fn orbiting_objects<'bump>(&self, cx: &mut RenderContext<'bump>, elapsed: f64) -> Node<'bump> {
167+ fn orbiting_objects<'a>(&self, cx: &mut RenderContext<'a>, elapsed: f64) -> Node<'a> {
168168 const D: f64 = 200.0;
169169 let x = elapsed.sin() * D;
170170 let y = elapsed.cos() * D;
@@ -173,24 +173,20 @@ impl Moire {
173173
174174 /// Generate the lemniscate circle objects that interact with the orbiting
175175 /// circle objects to form Moire patterns.
176− fn lemniscate_objects<'bump>(
177− &self,
178− cx: &mut RenderContext<'bump>,
179− elapsed: f64,
180− ) -> Node<'bump> {
176+ fn lemniscate_objects<'a>(&self, cx: &mut RenderContext<'a>, elapsed: f64) -> Node<'a> {
181177 const A: f64 = 150.0;
182178 let x = elapsed.sin() * A;
183179 let y = elapsed.sin() * elapsed.cos() * A;
184180 self.moving_object(cx, elapsed, x, y)
185181 }
186182
187− fn moving_object<'a, 'bump>(
188− &'a self,
189− cx: &mut RenderContext<'bump>,
183+ fn moving_object<'a>(
184+ &self,
185+ cx: &mut RenderContext<'a>,
190186 elapsed: f64,
191187 x: f64,
192188 y: f64,
193− ) -> Node<'bump> {
189+ ) -> Node<'a> {
194190 use dodrio::builder::*;
195191 div(&cx)
196192 .attr("class", "object")
@@ -200,17 +196,12 @@ impl Moire {
200196 }
201197
202198 /// Generate inline CSS styles for a moving object.
203− fn moving_object_style<'bump>(
204− &self,
205− cx: &mut RenderContext<'bump>,
206− x: f64,
207− y: f64,
208− ) -> &'bump str {
199+ fn moving_object_style<'a>(&self, cx: &mut RenderContext<'a>, x: f64, y: f64) -> &'a str {
209200 bumpalo::format!(in cx.bump, "left: {}px; top: {}px;", x, y).into_bump_str()
210201 }
211202
212203 /// Recursively generate `self.count` concentric circles.
213− fn circle<'bump>(&self, cx: &mut RenderContext<'bump>, elapsed: f64, n: u32) -> Node<'bump> {
204+ fn circle<'a>(&self, cx: &mut RenderContext<'a>, elapsed: f64, n: u32) -> Node<'a> {
214205 use dodrio::builder::*;
215206
216207 let r = n * 16;
@@ -231,13 +222,13 @@ impl Moire {
231222 }
232223
233224 /// Generate inline CSS styles for a circle.
234− fn circle_style<'bump>(
225+ fn circle_style<'a>(
235226 &self,
236− cx: &mut RenderContext<'bump>,
227+ cx: &mut RenderContext<'a>,
237228 elapsed: f64,
238229 n: u32,
239230 r: u32,
240− ) -> &'bump str {
231+ ) -> &'a str {
241232 let (border, alpha) = self.circle_color(elapsed, n);
242233 let margin = r / 2 + 3;
243234 let style = bumpalo::format!(