Class: Ggggsss::LineCollector

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(io, keyword) ⇒ LineCollector

Returns a new instance of LineCollector.



80
81
82
83
84
# File 'lib/ggggsss.rb', line 80

def initialize(io, keyword)
  @io = io
  @keyword = Regexp.new(keyword)
  @results = []
end

Instance Attribute Details

#resultsObject (readonly)

Returns the value of attribute results.



78
79
80
# File 'lib/ggggsss.rb', line 78

def results
  @results
end

Instance Method Details

#collect!Object



86
87
88
89
90
# File 'lib/ggggsss.rb', line 86

def collect!
  @io.read.each_line.with_index(1) do |line, line_no|
    @results << ResultLine.new(line_no: line_no, line: line.chomp) if @keyword.match?(line)
  end
end