File tree Expand file tree Collapse file tree 5 files changed +19
-18
lines changed
Expand file tree Collapse file tree 5 files changed +19
-18
lines changed Original file line number Diff line number Diff line change 99cc_binary (
1010 name = "extractor" ,
1111 srcs = [
12- "Extractor .h" ,
13- "Extractor .cpp" ,
14- "Configuration .h" ,
12+ "SwiftExtractor .h" ,
13+ "SwiftExtractor .cpp" ,
14+ "SwiftExtractorConfiguration .h" ,
1515 "main.cpp" ,
1616 ],
1717 copts = [
Original file line number Diff line number Diff line change 1- #include " Extractor .h"
1+ #include " SwiftExtractor .h"
22
33#include < filesystem>
44#include < fstream>
1414
1515using namespace codeql ;
1616
17- Extractor::Extractor (const Configuration& config, swift::CompilerInstance& instance)
17+ SwiftExtractor::SwiftExtractor (const SwiftExtractorConfiguration& config,
18+ swift::CompilerInstance& instance)
1819 : config{config}, compiler{instance} {}
1920
20- void Extractor ::extract () {
21+ void SwiftExtractor ::extract () {
2122 // Swift frontend can be called in several different modes, we are interested
2223 // only in the cases when either a primary or a main source file is present
2324 if (compiler.getPrimarySourceFiles ().empty ()) {
@@ -35,7 +36,7 @@ void Extractor::extract() {
3536 }
3637}
3738
38- void Extractor ::extractFile (swift::SourceFile& file) {
39+ void SwiftExtractor ::extractFile (swift::SourceFile& file) {
3940 if (std::error_code ec = llvm::sys::fs::create_directories (config.trapDir )) {
4041 std::cerr << " Cannot create TRAP directory: " << ec.message () << " \n " ;
4142 return ;
@@ -102,4 +103,3 @@ void Extractor::extractFile(swift::SourceFile& file) {
102103 << trapPath.str ().str () << " ': " << ec.message () << " \n " ;
103104 }
104105}
105-
Original file line number Diff line number Diff line change 11#ifndef SWIFT_EXTRACTOR_H_
22#define SWIFT_EXTRACTOR_H_
33
4- #include " Configuration .h"
4+ #include " SwiftExtractorConfiguration .h"
55#include < swift/AST/SourceFile.h>
66#include < swift/Frontend/Frontend.h>
77#include < memory>
88
99namespace codeql {
1010
1111// TODO: add documentation for the class and its public methods
12- class Extractor {
12+ class SwiftExtractor {
1313 public:
14- explicit Extractor (const Configuration& config, swift::CompilerInstance& instance);
14+ explicit SwiftExtractor (const SwiftExtractorConfiguration& config,
15+ swift::CompilerInstance& instance);
1516 void extract ();
1617
1718 private:
1819 void extractFile (swift::SourceFile& file);
1920
20- const Configuration & config;
21+ const SwiftExtractorConfiguration & config;
2122 swift::CompilerInstance& compiler;
2223};
2324} // namespace codeql
Original file line number Diff line number Diff line change 55#include < vector>
66
77namespace codeql {
8- struct Configuration {
8+ struct SwiftExtractorConfiguration {
99 // The location for storing TRAP files to be imported by CodeQL engine.
1010 std::string trapDir;
1111 // The location for storing extracted source files.
Original file line number Diff line number Diff line change 55#include < swift/Basic/LLVMInitialize.h>
66#include < swift/FrontendTool/FrontendTool.h>
77
8- #include " Extractor .h"
8+ #include " SwiftExtractor .h"
99
1010using namespace std ::string_literals;
1111
1212class Observer : public swift ::FrontendObserver {
1313 public:
14- explicit Observer (const codeql::Configuration & config) : config{config} {}
14+ explicit Observer (const codeql::SwiftExtractorConfiguration & config) : config{config} {}
1515
1616 void performedSemanticAnalysis (swift::CompilerInstance& instance) override {
17- codeql::Extractor extractor (config, instance);
17+ codeql::SwiftExtractor extractor (config, instance);
1818 extractor.extract ();
1919 }
2020
2121 private:
22- const codeql::Configuration & config;
22+ const codeql::SwiftExtractorConfiguration & config;
2323};
2424
2525static std::string getenv_or (const char * envvar, const std::string& def) {
@@ -38,7 +38,7 @@ int main(int argc, char** argv) {
3838 PROGRAM_START (argc, argv);
3939 INITIALIZE_LLVM ();
4040
41- codeql::Configuration configuration{};
41+ codeql::SwiftExtractorConfiguration configuration{};
4242 configuration.trapDir = getenv_or (" CODEQL_EXTRACTOR_SWIFT_TRAP_DIR" , " ." );
4343 configuration.sourceArchiveDir = getenv_or (" CODEQL_EXTRACTOR_SWIFT_SOURCE_ARCHIVE_DIR" , " ." );
4444 std::vector<const char *> args;
You can’t perform that action at this time.
0 commit comments