similarity_ts_core/
lib.rs

1pub mod apted;
2pub mod ast_fingerprint;
3pub mod fast_similarity;
4pub mod function_extractor;
5pub mod parser;
6pub mod tree;
7pub mod tsed;
8pub mod type_comparator;
9pub mod type_extractor;
10pub mod type_normalizer;
11
12pub use apted::{compute_edit_distance, APTEDOptions};
13pub use function_extractor::{
14    compare_functions, extract_functions, find_similar_functions_across_files,
15    find_similar_functions_in_file, FunctionDefinition, FunctionType, SimilarityResult,
16};
17pub use parser::{ast_to_tree_node, parse_and_convert_to_tree};
18pub use tree::TreeNode;
19pub use tsed::{calculate_tsed, calculate_tsed_from_code, TSEDOptions};
20
21// Type-related exports
22pub use type_comparator::{
23    compare_type_literal_with_type, compare_types, find_duplicate_types,
24    find_similar_type_literals, find_similar_type_literals_pairs, find_similar_types,
25    group_similar_types, MatchedProperty, SimilarTypePair, TypeComparisonOptions,
26    TypeComparisonResult, TypeDifferences, TypeLiteralComparisonPair, TypeMismatch,
27};
28pub use type_extractor::{
29    extract_type_literals_from_code, extract_type_literals_from_files, extract_types_from_code,
30    extract_types_from_files, PropertyDefinition, TypeDefinition, TypeKind, TypeLiteralContext,
31    TypeLiteralDefinition,
32};
33pub use type_normalizer::{
34    calculate_property_similarity, calculate_type_similarity, find_property_matches,
35    normalize_type, NormalizationOptions, NormalizedType, PropertyMatch,
36};
37
38// Fast similarity exports
39pub use ast_fingerprint::AstFingerprint;
40pub use fast_similarity::{
41    find_similar_functions_across_files_fast, find_similar_functions_fast, FastSimilarityOptions,
42};