108b86531ade68727c56918f162816075b87c864aJordy Rose//===-- CheckerRegistration.h - Checker Registration Function ---*- C++ -*-===//
227af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis//
327af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis//                     The LLVM Compiler Infrastructure
427af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis//
527af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis// This file is distributed under the University of Illinois Open Source
627af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis// License. See LICENSE.TXT for details.
727af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis//
827af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis//===----------------------------------------------------------------------===//
927af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis
1027af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis#ifndef LLVM_CLANG_SA_FRONTEND_CHECKERREGISTRATION_H
1127af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis#define LLVM_CLANG_SA_FRONTEND_CHECKERREGISTRATION_H
1227af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis
1308b86531ade68727c56918f162816075b87c864aJordy Rose#include "clang/Basic/LLVM.h"
1408b86531ade68727c56918f162816075b87c864aJordy Rose#include <string>
1508b86531ade68727c56918f162816075b87c864aJordy Rose
1627af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidisnamespace clang {
1727af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis  class AnalyzerOptions;
182e471a3e476396be1ddca4ab8b9df721bcfc9437Argyrios Kyrtzidis  class LangOptions;
19d6471f7c1921c7802804ce3ff6fe9768310f72b9David Blaikie  class DiagnosticsEngine;
2027af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis
2127af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidisnamespace ento {
2227af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis  class CheckerManager;
2327af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis
248dae128d16bf98759b7a678ce3eebb613bd17109Ted KremenekCheckerManager *createCheckerManager(AnalyzerOptions &opts,
2508b86531ade68727c56918f162816075b87c864aJordy Rose                                     const LangOptions &langOpts,
2608b86531ade68727c56918f162816075b87c864aJordy Rose                                     ArrayRef<std::string> plugins,
27d6471f7c1921c7802804ce3ff6fe9768310f72b9David Blaikie                                     DiagnosticsEngine &diags);
2827af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis
2927af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis} // end ento namespace
3027af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis
3127af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis} // end namespace clang
3227af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis
3327af04bcca46f8a3374586be1301477f9123f5e1Argyrios Kyrtzidis#endif
34