class RPStringScanner

Public Instance Methods

charpos() click to toggle source
# File lib/ruby_parser_extras.rb, line 50
def charpos
  string_to_pos.length
end
d(o) click to toggle source
# File lib/ruby_parser_extras.rb, line 87
def d o
  $stderr.puts o.inspect
end
getch() click to toggle source
# File lib/ruby_parser_extras.rb, line 72
def getch
  c = self.old_getch
  p :getch => [c, caller.first]
  c
end
Also aliased as: old_getch
old_getch()
Alias for: getch
old_scan(re)
Alias for: scan
scan(re) click to toggle source
# File lib/ruby_parser_extras.rb, line 79
def scan re
  s = old_scan re
  where = caller[1].split(/:/).first(2).join(":")
  d :scan => [s, where] if s
  s
end
Also aliased as: old_scan
string_to_pos() click to toggle source
# File lib/ruby_parser_extras.rb, line 41
def string_to_pos
  string.byteslice(0, pos)
end
unread_many(str) click to toggle source
# File lib/ruby_parser_extras.rb, line 61
def unread_many str # TODO: remove this entirely - we should not need it
  warn({:unread_many => caller[0]}.inspect) if ENV['TALLY']
  begin
    string[charpos, 0] = str
  rescue IndexError
    # HACK -- this is a bandaid on a dirty rag on an open festering wound
  end
end