apple / swift-format
File Size

The distribution of size of files (measured in lines of code).

Intro
  • File size measurements show the distribution of size of files.
  • Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
  • It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
File Size Overall
  • There are 109 files with 9,891 lines of code.
    • 1 very long files (2,484 lines of code)
    • 0 long files (0 lines of code)
    • 7 medium size files (2,282 lines of codeclsfd_ftr_w_mp_ins)
    • 15 small files (1,885 lines of code)
    • 86 very small files (3,240 lines of code)
25% | 0% | 23% | 19% | 32%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: zoomable circles | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
swift25% | 0% | 23% | 17% | 33%
py0% | 0% | 0% | 100% | 0%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
Sources/SwiftFormatPrettyPrint67% | 0% | 25% | 0% | 6%
Sources/SwiftFormatRules0% | 0% | 23% | 30% | 46%
Sources/SwiftFormatWhitespaceLinter0% | 0% | 75% | 0% | 24%
Sources/SwiftFormat0% | 0% | 52% | 0% | 47%
ROOT0% | 0% | 0% | 100% | 0%
Sources/SwiftFormatCore0% | 0% | 0% | 50% | 49%
Sources/SwiftFormatConfiguration0% | 0% | 0% | 59% | 40%
Sources/swift-format0% | 0% | 0% | 19% | 80%
Sources/SwiftFormatTestSupport0% | 0% | 0% | 71% | 28%
Sources/generate-pipeline0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
TokenStreamCreator.swift
in Sources/SwiftFormatPrettyPrint
2484 16
PrettyPrint.swift
in Sources/SwiftFormatPrettyPrint
445 1
OrderedImports.swift
in Sources/SwiftFormatRules
428 3
UseShorthandTypeNames.swift
in Sources/SwiftFormatRules
359 -
WhitespaceLinter.swift
in Sources/SwiftFormatWhitespaceLinter
287 -
Pipelines+Generated.swift
in Sources/SwiftFormat
260 2
SequenceExprFolding.swift
in Sources/SwiftFormatPrettyPrint
254 2
OperatorContext.swift
in Sources/SwiftFormatPrettyPrint
249 1
Package.swift
in root
152 -
UseSynthesizedInitializer.swift
in Sources/SwiftFormatRules
145 -
RuleMask.swift
in Sources/SwiftFormatCore
140 1
BeginDocumentationCommentWithOneLineSummary.swift
in Sources/SwiftFormatRules
137 -
AddModifierRewriter.swift
in Sources/SwiftFormatRules
132 2
build-script-helper.py
in root
132 11
Configuration.swift
in Sources/SwiftFormatConfiguration
126 -
AlwaysUseLowerCamelCase.swift
in Sources/SwiftFormatRules
126 -
ValidateDocumentationComments.swift
in Sources/SwiftFormatRules
124 -
DeclSyntaxProtocol+Comments.swift
in Sources/SwiftFormatRules
118 -
Frontend.swift
in Sources/swift-format/Frontend
117 3
FileScopedDeclarationPrivacy.swift
in Sources/SwiftFormatRules
111 -
NoCasesWithOnlyFallthrough.swift
in Sources/SwiftFormatRules
111 1
DiagnosingTestCase.swift
in Sources/SwiftFormatTestSupport
109 -
Trivia+Convenience.swift
in Sources/SwiftFormatCore
105 -
OneVariableDeclarationPerLine.swift
in Sources/SwiftFormatRules
99 2
RuleCollector.swift
in Sources/generate-pipeline
87 1
UnifiedDiagnosticsEngine.swift
in Sources/swift-format/Utilities
84 4
UseTripleSlashForDocumentationComments.swift
in Sources/SwiftFormatRules
81 -
PipelineGenerator.swift
in Sources/generate-pipeline
78 4
FullyIndirectEnum.swift
in Sources/SwiftFormatRules
76 -
Verbatim.swift
in Sources/SwiftFormatPrettyPrint
74 3
SwiftFormatter.swift
in Sources/SwiftFormat
73 -
Comment.swift
in Sources/SwiftFormatPrettyPrint
73 4
ModifierListSyntax+Convenience.swift
in Sources/SwiftFormatRules
73 5
NoAccessLevelOnExtensionDeclaration.swift
in Sources/SwiftFormatRules
73 -
UseWhereClausesInForLoops.swift
in Sources/SwiftFormatRules
68 -
SwiftLinter.swift
in Sources/SwiftFormat
67 -
NoLeadingUnderscores.swift
in Sources/SwiftFormatRules
66 -
NoParensAroundConditions.swift
in Sources/SwiftFormatRules
66 -
OneCasePerLine.swift
in Sources/SwiftFormatRules
64 4
DontRepeatTypeInStaticProperties.swift
in Sources/SwiftFormatRules
63 -
DoNotUseSemicolons.swift
in Sources/SwiftFormatRules
62 -
FileIterator.swift
in Sources/swift-format/Utilities
62 2
AllPublicDeclarationsHaveDocumentation.swift
in Sources/SwiftFormatRules
61 -
ReturnVoidInsteadOfEmptyTuple.swift
in Sources/SwiftFormatRules
61 -
Token.swift
in Sources/SwiftFormatPrettyPrint
59 -
AmbiguousTrailingClosureOverload.swift
in Sources/SwiftFormatRules
58 -
FormatFrontend.swift
in Sources/swift-format/Frontend
58 1
LazySplitSequence.swift
in Sources/SwiftFormatWhitespaceLinter
57 4
LintFormatOptions.swift
in Sources/swift-format/Subcommands
56 1
StderrDiagnosticPrinter.swift
in Sources/swift-format/Utilities
55 2
Files With Most Units (Top 20)
File# lines# units
TokenStreamCreator.swift
in Sources/SwiftFormatPrettyPrint
2484 16
build-script-helper.py
in root
132 11
TestingFindingConsumer.swift
in Sources/SwiftFormatTestSupport
44 6
ModifierListSyntax+Convenience.swift
in Sources/SwiftFormatRules
73 5
Comment.swift
in Sources/SwiftFormatPrettyPrint
73 4
OneCasePerLine.swift
in Sources/SwiftFormatRules
64 4
TokenSyntax+Convenience.swift
in Sources/SwiftFormatRules
15 4
LazySplitSequence.swift
in Sources/SwiftFormatWhitespaceLinter
57 4
PipelineGenerator.swift
in Sources/generate-pipeline
78 4
UnifiedDiagnosticsEngine.swift
in Sources/swift-format/Utilities
84 4
Indent+Length.swift
in Sources/SwiftFormatPrettyPrint
26 3
Verbatim.swift
in Sources/SwiftFormatPrettyPrint
74 3
OrderedImports.swift
in Sources/SwiftFormatRules
428 3
SemicolonSyntaxProtocol.swift
in Sources/SwiftFormatRules
15 3
Frontend.swift
in Sources/swift-format/Frontend
117 3
LintPipeline.swift
in Sources/SwiftFormat
27 2
Pipelines+Generated.swift
in Sources/SwiftFormat
260 2
SequenceExprFolding.swift
in Sources/SwiftFormatPrettyPrint
254 2
AddModifierRewriter.swift
in Sources/SwiftFormatRules
132 2
ImportsXCTestVisitor.swift
in Sources/SwiftFormatRules
25 2
Files With Long Lines (Top 2)

There are 2 files with lines longer than 120 characters. In total, there are 7 long lines.

File# lines# units# long lines
build-script-helper.py
in root
132 11 5
ValidateDocumentationComments.swift
in Sources/SwiftFormatRules
124 - 2