Code forensics
0.1
Generate historical information about code changes
|
Go to the documentation of this file.
4 #ifndef REPO_PROCESSING_HPP
5 #define REPO_PROCESSING_HPP
8 #include <boost/process.hpp>
14 using SLock = std::scoped_lock<std::mutex>;
23 CR<ir::LineData> line,
36 const git_tree_entry* entry,
45 const git_tree_entry* entry);
63 Vec<SubTaskParams>& treewalk,
67 ir::CommitId out_commit);
74 #endif // REPO_PROCESSING_HPP
ir::FileId exec_walker(git_oid commit_oid, walker_state *state, ir::CommitId commit, const char *root, const git_tree_entry *entry)
git_tree_entry * entry
Entry to analyze.
Definition: repo_processing.hpp:52
void file_tasks(Vec< SubTaskParams > &treewalk, walker_state *state, git_oid commit_oid, ir::CommitId out_commit)
Definition: repo_processing.hpp:47
ir::FileId stats_via_subprocess(git_oid commit_oid, walker_state *walker, ir::File file, CR< Str > relpath)
Definition: repo_processing.cpp:33
std::scoped_lock< std::mutex > SLock
Definition: repo_processing.hpp:14
single version of the file that appeared in some commit
Definition: git_ir.hpp:135
void open_walker(git_oid &oid, walker_state &state)
Definition: repo_processing.cpp:359
void push_line(ir::FileId id, walker_state *walker, CR< ir::LineData > line, bool changed, int period)
auto get_nesting(CR< Str > line) -> int
Definition: repo_processing.cpp:18
Str root
Root path for the analyzed entry.
Definition: repo_processing.hpp:51
Mutable state passed around walker configurations.
Definition: program_state.hpp:199
int max_count
Maximum number of task to process.
Definition: repo_processing.hpp:54
git_oid commit_oid
Original git commit iD.
Definition: repo_processing.hpp:48
ir::CommitId out_commit
Definition: repo_processing.hpp:49
Main code analysis state and configuration classes.
ir::CommitId process_commit(git_oid commit_oid, walker_state *state)
Definition: repo_processing.cpp:286
int index
Task index in the global sequence.
Definition: repo_processing.hpp:53
ir::FileId stats_via_libgit(walker_state *state, git_oid commit_oid, const git_tree_entry *entry, CR< Str > relpath, ir::File file)
Definition: repo_processing.cpp:159
Vec< ir::CommitId > launch_analysis(git_oid &oid, walker_state *state)
Definition: repo_processing.cpp:574