scitools.com

← Metric catalog

Dependency References In is one of the source-code metrics Understand computes across 17+ languages — browse them in the GUI, export and track them, or script them with the Python API.

Dependency References In

API ID: CountDepRefsIn
Languages: Any
Targets: Architectures

Total number of dependency references from other architectures into this one or its descendants.

Each reference (e.g. an include or use) is counted, so this can be larger than the number of dependent architectures.

In the sample below, for "project", references in are 7 (main_test.cpp→main.cpp) plus 5 (api_test.cpp→api.cpp), so CountDepRefsIn is 12.

Compare to CountDepsIn (number of dependent architectures) and CountDirectDepRefsIn (references only into this architecture's own entities).

Consider a directory-style architecture and dependencies:

Dependencies (with reference counts):

  1. main.cpp → api.cpp (3 refs)
  2. main.cpp → ui.cpp (9 refs)
  3. main.cpp → library1.cpp (8 refs)
  4. api.cpp → library1.cpp (6 refs)
  5. ui.cpp → library2.cpp (4 refs)
  6. ui.cpp → api.cpp (2 refs)
  7. main_test.cpp → main.cpp (7 refs)
  8. api_test.cpp → api.cpp (5 refs)

For project, the metrics are:

MetricValue
CountDepsIn2
CountDepsOut2
CountDepRefsIn12
CountDepRefsOut18
CountDirectDepsIn1
CountDirectDepsOut3
CountDirectDepRefsIn7
CountDirectDepRefsOut20
CountMajorDepsIn1
CountMajorDepsOut1