dextool.plugin.mutate.backend.analyze

cpptooling.analyzer.clang

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_coverage
module dextool.plugin.mutate.backend.analyze.pass_coverage
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
schema_ml
module dextool.plugin.mutate.backend.analyze.schema_ml
utility
module dextool.plugin.mutate.backend.analyze.utility

Members

Aliases

AnalyzeActor
alias AnalyzeActor = typedActor!(void function(WaitForToken), void function(RunAnalyze))
Undocumented in source.
StoreActor
alias StoreActor = typedActor!(void function(Start, ToolVersion), bool function(IsDone), void function(StartedAnalyzer), void function(Analyze.Result, Token), void function(Token), void function(DoneStartingAnalyzers), void function(TestFileResult), void function(CheckPostProcess), void function(PostProcess))
Undocumented in source.
TestPathActor
alias TestPathActor = typedActor!(void function(Start, StoreActor.Address))
Undocumented in source.
log
alias log = colorlog.log!"analyze"
Undocumented in source.

Classes

TestFileResult
class TestFileResult
Undocumented in source.
TokenStreamImpl
class TokenStreamImpl

Stream of tokens excluding comment tokens.

Functions

dependencyAnalyze
bool[Path] dependencyAnalyze(Database db, FilesysIO fio)
isFileSupported
bool isFileSupported(FilesysIO fio, AbsolutePath p)

Only utf-8 files are supported

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(AbsolutePath dbPath, MutationKind[] userKinds, ConfigAnalyze analyzeConf, ConfigCompiler compilerConf, ConfigSchema schemaConf, ConfigCoverage covConf, ParsedCompileCommandRange frange, ValidateLoc valLoc, FilesysIO fio)

Analyze the files in frange for mutations.

spawnAnalyzer
auto spawnAnalyzer(AnalyzeActor.Impl self, FlowControlActor.Address flowCtrl, StoreActor.Address storeAddr, Mutation.Kind[] kinds, ParsedCompileCommand fileToAnalyze, ValidateLoc vloc, FilesysIO fio, AnalyzeConfig conf)

Start an analyze of a file

spawnStoreActor
auto spawnStoreActor(StoreActor.Impl self, FlowControlActor.Address flowCtrl, RefCounted!(Database) db, StoreConfig conf, FilesysIO fio, Path[] rootFiles)

Store the result of the analyze.

spawnTestPathActor
auto spawnTestPathActor(TestPathActor.Impl self, StoreActor.Address store, AbsolutePath[] userPaths, GlobFilter matcher, FilesysIO fio)
Undocumented in source. Be warned that the author may not have intended to support it.
toAbsolutePath
Optional!AbsolutePath toAbsolutePath(Path file, AbsolutePath workDir, ParseFlags.Include[] includes, SystemIncludePath[] systemIncludes)

Convert to an absolute path by finding the first match among the compiler flags

updateMarkedMutants
void updateMarkedMutants(Database db)

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

updateSchemaQ
auto updateSchemaQ(Database db)
Undocumented in source. Be warned that the author may not have intended to support it.
updateSchemaSizeQ
auto updateSchemaSizeQ(Database db, long userInit, long minSize)
Undocumented in source. Be warned that the author may not have intended to support it.

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.

AnalyzeConfig
struct AnalyzeConfig
Undocumented in source.
CheckPostProcess
struct CheckPostProcess
Undocumented in source.
DoneStartingAnalyzers
struct DoneStartingAnalyzers
Undocumented in source.
FileFilter
struct FileFilter

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

IsDone
struct IsDone
Undocumented in source.
PostProcess
struct PostProcess
Undocumented in source.
RunAnalyze
struct RunAnalyze
Undocumented in source.
SetDone
struct SetDone
Undocumented in source.
Start
struct Start
Undocumented in source.
StartedAnalyzer
struct StartedAnalyzer
Undocumented in source.
StoreConfig
struct StoreConfig
Undocumented in source.
StoreDoneMsg
struct StoreDoneMsg

The main thread is waiting for storeActor to send this message.

WaitForToken
struct WaitForToken
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*.