Community
Participate
Working Groups
If a language extends XbaseWithAnnotations and the ProposalProvider extends XbaseWithAnnotationsProposalprovider there is a need to exchange the original PrefixMatcher for the method XbaseWithAnnotationsProposalprovider.completeXAnnotationValueFielReference_declaringType in the same way it is done in XbaseProposalProvider.completeXFeatureCall_DeclaringType. Otherwise there are no proposals for fqn-named DeclaredTypes because the delimiter in the DataTypeRule StaticQualifier is '::' and not '.' as in QualifiedName. A problem is that some of the methods called in completeXFeatureCall_DeclaringType are protected. So there is no access from XbaseWithAnnotationsProposalprovider. Delegating to completeXFeatureCall_DeclaringType from completeXAnnotationValueFielReference_declaringType is a solution but feels like a hack. Any thoughts?
The protected methods should be public. However, it is more important to change completeXFeatureCall_DeclaringType. It should delegate completely to a method with a better name (e.g. proposeDeclaringTypeForStaticInvocation) and completeXAnnotationValueFielReference_declaringType should delegate to that method, too. Holger, could you take care of this one?
Yes.
Created attachment 204278 [details] Patch I don not know if we can change the visibility of the mentioned methods. Therefor I attach a patch to discuss this.
Looks good to me at a first glance. Do you get any warnings from the API tooling?
No. No warnings.
pushed to master.
Closing all bugs that were set to RESOLVED before Neon.0