class Cucumber::CucumberExpressions::CucumberExpression

def process_parameters(expression, parameter_type_registry)

def process_parameters(expression, parameter_type_registry)
  # Create non-capturing, optional capture groups from parenthesis
  expression.gsub(PARAMETER_REGEXP) do
    if ($1 == DOUBLE_ESCAPE)
      "\\{#{$2}\\}"
    else
      type_name = $2
      ParameterType.check_parameter_type_name(type_name)
      parameter_type = parameter_type_registry.lookup_by_type_name(type_name)
      raise UndefinedParameterTypeError.new(type_name) if parameter_type.nil?
      @parameter_types.push(parameter_type)
      build_capture_regexp(parameter_type.regexps)
    end
  end
end