Module: MetzScan::Analyzers::CrossPackageReferenceMetadata

Defined in:
lib/metz_scan/analyzers/cross_package_reference_metadata.rb

Class Method Summary collapse

Class Method Details

.counts(reference_set) ⇒ Object



8
9
10
11
12
13
# File 'lib/metz_scan/analyzers/cross_package_reference_metadata.rb', line 8

def counts(reference_set)
  { "referring_file_count" => reference_set.files.size,
    "referring_package_count" => reference_set.packages.size,
    "referring_packages" => reference_set.packages,
    "reference_shape" => reference_shape(reference_set) }
end

.declaration_metadata(declaration) ⇒ Object



22
23
24
# File 'lib/metz_scan/analyzers/cross_package_reference_metadata.rb', line 22

def (declaration)
  { "name" => declaration.name, "kind" => declaration.kind.to_s, "path" => declaration.path }.compact
end

.reference_metadata(reference) ⇒ Object



30
31
32
33
# File 'lib/metz_scan/analyzers/cross_package_reference_metadata.rb', line 30

def (reference)
  { "path" => reference.path, "line" => reference.line, "column" => reference.column,
    "package" => reference.package }.compact
end

.reference_shape(reference_set) ⇒ Object



15
16
17
18
19
20
# File 'lib/metz_scan/analyzers/cross_package_reference_metadata.rb', line 15

def reference_shape(reference_set)
  { "referring_file_count" => reference_set.files.size,
    "referring_package_count" => reference_set.packages.size,
    "referring_package_roots" => reference_set.package_roots,
    "referring_package_leafs" => reference_set.package_leafs }
end

.references_metadata(reference_set) ⇒ Object



26
27
28
# File 'lib/metz_scan/analyzers/cross_package_reference_metadata.rb', line 26

def (reference_set)
  reference_set.references.map { |reference| (reference) }
end