def load_entries
      @lines   = IO.readlines(@filename)
      @lines.each_with_index do |line,idx|
        if entry_klass.is_entry?(line) then
          entry = entry_klass.from_line(line)
          v     = { 'entry' => entry, 'line_index' => idx }
          @entries[entry.key] = v
        end
      end
      nil
    end
def load_entries
      @lines   = IO.readlines(@filename)
      @lines.each_with_index do |line,idx|
        if entry_klass.is_entry?(line) then
          entry = entry_klass.from_line(line)
          v     = { 'entry' => entry, 'line_index' => idx }
          @entries[entry.key] = v
        end
      end
      nil
    end
Internal: Loads all the entries from the file into an internal array.

 This keeps the original lines in one array and all the entries in a
 separate structure indexed by key. This allows the file to be written back
 out in the same order it was read with the appropriate entries updated or
 deleted.