# File lib/ttfunk/table/kern/format0.rb, line 12 def initialize(attributes={}) @attributes = attributes num_pairs, search_range, entry_selector, range_shift, *pairs = attributes.delete(:data).unpack("n*") @pairs = {} num_pairs.times do |i| break if i*3+2 > pairs.length # sanity check, in case there's a bad length somewhere left = pairs[i*3] right = pairs[i*3+1] value = to_signed(pairs[i*3+2]) @pairs[[left, right]] = value end end