Class: Glark::LineStatus
- Inherits:
-
Object
- Object
- Glark::LineStatus
- Defined in:
- lib/glark/output/line_status.rb
Constant Summary collapse
- WRITTEN =
Object.new
- PRE_MATCH =
'-'
- MATCH =
':'
- POST_MATCH =
'+'
Instance Method Summary collapse
- #char(lnum) ⇒ Object
-
#initialize ⇒ LineStatus
constructor
A new instance of LineStatus.
- #is_written?(lnum) ⇒ Boolean
- #set_as_written(lnum) ⇒ Object
- #set_match(pre_match_start, match_start, match_end, post_match_end) ⇒ Object
- #set_status(from, to, status) ⇒ Object
- #update_status(lnum, status) ⇒ Object
Constructor Details
#initialize ⇒ LineStatus
Returns a new instance of LineStatus.
11 12 13 |
# File 'lib/glark/output/line_status.rb', line 11 def initialize @stati = Array.new end |
Instance Method Details
#char(lnum) ⇒ Object
23 24 25 |
# File 'lib/glark/output/line_status.rb', line 23 def char lnum @stati[lnum] end |
#is_written?(lnum) ⇒ Boolean
15 16 17 |
# File 'lib/glark/output/line_status.rb', line 15 def is_written? lnum @stati[lnum] == WRITTEN end |
#set_as_written(lnum) ⇒ Object
19 20 21 |
# File 'lib/glark/output/line_status.rb', line 19 def set_as_written lnum @stati[lnum] = WRITTEN end |
#set_match(pre_match_start, match_start, match_end, post_match_end) ⇒ Object
39 40 41 42 43 44 |
# File 'lib/glark/output/line_status.rb', line 39 def set_match pre_match_start, match_start, match_end, post_match_end start = [0, pre_match_start].max set_status start, match_start - 1, PRE_MATCH set_status match_start, match_end, MATCH set_status match_end + 1, post_match_end, POST_MATCH end |
#set_status(from, to, status) ⇒ Object
27 28 29 30 31 |
# File 'lib/glark/output/line_status.rb', line 27 def set_status from, to, status from.upto(to) do |lnum| update_status lnum, status end end |