RegionMap

data class RegionMap(val regions: List<Region> = emptyList(), val edges: List<RegionEdge> = emptyList(), val source: RegionSource = RegionSource.PATH_PREFIX, val modularity: Double = 0.0)(source)

The project collapsed to regions and the flows between them.

Parameters

regions

Regions, largest first.

edges

Aggregated inter-region dependencies, heaviest first.

source

Where the grouping came from.

modularity

Newman modularity Q of the partition, roughly [-0.5, 1]. Above about 0.3 means the groups genuinely correspond to how the modules depend on each other.

Near or below zero is not automatically a problem: a layered architecture is designed so that most edges cross a boundary - features depend on core, core depends on model - so a layer partition legitimately scores low. Read it as "are these groups also dependency clusters?", which is a different question from "are these groups correct?".

Constructors

Link copied to clipboard
constructor(regions: List<Region> = emptyList(), edges: List<RegionEdge> = emptyList(), source: RegionSource = RegionSource.PATH_PREFIX, modularity: Double = 0.0)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
Link copied to clipboard

True when there is no useful partition - the report then falls back to module-level views.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard