17.10. Wykorzystanie pułapek do kontroli i modyfikacji stanu aplikacji

Problem

Podczas debugowania chcemy zatrzymać program w dowolnym punkcie i sprawdzić stan aplikacji (zmienne, struktury danych itp.). Chcemy również uzyskać możliwość modyfikacji stanu aplikacji przed jej zrestartowaniem.

Rozwiązanie

Można skorzystać z biblioteki breakpoint dostępnej w postaci gemu ruby-breakpoint.

Po umieszczeniu instrukcji require 'breakpoint', można wywoływać metodę breakpoint z dowolnego miejsca w aplikacji. Kiedy program dotrze do wywołania metody breakpoint, aplikacja przechodzi do interaktywnej sesji interpretera Ruby.

Poniżej zamieszczono krótki program w języku Ruby:

#!/usr/bin/ruby -w # breakpoint_test.rb require 'rubygems' require 'breakpoint' ...

Get Ruby. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.