mirror of
https://github.com/angular/angular.git
synced 2026-09-14 13:54:52 +08:00
d4c8a9a887
Decouple `SymbolBuilder` from the full `BoundTarget` interface by introducing a purpose-built `SymbolBoundTarget` interface containing only the 4 methods required for symbol resolution. This eliminates the need for the large, pass-through `BoundTargetAdapter` and further isolates `SymbolBuilder` from compiler-internal implementation details. Also minimize `TypeCheckableDirectiveMetaAdapter` by redefining `SymbolDirectiveMeta` to not extend `DirectiveMeta`, exposing only the properties actually used by `SymbolBuilder`. Removed dead code `getDirectiveMeta` in `template_symbol_builder.ts` which was unused. These changes improve maintainability and ensure a cleaner architecture by strictly defining the boundaries of what `SymbolBuilder` needs from the rest of the system. By limiting the required inputs to only what's necessary for the implementation, we make it easier to re-use the implementation between different compiler architectures