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 O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.