[ANN] breakpoint.rb

F

Florian Gross

Moin!

Breakpoint.rb is a small library that lets you set breakpoints by
calling a method. When executed, a breakpoint causes an interactive ruby
session to be spawned with the current context. This makes it especially
useful for debugging because Ruby has powerful built-in capabilities for
exploring object environments. (Kernel#caller, Object#inspect,
Object#respond_to?, Kernel#local_variables, Object#instance_variables
and so on.)

There's also support for overriding return values and for an assert()
method that automatically sets a breakpoint in case an unexpected
situation occurs.

I wrote this because I constantly found myself placing calls to p() in
my code when debugging -- I think that this library is a good
replacement for doing that which is the reason of me releasing it.

The code and documentation (including a sample session) is available
from the following URL:

http://cb.wardust.net/codepaste/view/paste/54

You'll need to have Binding.of_caller available. It can be obtained at
this location:

http://noegnud.sourceforge.net/flgr/binding_of_caller.rb

This should be easier to use than the debug.rb that comes with Ruby, but
debug.rb is more powerful overall. (It has stepping capabilities, for
example.)

I'm currently overloading IRB.start -- If anybody knows of a better way
to spawn an irb session with a custom binding: I'd love to hear about it.

Regards,
Florian Gross
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,769
Messages
2,569,580
Members
45,054
Latest member
TrimKetoBoost

Latest Threads

Top