4 def initialize(range, color, message, backend)
5 range = (range.split('...').first.to_i ... range.split('...').last.to_i) if range.is_a? String
6 @attrs = { 'range' => range, 'color' => color, 'message' => message,
7 'backend' => backend.to_s.downcase.gsub(/backend/, '')}
10 def self.read(original_file)
11 JSON.parse(File.read(Augment.augment_path(original_file))).map{ |l| Layer.new(l['range'], l['color'], l['message'], l['backend']) }.sort_by{ |l| l['range'].begin }.reverse
14 def self.line_to_char_range(file, line)
15 file = File.read(file).split("\n")
16 start = file[0 ... line - 1].join("\n").size + 2
17 (start ... start + file[line - 1].size)