class Jekyll::LiquidRenderer::Table

def data_for_table(num_of_rows)

def data_for_table(num_of_rows)
  sorted = @stats.sort_by { |_, file_stats| -file_stats[:time] }
  sorted = sorted.slice(0, num_of_rows)
  table  = [header_labels]
  sorted.each do |filename, file_stats|
    row = []
    row << filename
    row << file_stats[:count].to_s
    row << format_bytes(file_stats[:bytes])
    row << format("%.3f", file_stats[:time])
    table << row
  end
  table
end

def format_bytes(bytes)

def format_bytes(bytes)
  bytes /= 1024.0
  format("%.2fK", bytes)
end

def header_labels

def header_labels
  GAUGES.map { |gauge| gauge.to_s.capitalize }.unshift("Filename")
end

def initialize(stats)

def initialize(stats)
  @stats = stats
end

def to_s(num_of_rows = 50)

def to_s(num_of_rows = 50)
  Jekyll::Profiler.tabulate(data_for_table(num_of_rows))
end