Class: Puppet::Pops::Parser::Locator::LocatorForChars

Inherits:
AbstractLocator show all
Defined in:
lib/puppet/pops/parser/locator.rb

Instance Attribute Summary

Attributes inherited from AbstractLocator

#file, #line_index, #prev_line, #prev_offset, #string

Instance Method Summary collapse

Methods inherited from AbstractLocator

#ary_bsearch_i, #compute_line_index, #eql?, #hash, #initialize, #line_for_offset, #pos_on_line, #to_location_hash

Methods inherited from Puppet::Pops::Parser::Locator

#extract_tree_text, #file, #line_for_offset, #line_index, locator, #pos_on_line, #string, #to_s, #to_uri

Constructor Details

This class inherits a constructor from Puppet::Pops::Parser::Locator::AbstractLocator

Instance Method Details

#char_length(offset, end_offset) ⇒ Object



286
287
288
# File 'lib/puppet/pops/parser/locator.rb', line 286

def char_length(offset, end_offset)
  end_offset - offset
end

#char_offset(char_offset) ⇒ Object



282
283
284
# File 'lib/puppet/pops/parser/locator.rb', line 282

def char_offset(char_offset)
  char_offset
end

#extract_text(offset, length) ⇒ Object

Extracts the text from char offset with given byte length



292
293
294
# File 'lib/puppet/pops/parser/locator.rb', line 292

def extract_text(offset, length)
  string.slice(offset, length)
end

#offset_on_line(offset) ⇒ Object



277
278
279
280
# File 'lib/puppet/pops/parser/locator.rb', line 277

def offset_on_line(offset)
  line_offset = line_index[ line_for_offset(offset)-1 ]
  offset - line_offset
end