in Sources/CollectionsBenchmark/Benchmark/Benchmark+ChartLibrary.swift [313:351]
func markdown(format: ImageFormat) throws -> String {
var prefix = ""
var result = """
# Benchmark results
Click to expand individual items below.
"""
try apply { event in
switch event {
case .startGroup(let group):
result += """
\(prefix)<details open>
\(prefix) <summary><strong>\(group.title._xmlEscaped())</strong></summary>
\(prefix) <ul>\n
"""
prefix += " "
case .endGroup(_):
prefix = String(prefix.dropLast(2))
result += """
\(prefix) </ul>
\(prefix)</details>\n
"""
case .startVariants, .endVariants:
break
case let .chart(directory: directory, number: number, chart: chart):
let path = directory.isEmpty ? "" : directory + "/"
let filename = "\(path)\(number) \(chart.title).\(format.rawValue)"
let url = URL(fileURLWithPath: filename)
result += """
\(prefix)<details>
\(prefix) <summary>\(number): \(chart.title._xmlEscaped())</summary>
\(prefix) <img src=\"\(url.relativePath.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed)!)\">
\(prefix)</details>\n
"""
}
}
return result
}