flower-os/flower

Convert forced copies with `let` to direct accesses using `#![feature(nll)]`

Restioson opened this issue · 1 comments

Non-lexical lifetimes have landed in nightly, under #![feature(nll)]. I propose that we convert existing code like the following

fn write_string(&mut self, str: &str) -> Result<(), TerminalOutputError<E>> {
    let color = self.color();
    self.write_string_colored(str, color)
}

which forces color to be copied into code like the following

fn write_string(&mut self, str: &str) -> Result<(), TerminalOutputError<E>> {
    self.write_string_colored(str, self.color())
}

since NLL lets us do this in many cases.

Completion

  • color.rs
  • lib.rs
  • lang.rs
  • util.rs
  • terminal/text_area.rs
  • terminal/mod.rs
  • drivers/vga.rs
  • drivers/ps2/mod.rs
  • drivers/ps2/io.rs

Ps/2 has all been rewritten with nll. Yay!