class LineParser::EscapeNode

Attributes

to_be_escaped[R]
to_be_escaped_re[R]

Public Class Methods

compile_to_be_escaped_re(to_be_escaped) click to toggle source
# File lib/log_line_parser/line_parser.rb, line 178
def compile_to_be_escaped_re(to_be_escaped)
  re_str = to_be_escaped.map {|e| Regexp.escape(e) }.join("|")
  /\A(?:#{re_str})/
end
setup(start_tag, end_tag, to_be_ignored=[], to_be_escaped=[]) click to toggle source
Calls superclass method LineParser::Node::setup
# File lib/log_line_parser/line_parser.rb, line 172
def setup(start_tag, end_tag, to_be_ignored=[], to_be_escaped=[])
  super(start_tag, end_tag, to_be_ignored)
  @to_be_escaped = to_be_escaped
  @to_be_escaped_re = compile_to_be_escaped_re(to_be_escaped)
end

Public Instance Methods

part_to_be_escaped(token) click to toggle source
# File lib/log_line_parser/line_parser.rb, line 188
def part_to_be_escaped(token)
  @self_class.to_be_escaped.each do |e|
    return e if token.start_with?(e)
  end
  nil
end
remove_escaped_part(token) click to toggle source
# File lib/log_line_parser/line_parser.rb, line 184
def remove_escaped_part(token)
  token.sub(@self_class.to_be_escaped_re, ''.freeze)
end