class Cucumber::CucumberExpressions::RegularExpression
Public Class Methods
Source
# File lib/cucumber/cucumber_expressions/regular_expression.rb, line 10 def initialize(expression_regexp, parameter_type_registry) @expression_regexp = expression_regexp @parameter_type_registry = parameter_type_registry @tree_regexp = TreeRegexp.new(@expression_regexp) end
Public Instance Methods
Source
# File lib/cucumber/cucumber_expressions/regular_expression.rb, line 16 def match(text) parameter_types = @tree_regexp.group_builder.children.map do |group_builder| parameter_type_regexp = group_builder.source @parameter_type_registry.lookup_by_regexp( parameter_type_regexp, @expression_regexp, text ) || ParameterType.new( nil, parameter_type_regexp, String, ->(*s) { s[0] }, false, false ) end Argument.build(@tree_regexp, text, parameter_types) end
Source
# File lib/cucumber/cucumber_expressions/regular_expression.rb, line 36 def regexp @expression_regexp end
Source
# File lib/cucumber/cucumber_expressions/regular_expression.rb, line 40 def source @expression_regexp.source end
Source
# File lib/cucumber/cucumber_expressions/regular_expression.rb, line 44 def to_s regexp.inspect end