Sha256: aa88c88f731348bc36d8a50a2b0f3178b21bb3dbd3fb82e5bbd695d8d9761c7c
Contents?: true
Size: 1.12 KB
Versions: 1
Compression:
Stored size: 1.12 KB
Contents
module CoreExtensions module Regexp # A wrapper module to namespace/isolate the Regexp#examples and Regexp#random_exanple # monkey patches. # No core classes are extended in any way, other than the above two methods. module Examples def examples(**config_options) RegexpExamples::ResultCountLimiters.configure!( config_options[:max_repeater_variance], config_options[:max_group_results] ) examples_by_method(:map_results) end def random_example(**config_options) RegexpExamples::ResultCountLimiters.configure!( config_options[:max_repeater_variance] ) examples_by_method(:map_random_result).first end private def examples_by_method(method) full_examples = RegexpExamples.public_send( method, RegexpExamples::Parser.new(source, options).parse ) RegexpExamples::BackReferenceReplacer.new.substitute_backreferences(full_examples) end end end end # Regexp#include is private for ruby 2.0 and below Regexp.send(:include, CoreExtensions::Regexp::Examples)
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
regexp-examples-1.1.4 | lib/core_extensions/regexp/examples.rb |