render method

void render(
  1. Renderer renderer
)

Uses the given renderer to redraw every character in the terminal that has changed since the last render call

Implementation

void render(Renderer renderer) {
  for (var y = 0; y < height; y++) {
    for (var x = 0; x < width; x++) {
      var char = _changedState.get(x, y);
      if (char == null) continue;

      renderer.renderChar(x, y, char);

      // up to date now
      _state.set(x, y, char);
      _changedState.set(x, y, null);
    }
  }
}