Arkanjo 0.1
A tool for find code duplicated functions in codebases
Loading...
Searching...
No Matches
counter_duplication_code.hpp
Go to the documentation of this file.
1
13#ifndef COUNTER_DUPLICATION_CODE_HPP
14#define COUNTER_DUPLICATION_CODE_HPP
15
16#include <set>
17#include "../base/path.hpp"
18#include "../base/function.hpp"
21using namespace std;
22
31 private:
32 set<Path> processed_paths;
33 Counter_Duplication_Code_Trie counter_duplication_code_trie;
34 Similarity_Table *similarity_table;
35
40 void mark_path_as_processed(Path path);
41
47 bool is_path_processed_path(Path path);
48
54 int get_number_of_lines_in_path(Path path);
55
62 void register_code_duplication(Path path1, Path path2, int number_of_lines);
63
68 void process_path(Path path);
69
73 void process_every_path_in_similarity_table();
74
75 public:
81};
82
83#endif
Trie structure for hierarchical duplication counting.
Code duplication analyzer and reporter.
Counter_Duplication_Code(Similarity_Table *_similarity_table)
Constructs analyzer with similarity data.
Path manipulation class for tool-specific directory structure.
Definition path.hpp:27
Manages and analyzes function similarity relationships.
Trie-based code duplication counter.
Function abstraction for temporary codebase.
Definition json.hpp:5678
Path abstraction for temporary codebase.
Similarity relationships storage and analysis.