[31m[1mERROR[0m[39m: 
  [31m×[0m You can't inject a mutable reference to a transient type (`&mut app::A`)
  [31m│[0m as an input parameter to `app::handler`.
  [31m│[0m Transient constructors are invoked every time their output is needed—
  [31m│[0m instances of transient types are never reused. The result of any mutation
  [31m│[0m would be immediately discarded.
  [31m│[0m
  [31m│[0m     ╭─[[36;1;4msrc/lib.rs[0m:18:1]
  [31m│[0m  [2m18[0m │     bp.transient(f!(self::build));
  [31m│[0m  [2m19[0m │     bp.route(GET, "/", f!(self::handler));
  [31m│[0m     · [35;1m                       ────────┬────────[0m
  [31m│[0m     ·                                [35;1m╰── The request handler was registered here[0m
  [31m│[0m  [2m20[0m │     bp
  [31m│[0m     ╰────
  [31m│[0m     ╭─[[36;1;4msrc/lib.rs[0m:11:1]
  [31m│[0m  [2m11[0m │ 
  [31m│[0m  [2m12[0m │ pub fn handler(_a: &mut A) -> Response {
  [31m│[0m     · [35;1m               ─────┬────[0m
  [31m│[0m     ·                     [35;1m╰── The &mut transient[0m
  [31m│[0m  [2m13[0m │     todo!()
  [31m│[0m     ╰────
  [31m│[0m [36m  help: [0mTake the type by value, or use a `&` reference.