1414from codeplag .logger import codeplag_logger as logger
1515from codeplag .types import (
1616 ASTFeatures ,
17- CompareInfo ,
18- FastMetrics ,
19- StructuresInfo ,
17+ FastCompareInfo ,
18+ FullCompareInfo ,
19+ StructureCompareInfo ,
2020)
2121
2222
@@ -29,7 +29,7 @@ def save_result(
2929 self : Self ,
3030 first_work : ASTFeatures ,
3131 second_work : ASTFeatures ,
32- compare_info : CompareInfo ,
32+ compare_info : FullCompareInfo ,
3333 ) -> None : ...
3434
3535
@@ -48,14 +48,14 @@ def save_result(
4848 self : Self ,
4949 first_work : ASTFeatures ,
5050 second_work : ASTFeatures ,
51- compare_info : CompareInfo ,
51+ compare_info : FullCompareInfo ,
5252 ) -> None :
5353 """Updates the cache with new comparisons and writes it to the filesystem periodically.
5454
5555 Args:
5656 first_work (ASTFeatures): Contains the first work metadata.
5757 second_work (ASTFeatures): Contains the second work metadata.
58- compare_info (CompareInfo ): Contains information about comparisons
58+ compare_info (FullCompareInfo ): Contains information about comparisons
5959 between the first and second works.
6060 """
6161 if not self .reports .is_dir ():
@@ -91,7 +91,7 @@ def _write_df_to_fs(self: Self) -> None:
9191
9292 def get_compare_result_from_cache (
9393 self : Self , work1 : ASTFeatures , work2 : ASTFeatures
94- ) -> CompareInfo | None :
94+ ) -> FullCompareInfo | None :
9595 cache_val = self .__df_report [
9696 (self .__df_report .first_path == str (work1 .filepath ))
9797 & (self .__df_report .second_path == str (work2 .filepath ))
@@ -112,10 +112,8 @@ def read_df(path: Path) -> pd.DataFrame:
112112def serialize_compare_result (
113113 first_work : ASTFeatures ,
114114 second_work : ASTFeatures ,
115- compare_info : CompareInfo ,
115+ compare_info : FullCompareInfo ,
116116) -> pd .DataFrame :
117- assert compare_info .structure is not None
118-
119117 return pd .DataFrame (
120118 {
121119 "date" : _get_current_date (),
@@ -139,21 +137,21 @@ def serialize_compare_result(
139137 )
140138
141139
142- def deserialize_compare_result (compare_result : pd .Series ) -> CompareInfo :
140+ def deserialize_compare_result (compare_result : pd .Series ) -> FullCompareInfo :
143141 if isinstance (compare_result .compliance_matrix , str ):
144142 similarity_matrix = np .array (json .loads (compare_result .compliance_matrix ))
145143 else :
146144 similarity_matrix = np .array (compare_result .compliance_matrix )
147145
148- compare_info = CompareInfo (
149- fast = FastMetrics (
146+ compare_info = FullCompareInfo (
147+ fast = FastCompareInfo (
150148 jakkar = float (compare_result .jakkar ),
151149 operators = float (compare_result .operators ),
152150 keywords = float (compare_result .keywords ),
153151 literals = float (compare_result .literals ),
154152 weighted_average = float (compare_result .weighted_average ),
155153 ),
156- structure = StructuresInfo (
154+ structure = StructureCompareInfo (
157155 compliance_matrix = similarity_matrix ,
158156 similarity = float (compare_result .struct_similarity ),
159157 ),
0 commit comments