tan  0.0.1
scan_imports.h
1 #ifndef __TAN_SRC_ANALYSIS_SCAN_IMPORTS_H__
2 #define __TAN_SRC_ANALYSIS_SCAN_IMPORTS_H__
3 
4 #include "analysis/analysis_action.h"
5 #include "base/container.h"
6 
7 namespace tanlang {
8 
9 class Package;
10 
11 // package name => [file paths]
12 using ScanImportsOutputType = umap<str, uset<str>>;
13 
14 /**
15  * \brief Scans all dependencies in a package, and return their names and paths to relevant source files
16  */
17 class ScanImports : public SemanticAnalysisAction<ScanImports, Package *, ScanImportsOutputType> {
18 public:
19  ScanImportsOutputType run_impl(Package *package);
20 };
21 
22 } // namespace tanlang
23 
24 #endif //__TAN_SRC_ANALYSIS_SCAN_IMPORTS_H__
Scans all dependencies in a package, and return their names and paths to relevant source files.
Definition: scan_imports.h:17