Integration.Driverentry points for top-level functionalities such as capture under various build systems, analysis, and reporting
type mode = | Analyze| Ant of {}| Buck2Clang of {}| BuckClangFlavor of {}| BuckCompilationDB of {deps : IBase.BuckMode.clang_compilation_db_deps;prog : string;args : string list;}| BuckErlang of {}| BuckGenrule of {}| BuckJavaFlavor of {}| BxlClang of {}| BxlClangFile| BxlJava of {}| Clang of {compiler : Clang.compiler;prog : string;args : string list;}| ClangCompilationDB of {}| Gradle of {}| Javac of {compiler : Javac.compiler;prog : string;args : string list;}| Kotlinc of {}| JsonSIL of {}| Maven of {}| NdkBuild of {}| Python of {}| PythonBytecode of {}| Rebar3 of {}| Erlc of {}| Hackc of {}| Textual of {}| XcodeBuild of {}| XcodeXcpretty of {}based on the build_system and options passed to infer, we run in different driver modes
val is_analyze_mode : mode -> boolval is_compatible_with_textual_generation : mode -> boolval mode_from_command_line : mode IStdlib.IStd.Lazy.tdriver mode computed from the command-line arguments and settings in Config
val run_prologue : mode -> unitprepare the environment for running the given mode
val capture : changed_files:IBase.SourceFile.Set.t option -> mode -> unitrun the capture for the given mode
val analyze_and_report :
changed_files:IBase.SourceFile.Set.t option ->
mode ->
unitrun the analysis for the given mode