program.md
June 3, 2023 · View on GitHub
Программа
Определяется в program.ts. Контекст компиляции (концепция, которую мы рассмотрели ранее) представлен в компиляторе TypeScript как Program. Он состоит из Исходных файлов и компилятора.
Использование CompilerHost
Это механизм взаимодействия с ОЕ:
Program -использует-> CompilerHost -использует-> System
Причина наличия CompilerHost в качестве точки обхода заключается в том, что он позволяет более точно настроить его интерфейс для нужд программы и не беспокоиться о нуждах OE. (например Program не заботится о файле fileExists - функция, предоставляемая System).
There are other users of System as well (e.g. tests).
SourceFile
Программа предоставляет API для получения Source Files. getSourceFiles(): SourceFile[];. Каждый представлен как узел корневого уровня для AST. (называется SourceFile).