|Re: [cdt-dev] DSF stack frame levels vs indexes|
Hi Mario, Mario Pierro wrote:
The cache implementation relies on the equals() and hashCode() being implemented for the contexts. Our reference implementation uses the stack frame level to implement the IFrame.equals(), but this is not a requirement. If you have more information about the stack frame at the time you create the frame context: e.g. the function name and argument types, you could use those to implement the equals() method, this would have the side benefit that the changed value high-lighting in the UI would be more accurate.Hello, I am trying to understand the caching mechanism used by DSF 2.0 when retrieving stack frames. Apparently for caching to work stack frames only need to be compared by their level - at least, that's what the GDB implementation does in MIFrameDMC.equals().
I have the following questions:1. What should the getLevel() method implementation report? Is that the number of valid stack frames that precede a given frame in the callstack?
2. What is the relation between the indexes passed to public void getFrames(IDMContext execContext, int startIndex, int endIndex, DataRequestMonitor<IFrameDMContext> rm); and stack frame levels?
They're the same.
Thanks for your help!
You're welcome :-) -Pawel
Best, /Mario _______________________________________________ cdt-dev mailing list cdt-dev@xxxxxxxxxxx https://dev.eclipse.org/mailman/listinfo/cdt-dev
Back to the top