static async addAstToProjectsData(projectsData, requiredAst) {
    const resultWithAsts = [];

    for (const projectData of projectsData) {
      const cachedData = astProjectsDataCache.get(projectData.project.path);
      if (cachedData) {
        resultWithAsts.push(cachedData);
        continue; // eslint-disable-line no-continue
      }

      const resultEntries = [];
      for (const entry of projectData.entries) {
        const ast = await AstService.getAst(entry.context.code, requiredAst, {
          filePath: entry.file,
        });
        resultEntries.push({ ...entry, ast });
      }
      const astData = { ...projectData, entries: resultEntries };
      this._addToProjectsDataCache(`${projectData.project.path}#${requiredAst}`, astData);
      resultWithAsts.push(astData);
    }

    return resultWithAsts;
  }
@param {ProjectInputData[]} projectsData
@param {AnalyzerAst} requiredAst