class Cucumber::CucumberExpressions::CucumberExpressionParser

def create_alternative_nodes(start, _end, separators, alternatives)

def create_alternative_nodes(start, _end, separators, alternatives)
  alternatives.each_with_index.map do |n, i|
    if i == 0
      right_separator = separators[i]
      Node.new(NodeType::ALTERNATIVE, n, nil, start, right_separator.start)
    elsif i == alternatives.length - 1
      left_separator = separators[i - 1]
      Node.new(NodeType::ALTERNATIVE, n, nil, left_separator.end, _end)
    else
      left_separator = separators[i - 1]
      right_separator = separators[i]
      Node.new(NodeType::ALTERNATIVE, n, nil, left_separator.end, right_separator.start)
    end
  end
end