Metoda loop din modulul Kernel rulează un bloc la infinit, având o caracteristică specială unică în Ruby: capturează automat excepția StopIteration aruncată de enumeratori la terminare și părăsește bucla în mod ordonat fără eroare.
# Consumarea manuală a unui Enumerator pas cu pas:
enumerator = ["Alpha", "Beta", "Gamma"].each
# Metoda 'loop' se oprește silențios când enumeratorul este epuizat:
loop do
element = enumerator.next # Aruncă StopIteration la final
puts "Procesat: #{element}"
end
puts "Bucla s-a încheiat curat!"
# Ieșire manuală prin 'break':
contor = 0
loop do
contor += 1
break if contor >= 3
end
Domeniu de vizibilitate: Spre deosebire de while, bucla loop utilizează un bloc (delimitat de do..end), creând un domeniu lexical izolat pentru variabilele locale declarate în interior.
Întrebări & Exemple de Cod:
Kernel#loop în Ruby: Bucle Infinite Sigure și Tratarea StopIterationAi o nelămurire despre utilizarea comenzii
Kernel#loop în Ruby: Bucle Infinite Sigure și Tratarea StopIterationsau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.