1 //===--- FrontendActions.cpp ----------------------------------------------===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 9 #include "clang/StaticAnalyzer/Frontend/FrontendActions.h" 10 #include "clang/StaticAnalyzer/Frontend/AnalysisConsumer.h" 11 #include "clang/StaticAnalyzer/Frontend/ModelConsumer.h" 12 using namespace clang; 13 using namespace ento; 14 15 std::unique_ptr<ASTConsumer> CreateASTConsumer(CompilerInstance & CI,StringRef InFile)16AnalysisAction::CreateASTConsumer(CompilerInstance &CI, StringRef InFile) { 17 return CreateAnalysisConsumer(CI); 18 } 19 ParseModelFileAction(llvm::StringMap<Stmt * > & Bodies)20ParseModelFileAction::ParseModelFileAction(llvm::StringMap<Stmt *> &Bodies) 21 : Bodies(Bodies) {} 22 23 std::unique_ptr<ASTConsumer> CreateASTConsumer(CompilerInstance & CI,StringRef InFile)24ParseModelFileAction::CreateASTConsumer(CompilerInstance &CI, 25 StringRef InFile) { 26 return std::make_unique<ModelConsumer>(Bodies); 27 } 28