func run()

in Sources/CollectionsBenchmark/BenchmarkCLI/BenchmarkCLI+Render.swift [37:67]


    func run() throws {
      let input = URL(fileURLWithPath: self.input)
      let output = URL(fileURLWithPath: self.output)

      let results = try BenchmarkResults.load(from: input)

      let tasks = try self.tasks.resolve(
        allKnownTasks: results.alltaskIDs(),
        ignoreLabels: false)

      if self.dryRun {
        tasks.forEach { print($0) }
        return
      }

      let renderer = Graphics.bestAvailableRenderer
      let theme = try options.themeSpec.resolve(with: renderer)

      let chart = Chart(taskIDs: tasks,
                        in: results,
                        options: try options.chartOptions())
      let graphics = chart.draw(
        bounds: Rectangle(x: 0, y: 0, width: options.width, height: options.height),
        theme: theme,
        renderer: renderer)
      let data = try renderer.render(
        graphics,
        format: output.pathExtension,
        bitmapScale: options.scale)
      try data.write(to: output, options: .atomic)
    }