Class: Hashira::Duplication::Clusters
- Inherits:
-
Object
- Object
- Hashira::Duplication::Clusters
- Defined in:
- lib/hashira/duplication/clusters.rb
Constant Summary collapse
- PREFILTER =
12- BASE_MASS =
16- NEAR_MASS =
40- PAIR =
2- PENALTY_PER_RECURRENCE =
2
Instance Method Summary collapse
-
#initialize(all) ⇒ Clusters
constructor
A new instance of Clusters.
- #sorted ⇒ Object
Constructor Details
#initialize(all) ⇒ Clusters
Returns a new instance of Clusters.
10 11 12 |
# File 'lib/hashira/duplication/clusters.rb', line 10 def initialize(all) @all = all end |
Instance Method Details
#sorted ⇒ Object
14 15 16 17 18 |
# File 'lib/hashira/duplication/clusters.rb', line 14 def sorted fragments.group_by(&:types).each_value { |group| chain(group) } Hashira::Duplication::NearMiss.new(fragments).pairs.each { |left, right| sets.union(left, right) } Hashira::Duplication::Maximal.new(sized).reduced.sort_by { -it.mass } end |