Ticket #172 (closed enhancement: fixed)

Opened 4 years ago

Last modified 4 years ago

Support playedBy markers in the editor's ruler

Reported by: stephan Owned by: stephan
Priority: major Milestone: OTDT_1.2.5
Component: ui Version: 1.2.4
Keywords: Cc:

Description

Just like callin markers for bound base methods we should add playedBy markers for bound base classes.

This issue depends on #171.

Change History

Changed 4 years ago by stephan

  • status changed from new to closed
  • resolution set to fixed

Implemented in r19284, which broadly improves the CallinMarkerCreator2:

  • generally operate alike on source/binary (see also r19273). This is supported by the AbstractMarkable class and its subclasses ResourceMarkable (for ICompilationUnit) and JavaElementMarkable (for IClassFile)
  • generally support two kinds of bindings: playedBy and callin
    • search in two phases (see below)
    • different markers, icon, tooltip, menu title
  • split search into two phases:
    • find all roles bound to a base class from the current scope (see below)
    • within these roles find callin bindings and identify the affected base methods

More details on the new search strategy: This strategy is quite similar to what carp suggested in r12963. Base classes to consider are:

  • super classes (transitive)
  • member classes (transitive)
  • sub classes of focus and members (but not of supers)

PlayedBy references are found using the new support from #171. Callin bindings are then found by direct traversal of java elements.

For types without members and with a moderate type hierarchy this is an extreme speed-up. In no case should the new search spin nearly as long as the old did.

Note: See TracTickets for help on using tickets.