dextool.plugin.mutate.backend.analyze

Modules

ast
module dextool.plugin.mutate.backend.analyze.ast
extensions
module dextool.plugin.mutate.backend.analyze.extensions
id_factory
module dextool.plugin.mutate.backend.analyze.id_factory
pass_clang
module dextool.plugin.mutate.backend.analyze.pass_clang
pass_filter
module dextool.plugin.mutate.backend.analyze.pass_filter
pass_mutant
module dextool.plugin.mutate.backend.analyze.pass_mutant
pass_schemata
module dextool.plugin.mutate.backend.analyze.pass_schemata
utility
module dextool.plugin.mutate.backend.analyze.utility

Members

Classes

TokenStreamImpl
class TokenStreamImpl

Stream of tokens excluding comment tokens.

Functions

analyzeActor
void analyzeActor(ParsedCompileCommand fileToAnalyze, ValidateLoc vloc, FilesysIO fio, ConfigCompiler compilerConf, ConfigAnalyze analyzeConf, Tid storeActor)

Start an analyze of a file

isPathInsideAnyRoot
bool isPathInsideAnyRoot(AbsolutePath[] roots, AbsolutePath f)
printLostMarkings
void printLostMarkings(MarkedMutant[] lostMutants)

Prints a marked mutant that has become lost due to rerun of analyze

runAnalyzer
ExitStatusType runAnalyzer(Database db, ConfigAnalyze conf_analyze, ConfigCompiler conf_compiler, ParsedCompileCommandRange frange, ValidateLoc val_loc, FilesysIO fio)

Analyze the files in frange for mutations.

storeActor
void storeActor(Database* dbShared, FilesysIO fioShared, bool prune, bool fastDbStore, long poolSize, bool forceSave)

Store the result of the analyze.

updateMarkedMutants
void updateMarkedMutants(Database db)

Update the connection between the marked mutants and their mutation status id and mutation id.

Structs

Analyze
struct Analyze

Analyze a file for mutants.

AnalyzeCntMsg
struct AnalyzeCntMsg

Number of analyze tasks that has been spawned that the storeActor should wait for.

FileFilter
struct FileFilter

Filter function for files. Either all or those in stdin.

StoreDoneMsg
struct StoreDoneMsg
Undocumented in source.

Meta

License

MPL-2

Authors

Joakim Brännström (joakim.brannstrom@gmx.com)

This Source Code Form is subject to the terms of the Mozilla Public License, v.2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.

#SPC-analyzer

TODO cache the checksums. They are *heavy*.