Sha256: eac13adb83dc7ece43344b9590f1a3bb44b8f7e460f0f93d03d5ebfeb6362ee8

Contents?: true

Size: 387 Bytes

Versions: 5

Compression:

Stored size: 387 Bytes

Contents

module GemfileLocker
  class FileEditor
    attr_reader :path, :processor

    def initialize(path, processor)
      @path = path
      @processor = processor
    end

    def run
      write
    end

    def source
      @source ||= File.read(path)
    end

    def result
      @result ||= processor.call(source)
    end

    def write
      File.write(path, result)
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
gemfile_locker-0.4.0 lib/gemfile_locker/file_editor.rb
gemfile_locker-0.3.1 lib/gemfile_locker/file_editor.rb
gemfile_locker-0.3.0 lib/gemfile_locker/file_editor.rb
gemfile_locker-0.2.0 lib/gemfile_locker/file_editor.rb
gemfile_locker-0.1.0 lib/gemfile_locker/file_editor.rb