class Cucumber::CucumberExpressions::CucumberExpression
Constants
- ALTERNATIVE_NON_WHITESPACE_TEXT_REGEXP
- DOUBLE_ESCAPE
- ESCAPE_REGEXP
Does not include (){} characters because they have special meaning
- OPTIONAL_REGEXP
- PARAMETER_REGEXP
- PARAMETER_TYPES_CANNOT_BE_ALTERNATIVE
- PARAMETER_TYPES_CANNOT_BE_OPTIONAL
Attributes
source[R]
Public Class Methods
new(expression, parameter_type_registry)
click to toggle source
# File lib/cucumber/cucumber_expressions/cucumber_expression.rb, line 19 def initialize(expression, parameter_type_registry) @source = expression @parameter_types = [] expression = process_escapes(expression) expression = process_optional(expression) expression = process_alternation(expression) expression = process_parameters(expression, parameter_type_registry) expression = "^#{expression}$" @tree_regexp = TreeRegexp.new(expression) end
Public Instance Methods
match(text)
click to toggle source
# File lib/cucumber/cucumber_expressions/cucumber_expression.rb, line 32 def match(text) Argument.build(@tree_regexp, text, @parameter_types) end
regexp()
click to toggle source
# File lib/cucumber/cucumber_expressions/cucumber_expression.rb, line 36 def regexp @tree_regexp.regexp end
to_s()
click to toggle source
# File lib/cucumber/cucumber_expressions/cucumber_expression.rb, line 40 def to_s @source.inspect end