| Summary: | [Scoping] Track references to resource external elements | ||
|---|---|---|---|
| Product: | [Modeling] TMF | Reporter: | Sven Efftinge <sven.efftinge> |
| Component: | Xtext | Assignee: | Project Inbox <tmf.xtext-inbox> |
| Status: | CLOSED WORKSFORME | QA Contact: | |
| Severity: | enhancement | ||
| Priority: | P3 | CC: | moritz.eysholdt, sebastian.zarnekow |
| Version: | 2.0.0 | Flags: | sven.efftinge:
indigo+
|
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Mac OS X - Carbon (unsup.) | ||
| Whiteboard: | |||
|
Description
Sven Efftinge
Wouldn't it be the responsibility of IResourceDescription.getReferenceDescriptions() to export an IReferenceDescription if the reference should be tracked? By "tracked", do you mean "made available in IResourceDescription.getImportedNames()"? I meant add the qualified names to the list of names in IResourceDescriptin.getImportedNames(), which is the information on which IResourceDescription.Manager.isAffected(Delta, IResourceDescription) is based by default. (In reply to comment #2) > I meant add the qualified names to the list of names in > IResourceDescriptin.getImportedNames(), which is the information on which > IResourceDescription.Manager.isAffected(Delta, IResourceDescription) is based > by default. #isAffected takes the actually established cross references into account, too. However, it will still return false as soon as a new method is introduced in the referenced type that overloads / overrides the previously referenced method, e.g. 123.value where 123's type is MySpecialNumber type and I introduce getValue in MySpecialNumberType. I don't think it's the right way to add MySpecialNumberType#value, MySpecialNumberType#getValue, MyNumberType#value ... to the list of imported names. It should be possible to add synthetic references to the list of reference descriptions that point to the resources of the actually referenced types. closing this as WORKSFORME, since this is considered a language specific problem. We can't solve every language's problem in a generic way. |