Changes

Summary

  1. When defining a permalink, that spans all uses of a slot or variable in a class hierarchy, we register the class in which the slot is defined. (details)
  2. class comment (details)
  3. Refactoring how breakpoints are removed after the class in which they are installed is removed. (details)
  4. Fixing variable breakpoint link update when a method containing a variable breakpoint link is modified. (details)
  5. Completing test. (details)
Commit 5fea90316aaf83ddd07703ff1e11d243ec780422 by steven.costiou
When defining a permalink, that spans all uses of a slot or variable in a class hierarchy, we register the class in which the slot is defined.
In the meantime, if we put a permalink on that slot in a subclass, when a method is changed in that subclass we need to find back the original class that was registered.
This commit handles that.
Also some renamings for better names and tests.
The file was addedsrc/Reflectivity-Tests/MetaLinkRegistryTest.class.st
The file was modifiedsrc/Reflectivity-Tests/ReflectivityExamples2Subclass.class.st (diff)
The file was modifiedsrc/Reflectivity/MetaLinkRegistry.class.st (diff)
The file was modifiedsrc/Reflectivity-Tests/LinkInstallerTest.class.st (diff)
The file was modifiedsrc/Reflectivity-Tests/ReflectivityExamples2.class.st (diff)
The file was modifiedsrc/Reflectivity-Tests/ReflectivityExamples2Subclass.class.st (diff)
Commit c93158de67dd6e4ac1f53463658554816c3c1a00 by steven.costiou
Refactoring how breakpoints are removed after the class in which they are installed is removed.
Handling the particular case of VariableBreakpoint: if they span a class hierarchy, they must be removed selectively from the entire class hierarchy depending of which class from the hierarchy is removed from the system.
The file was modifiedsrc/Reflectivity-Tests/VariableBreakpointTest.class.st (diff)
The file was modifiedsrc/Reflectivity/VariableBreakpoint.class.st (diff)
The file was modifiedsrc/Reflectivity/Breakpoint.class.st (diff)
Commit 00965bb3e5b14b91931875e335f1befea38c3669 by steven.costiou
Fixing variable breakpoint link update when a method containing a variable breakpoint link is modified.
VariableBreakpoint span multiple methods, so they should not be removed like breakpoints as soon as a method containing the var breakpoint is modified.
Instead, we just remove the nodes of the old methods from the var breakpoint link.
Some refactoring salong the way.

The file was modifiedsrc/Reflectivity/Class.extension.st (diff)
The file was modifiedsrc/Reflectivity-Tests/VariableBreakpointTest.class.st (diff)
The file was modifiedsrc/Reflectivity/Breakpoint.class.st (diff)
The file was modifiedsrc/Reflectivity/VariableBreakpoint.class.st (diff)
The file was modifiedsrc/Reflectivity/MetaLinkRegistry.class.st (diff)
The file was modifiedsrc/Reflectivity-Tests/VariableBreakpointTest.class.st (diff)