Manages the initialization and execution of detectors for analyzing compilation units.

Properties

colorizeOutput: boolean
cus: Map<ProjectName, CompilationUnit> = ...

Compilation units representing the actual entrypoints of the analysis targets based on user's input. Might be empty if no paths are specified.

detectors: Detector[] = []
disabledDetectors: Set<string>

List of detectors explicitly disabled by the user.

minSeverity: Severity

Minimum severity level to report warnings.

outputFormat: OutputFormat
outputPath: string
projectConfigs: Map<ProjectName, {
    configManager: TactConfigManager;
    projectRoot: string;
}> = ...

Project configuration managers for each project, used for proper path resolution in SARIF output.

tactPaths: string[] = []

Input paths specified by the user.

tools: Tool<any>[] = []

Methods

  • Initializes all detectors specified in the configuration including external and built-in detectors.

    Returns Promise<void>

    Error if a detector class cannot be found in the specified module or as a built-in.

  • Initializes all built-in tools specified in the configuration.

    Returns Promise<void>

    Error if a tool cannot be found or initialized.

  • Asynchronously creates a driver initializing all detectors.

    Parameters

    • tactPaths: string[]
    • options: Partial<CLIOptions> = {}

    Returns Promise<Driver>