# File lib/regin/character.rb, line 5 def initialize(value, options = {}) @quantifier = options[:quantifier] super end
# File lib/regin/character.rb, line 39 def include?(char) if ignorecase value.downcase == char.downcase else value == char end end
Returns true if expression could be treated as a literal string.
A Character is literal is there is no quantifier attached to it.
# File lib/regin/character.rb, line 17 def literal? quantifier.nil? && !ignorecase end
# File lib/regin/character.rb, line 35 def match(char) to_regexp(true).match(char) end
# File lib/regin/character.rb, line 10 def option_names %w( quantifier ) + super end
# File lib/regin/character.rb, line 29 def to_regexp(anchored = false) re = to_s(true) re = "\\A#{re}\\Z" if anchored Regexp.compile(re, ignorecase) end
# File lib/regin/character.rb, line 21 def to_s(parent = false) if !parent && ignorecase "(?i-mx:#{value})#{quantifier}" else "#{value}#{quantifier}" end end