|
klee
|
#include <Searcher.h>

Public Types | |
| enum | CoreSearchType : std::uint8_t { DFS , BFS , RandomState , RandomPath , NURS_CovNew , NURS_MD2U , NURS_Depth , NURS_RP , NURS_ICnt , NURS_CPICnt , NURS_QC } |
Public Member Functions | |
| virtual | ~Searcher ()=default |
| virtual ExecutionState & | selectState ()=0 |
| virtual void | update (ExecutionState *current, const std::vector< ExecutionState * > &addedStates, const std::vector< ExecutionState * > &removedStates)=0 |
| virtual bool | empty ()=0 |
| virtual void | printName (llvm::raw_ostream &os)=0 |
Prints name of searcher as a klee_message(). More... | |
A Searcher implements an exploration strategy for the Executor by selecting states for further exploration using different strategies or heuristics.
Definition at line 40 of file Searcher.h.
| enum klee::Searcher::CoreSearchType : std::uint8_t |
| Enumerator | |
|---|---|
| DFS | |
| BFS | |
| RandomState | |
| RandomPath | |
| NURS_CovNew | |
| NURS_MD2U | |
| NURS_Depth | |
| NURS_RP | |
| NURS_ICnt | |
| NURS_CPICnt | |
| NURS_QC | |
Definition at line 63 of file Searcher.h.
|
virtualdefault |
|
pure virtual |
Implemented in klee::DFSSearcher, klee::BFSSearcher, klee::RandomSearcher, klee::WeightedRandomSearcher, klee::RandomPathSearcher, klee::MergingSearcher, klee::BatchingSearcher, klee::IterativeDeepeningTimeSearcher, and klee::InterleavedSearcher.
|
pure virtual |
Prints name of searcher as a klee_message().
Implemented in klee::DFSSearcher, klee::BFSSearcher, klee::RandomSearcher, klee::WeightedRandomSearcher, klee::RandomPathSearcher, klee::MergingSearcher, klee::BatchingSearcher, klee::IterativeDeepeningTimeSearcher, and klee::InterleavedSearcher.
Referenced by klee::constructUserSearcher().

|
pure virtual |
Selects a state for further exploration.
Implemented in klee::DFSSearcher, klee::BFSSearcher, klee::RandomSearcher, klee::WeightedRandomSearcher, klee::RandomPathSearcher, klee::MergingSearcher, klee::BatchingSearcher, klee::IterativeDeepeningTimeSearcher, and klee::InterleavedSearcher.
Referenced by klee::Executor::run(), and klee::InterleavedSearcher::selectState().

|
pure virtual |
Notifies searcher about new or deleted states.
| current | The currently selected state for exploration. |
| addedStates | The newly branched states with current as common ancestor. |
| removedStates | The states that will be terminated. |
Implemented in klee::DFSSearcher, klee::BFSSearcher, klee::RandomSearcher, klee::WeightedRandomSearcher, klee::RandomPathSearcher, klee::MergingSearcher, klee::BatchingSearcher, klee::IterativeDeepeningTimeSearcher, and klee::InterleavedSearcher.
Referenced by klee::Executor::run(), and klee::Executor::updateStates().
