Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
DSDP/DD/DSF CodingCamp ExpressionServiceExcercise
< DSDP | DD
Revision as of 17:24, 7 May 2007 by Pawel.piech.windriver.com (Talk | contribs) (New page: == Goals == * Populate contents of the variables view with local variables of the selected stack frame. * Retrieve the sub-expressions of arrays and structs to show in Variable view. * Ena...)
Goals
- Populate contents of the variables view with local variables of the selected stack frame.
- Retrieve the sub-expressions of arrays and structs to show in Variable view.
- Enable evaluating of expressions that user types in the Expression view.
Existing Components
- Stack Service:
- Interface: org.eclipse.dd.dsf.debug.service.IStack
- MI Implementation: org.eclipse.dd.dsf.mi.service.MIStack
- Existing functionality:
- Retrieves list of all stack frames for a given execution context
- Retrieves the list of function arguments for a given stack frame context
- Missing functionality / Cleanup tasks
- Retrieving the list of local variables for a given stack frame context
- Simplify logic to retrieve argument data.
- Get rid of isValid() and make the VariableDMData class immutable
- Add tracing to the service
- Expression Service:
- Interface: org.eclipse.dd.dsf.debug.service.IExpressions
- MI Implementation: org.eclipse.dd.dsf.mi.service.ExpressionService
- Existing functionality:
- Provided implementation was written to the interface but never tested.
- The expression service is correctly created and shutdown during the launch sequence
- Missing functionality:
- As mentioned above the implementation was never tested, so it's not reliable as a reference.
- Existing implementation does not manage the variable objects created by GDB using the "-var-create" command. Therefore all GDB variable objects that are created are leaked.
- The expression service needs to retrieve the variable value in the number format that is specified by the client.