Class: Overcommit::StagedFile

Inherits:
Object
  • Object
show all
Defined in:
lib/overcommit/staged_file.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(path) ⇒ StagedFile

Returns a new instance of StagedFile.



10
11
12
13
14
# File 'lib/overcommit/staged_file.rb', line 10

def initialize path
  @original_path  = path
  @tempfile       = Tempfile.new([path.gsub('/', '_'), File.extname(path)])
  self.contents   = `git show :#{@original_path}`
end

Instance Attribute Details

#contentsObject

Returns the value of attribute contents.



8
9
10
# File 'lib/overcommit/staged_file.rb', line 8

def contents
  @contents
end

Instance Method Details

#filter_string(string) ⇒ Object

Given error output from a syntax checker, replace references to the temporary file path with the original path.



18
19
20
# File 'lib/overcommit/staged_file.rb', line 18

def filter_string string
  string.gsub(path, @original_path)
end

#pathObject

The path of the temporary file on disk, suitable for feeding in to a syntax checker.



24
25
26
# File 'lib/overcommit/staged_file.rb', line 24

def path
  @tempfile.path
end