class Cucumber::CucumberExpressions::CucumberExpression
def rewrite_optional(node)
def rewrite_optional(node) assert_no_parameters(node) { |astNode| raise ParameterIsNotAllowedInOptional.new(astNode, @expression) } assert_no_optionals(node) { |astNode| raise OptionalIsNotAllowedInOptional.new(astNode, @expression) } assert_not_empty(node) { |astNode| raise OptionalMayNotBeEmpty.new(astNode, @expression) } regex = node.nodes.map { |n| rewrite_to_regex(n) }.join('') "(?:#{regex})?" end