The code is copied to the clipboard for ease of use.
Can now create save new methods, and also replace old ones. Does not yet work with classes.
Also added optional boolean parameter to #source(raw=false) and #doc(raw=false) When `true` is passed, display raw sourcecode, i.e including leading whitespace
Limitations: * only saves to primary candidates (monkeypatch with largest number of methods) * only saves to end of module/class definition (before the final end) * can't deal with situation where method is already defined in the file but has been overwritten by a (pry) - in this case we want to overwrite old method in exact location, not insert code at end of module/class def.
added lookup_method_via_binding(), using this rather than safe_send we respect the method object introduced by any refinements in the binding. Further work can be done for refinement support -- such as indicating that the method is a refinement, showing the name of the refining module, and so on.
It's easy to find yourself in 'pry-hell' when you've added a binding.pry in a tight loop, or if you've got pry-rescue or plymouth enabled and you've broken hundreds of tests. To get out of this, the user can just type 'disable-pry'. If you suspect in advance that pry is going to be unhelpful you can temporarily disable it without having to edit the source code of your program by exporting NO_PRY=true.
Fix issue #716 (edit --ex -p) Nothing interesting to describe :S Implement the feature and add a test for it. Also, remove a couple of extra characters from some lines (namely, quotation marks and nils). Signed-off-by: Kyrylo Silin <email@example.com>
If you don't want to see colours in your bacon output then export `NO_PRY_COLORED_BACON` variable in your shell rc file and set it to `true`. Signed-off-by: Kyrylo Silin <firstname.lastname@example.org>