Class: Yard::Lint::PathGrouper

Inherits:
Object
  • Object
show all
Defined in:
lib/yard/lint/path_grouper.rb

Overview

Groups file paths into patterns when beneficial

Constant Summary collapse

DIRECTORY_COVERAGE_THRESHOLD =

Coverage threshold for directory-level grouping (80%)

0.8

Class Method Summary collapse

Class Method Details

.group(files, limit: 15) ⇒ Array<String>

Group file paths into patterns

Parameters:

  • files (Array<String>)

    array of file paths

  • limit (Integer) (defaults to: 15)

    minimum files to trigger grouping (default: 15)

Returns:

  • (Array<String>)

    array of paths or patterns



15
16
17
18
19
20
# File 'lib/yard/lint/path_grouper.rb', line 15

def group(files, limit: 15)
  return files.uniq.sort if files.size < limit

  grouped = find_common_directories(files, limit)
  grouped.sort
end