Module: ArchUnit::Metrics::Calculation::LCOM

Defined in:
lib/archunit/metrics/calculation/lcom.rb

Overview

Pure lack-of-cohesion calculations over extracted method/field relationships.

Constant Summary collapse

CALCULATIONS =
{
  lcom96a: ->(class_info) { normalized_method_field_distance(class_info) },
  lcom96b: ->(class_info) { method_field_density_complement(class_info) },
  lcom1: ->(class_info) { pair_difference(class_info) },
  lcom2: ->(class_info) { method_field_density_complement(class_info) },
  lcom3: ->(class_info) { normalized_method_field_distance(class_info) },
  lcom4: ->(class_info) { connected_components(class_info) },
  lcom5: ->(class_info) { normalized_method_field_distance(class_info) },
  lcom_star: ->(class_info) { normalized_method_field_distance(class_info) }
}.freeze