Bug 38427 - [breakpoints] stop in any method of the class
Summary: [breakpoints] stop in any method of the class
Status: REOPENED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Debug (show other bugs)
Version: 2.1   Edit
Hardware: All All
: P3 enhancement with 1 vote (vote)
Target Milestone: ---   Edit
Assignee: JDT-Debug-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords: helpwanted
Depends on:
Blocks:
 
Reported: 2003-06-04 15:01 EDT by Uli Bubenheimer CLA
Modified: 2015-10-07 03:48 EDT (History)
7 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Uli Bubenheimer CLA 2003-06-04 15:01:35 EDT
Sometimes, when I debug, I want to stop execution as soon as it reaches a 
certain class context to execute certain methods on the class manually. This 
is useful, for example, when doing GUI development; after I make certain 
changes to my GUI components I redisplay them by calling an initialization 
method on the class.

Right now, what I have to do is to set a breakpoint on a particular method of 
the class, and then somehow make my application call that method, which leads 
to the breakpoint being hit and me being able to manually call my 
initialization method. Instead of setting a breakpoint on a particular method, 
I want the breakpoint to be hit on any class method, since that gives me the 
class context I need to call my initialization method. I don't want to be 
required to set a breakpoint on a specific method, when all I need is the 
class context.

JBuilder has this feature from what I've seen.
Comment 1 Darin Wright CLA 2003-07-09 14:16:30 EDT
I'm not clear on the request:
* Do you want a class load breakpoint (i.e. suspend when the VM loads the 
class)?
* Or, do you want a "stop in any method on this class" breakpoint?
Comment 2 Uli Bubenheimer CLA 2003-07-15 10:56:56 EDT
A "stop in any method on this class" breakpoint.
Comment 3 Darin Wright CLA 2003-08-06 12:35:34 EDT
This can be done, but the implementation may have performance problems. This is 
implemented with "method entry requests" into a specific class. If the target 
VM implements this inefficiently, then the target program may run/debug slowly.
Comment 4 Jared Burns CLA 2003-08-13 17:54:51 EDT
Breakpoints that stopped in any method of a class should perform better than our 
existing method breakpoints.
Comment 5 Darin Wright CLA 2003-08-14 09:37:11 EDT
Not true - a method entry breakpoint is currently implemented with a line 
breakpoint on the method (which is faster than a method entry breakpoint 
request). Using a method entry request for a type (usually) turns on method 
tracing in the target VM, which (usually) slows down the target program.
Comment 6 Darin Wright CLA 2004-03-01 16:45:33 EST
Deferred
Comment 7 Darin Wright CLA 2006-06-14 12:12:52 EDT
Closing, not planning to implement.
Comment 8 Eclipse Webmaster CLA 2009-08-30 02:43:05 EDT
As of now 'LATER' and 'REMIND' resolutions are no longer supported.
Please reopen this bug if it is still valid for you.
Comment 9 Missing name CLA 2010-02-23 21:47:33 EST
This is a useful feature.. I don't think the sited performance concerns are reason to drop it. If a user were to manually troll thru a class and set a breakpoint at the start of each method, the feature would be, in effect, implemented. You cannot prevent a user from doing that and so the performance issue already exists and has not been reported as an issue (i hope :>). I've done it and hated it with up to 32 methods. Works fine. (matters-not why I can't figure out the entry point by other means). There may be valid performance issue with the manner you envisioned to implement about which I cannot say... but at least look at it from the above perspective. Make it a UI trick, if you must, but please reopen.
Comment 10 Darin Wright CLA 2010-02-24 09:12:54 EST
Re-opening as per request. Currently no plans to implement.
Comment 11 Markus Keller CLA 2010-06-01 08:45:37 EDT
> If a user were to manually troll thru a class and set a
> breakpoint at the start of each method, the feature would be, in effect,
> implemented.

You can already do that by selecting the methods in the Outline view and then using Toggle Method Breakpoint (from the context menu or the Run menu).
Comment 12 Deepak Azad CLA 2010-06-01 13:22:30 EDT
(In reply to comment #11)
> You can already do that by selecting the methods in the Outline view and then
> using Toggle Method Breakpoint (from the context menu or the Run menu).
If the selection contains an abstract method the context menu does not have the 'Toggle Method Breakpoint' option :) , the Run menu has the option though which just skips the abstract method.

But the original bug is about *any method* in a class, including inherited methods.