|
Arkanjo 0.2
A tool for find code duplicated functions in codebases
|
Similarity relationships storage and analysis. More...
#include <fstream>#include <map>#include <string>#include <tuple>#include <utility>#include <vector>#include <arkanjo/base/function.hpp>#include <arkanjo/base/path.hpp>#include <arkanjo/utils/utils.hpp>#include <arkanjo/base/config.hpp>
Include dependency graph for similarity_table.hpp:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Classes | |
| struct | PathId |
| struct | Cluster |
| Represents a cluster of similar functions in the similarity graph. More... | |
| struct | ClusterInfo |
| class | Similarity_Table |
| Represents a similarity graph between functions (paths). More... | |
Typedefs | |
| template<typename Key , typename Weight > | |
| using | AdjacencyList = std::vector<std::vector<std::pair<Key, Weight>>> |
| { 1: [{ key, weight }, { key, weight }] 2: [{ key, weight }] 3: [] ... } | |
Similarity relationships storage and analysis.
Stores and analyzes similarity relationships between code functions, including similarity probabilities and threshold-based filtering.
Similarity Table is a abstraction that store the pair of functions that are similar to each other and the similarity probability between them.
Definition in file similarity_table.hpp.
| using AdjacencyList = std::vector<std::vector<std::pair<Key, Weight>>> |
{ 1: [{ key, weight }, { key, weight }] 2: [{ key, weight }] 3: [] ... }
Definition at line 56 of file similarity_table.hpp.