Как мне разорвать внешний цикл от внутреннего в Perl?

Предположим, у меня есть фрагмент кода на Perl:

foreach my $x (@x) {
 foreach my $y (@z) {
  foreach my $z (@z) {
   if (something()) {
    # I want to break free!
   }
   # do stuff 
  }
  # do stuff
 }
 # do stuff
}

Еслиsomething() это правда, я хотел бы разорвать («последний») все петли.

Как мне это сделать? Я подумал о двух вариантах, которые мне не нравятся: использование чего-либоGOTO Добавление логической переменной, которая помечаетsomething() верно, проверьте эту переменную в каждом цикле, прежде чем они возобновятся иlast() если это правда

Есть предложения или мысли?

Благодарю.

Ответы на вопрос(2)

Ваш ответ на вопрос