| On 10/07/2015 09:53 AM, Angelo zerr
      wrote:
 
      On this topic, I suggest the following changes in JSDT that I find
    as working enough for my experiments regarding merging Tern Outline
    into JSDT Outline:
        
          
            2° Delegate _javascript_
              features to other components liek tern 
 * Remove some extension points that are covered by upstream
    frameworks. Mainly the Common Navigator, which makes it easy to
    write an extensible Outline or a Quick Outline, without need to add
    other extension points. For example, the "_javascript_ElementFilter"
    extension point could be replaced by usage of the commonFilter.
 This is not a critical issue for extensibility, but removing code in
    JSDT without loosing funcitonality nor extensibility is something
    that we'll all see as a good thing.
 
 * Take advantage of adapters: in most classes where we want to have
    extensibility, JSDT directly uses or casts to its types
    (IJavaScriptType, IJavaScriptUnit, IJavaScriptElement...). Extenders
    projects may not use directly these types but might be able to adapt
    to the specified types relying on the Core adapter framework. By
    leveraging that and checking for adapters when possible, several
    pieces of JSDT code would remain working with the parts of extending
    frameworks. Current JSDT Outline filters are an example: Tern can
    provide its own richer elements to Outline, but since they're not
    JSDT types, filters don't work. Assuming JSDT would check for
    adapters and Tern would provide adapters, filters would remain
    working even with Tern content. We can imagine similar thing for
    refactorings, search and others.
 
 
 |