Method: PrepareRegexp#create

Defined in:
lib/regexp.rb

#create(ignore_case, verbose, roman, &b) ⇒ Object

end



11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/regexp.rb', line 11

def create(ignore_case, verbose, roman, &b)
  begin
    c = verbose ? VerboseRegexp : Regexp
    o = ignore_case ? Regexp::IGNORECASE : nil
    s = roman ? @s.gsub('(roman)', "(#{Regexp.ROMAN_PATTERN})") : @s 
    r = c.new s, o
    r.result_proc = b if verbose
    r
  rescue
    b.call :error, "Error parsing regular expression:\n#{$!}"
    nil
  end
end