def METHOD_NAME(self, node: Node):
    for alternative in node.nodes:
        if not alternative.nodes:
            raise AlternativeMayNotBeEmpty(alternative, self.expression)
        if self.are_nodes_empty(alternative):
            raise AlternativeMayNotExclusivelyContainOptionals(
                alternative, self.expression
            )
    regex = "|".join([self.rewrite_to_regex(_node) for _node in node.nodes])
    return f"(?:{regex})"