ArKanjo 0.5.1
A tool for find code duplicated functions in codebases
DiffMethod Class Reference

Code duplication preprocessor. More...

#include <diff_method.hpp>

+ Inheritance diagram for DiffMethod:
+ Collaboration diagram for DiffMethod:

Public Member Functions

 DiffMethod (const fs::path &base_path_, double similarity_)
 Constructs preprocessor with configuration. More...
 
void on_function (const FunctionData &fd) override
 
void execute () override
 Executes the preprocessing pipeline. More...
 
- Public Member Functions inherited from IMethod
virtual ~IMethod ()=default
 
virtual void save_duplications (std::vector< DuplicationEntry > &)
 Output line format: More...
 
virtual void on_function (const FunctionData &fd)=0
 
virtual void execute ()=0
 

Detailed Description

Code duplication preprocessor.

Performs initial analysis of the codebase to identify and catalog potential code duplications, creating a foundation for fast similarity queries during the main operation phase.

Definition at line 30 of file diff_method.hpp.

Constructor & Destructor Documentation

◆ DiffMethod()

DiffMethod::DiffMethod ( const fs::path &  base_path_,
double  similarity_ 
)

Constructs preprocessor with configuration.

Parameters
base_path_Root path of codebase
similarity_Similarity threshold (0-100)

Definition at line 10 of file diff_method.cpp.

Member Function Documentation

◆ execute()

void DiffMethod::execute ( )
overridevirtual

Executes the preprocessing pipeline.

Implements IMethod.

Definition at line 156 of file diff_method.cpp.

◆ on_function()

void DiffMethod::on_function ( const FunctionData &  fd)
overridevirtual

Implements IMethod.

Definition at line 143 of file diff_method.cpp.


The documentation for this class was generated from the following files: