dart-archive / angular_analyzer_plugin

WORK MOVED TO dart-lang/angular repository
https://github.com/dart-lang/angular/tree/master/angular_analyzer_plugin
68 stars 13 forks source link

Add syntactic submodel #680

Closed MichaelRFairhurst closed 5 years ago

MichaelRFairhurst commented 5 years ago

This is hopefully stage one of a six part refactor:

  1. build a syntactic model
  2. build a mechanism of summarizing the syntactic model
  3. change view/directive extraction logic to produce the syntactic model

This will hopefully make the distinction between the syntactic and linked stages clearer, so that the linked stage is clearer to understand.

And, less clear to me from here to be fair:

  1. build a way to produce the syntactic model from a summary
  2. build a way to lazily resolve the syntactic model against the dart element model (likely called a "resolved" sub-model)
  3. change driver to resolve template ASTs against the new lazy resolved model

This will decouple element resolution from resynthesis, and make autocompletion/resolution faster by not resolving subdirectives more than necessary.