apple / swift-experimental-string-processing
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 125 files with 22,145 lines of code.
    • 3 very long files (8,628 lines of code)
    • 2 long files (1,158 lines of code)
    • 20 medium size files (5,693 lines of codeclsfd_ftr_w_mp_ins)
    • 30 small files (3,966 lines of code)
    • 70 very small files (2,700 lines of code)
38% | 5% | 25% | 17% | 12%
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
swift38% | 5% | 25% | 17% | 12%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
Sources/_StringProcessing/RegexDSL93% | 0% | 0% | 5% | 1%
Sources/Exercises97% | 0% | 0% | 0% | 2%
Sources/_MatchingEngine/Regex26% | 0% | 52% | 11% | 10%
Sources/_MatchingEngine/Utility0% | 48% | 0% | 39% | 11%
Sources/_StringProcessing0% | 29% | 54% | 9% | 6%
Sources/_MatchingEngine/Engine0% | 0% | 64% | 17% | 17%
Sources/Prototypes/PEG0% | 0% | 44% | 40% | 14%
Sources/_StringProcessing/Algorithms0% | 0% | 21% | 33% | 44%
Sources/_StringProcessing/Legacy0% | 0% | 30% | 69% | 0%
Sources/VariadicsGenerator0% | 0% | 100% | 0% | 0%
Sources/Prototypes/PTCaRet0% | 0% | 0% | 96% | 3%
Sources/Prototypes/Combinators0% | 0% | 0% | 100% | 0%
Sources/_Unicode0% | 0% | 0% | 68% | 31%
Sources/Exercises/Participants0% | 0% | 0% | 42% | 57%
Sources/Prototypes/TourOfTypes0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
Sources/PatternConverter0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
Concatenation.swift
in Sources/_StringProcessing/RegexDSL
5975 252
GraphemeBreakData.swift
in Sources/Exercises
1451 1
LexicalAnalysis.swift
in Sources/_MatchingEngine/Regex/Parse
1202 39
MissingUnicode.swift
in Sources/_MatchingEngine/Utility
616 -
ConsumerInterface.swift
in Sources/_StringProcessing
542 10
Atom.swift
in Sources/_MatchingEngine/Regex/AST
414 -
CharacterPropertyClassification.swift
in Sources/_MatchingEngine/Regex/Parse
395 -
CharacterClass.swift
in Sources/_StringProcessing
341 3
ASTBuilder.swift
in Sources/_StringProcessing
337 58
Compiler.swift
in Sources/_StringProcessing
336 6
Builder.swift
in Sources/_MatchingEngine/Engine
319 1
Processor.swift
in Sources/_MatchingEngine/Engine
311 12
DumpAST.swift
in Sources/_MatchingEngine/Regex/Printing
295 2
PEGCore.swift
in Sources/Prototypes/PEG
293 28
Parse.swift
in Sources/_MatchingEngine/Regex/Parse
281 12
PrintAsPattern.swift
in Sources/_MatchingEngine/Regex/Printing
280 7
PrintAsCanonical.swift
in Sources/_MatchingEngine/Regex/Printing
261 7
AST.swift
in Sources/_MatchingEngine/Regex/AST
252 1
CaptureStructure.swift
in Sources/_MatchingEngine/Regex/Parse
250 4
LegacyCompile.swift
in Sources/_StringProcessing/Legacy
247 4
Trim.swift
in Sources/_StringProcessing/Algorithms/Algorithms
246 2
VariadicsGenerator.swift
in Sources/VariadicsGenerator
220 9
PEGCompile.swift
in Sources/Prototypes/PEG
207 8
InstPayload.swift
in Sources/_MatchingEngine/Engine
205 21
Split.swift
in Sources/_StringProcessing/Algorithms/Algorithms
203 6
Core.swift
in Sources/_StringProcessing/RegexDSL
177 7
Mocking.swift
in Sources/_MatchingEngine/Regex/Parse
171 10
MatchingOptions.swift
in Sources/_StringProcessing
168 7
Ranges.swift
in Sources/_StringProcessing/Algorithms/Algorithms
156 4
Replace.swift
in Sources/_StringProcessing/Algorithms/Algorithms
156 -
Formatting.swift
in Sources/_MatchingEngine/Utility
155 11
DSL.swift
in Sources/_StringProcessing/RegexDSL
150 -
HareVM.swift
in Sources/_StringProcessing/Legacy
149 9
PTCaRet.swift
in Sources/Prototypes/PTCaRet
147 1
PEGInterpreter.swift
in Sources/Prototypes/PEG
146 13
Matches.swift
in Sources/_StringProcessing/Algorithms/Matching
146 4
VirtualMachine.swift
in Sources/_StringProcessing/Legacy
144 16
TwoWaySearcher.swift
in Sources/_StringProcessing/Algorithms/Searchers
142 5
Combinators.swift
in Sources/Prototypes/Combinators
141 2
TortoiseVM.swift
in Sources/_StringProcessing/Legacy
139 9
Misc.swift
in Sources/_MatchingEngine/Utility
128 2
RECode.swift
in Sources/_StringProcessing/Legacy
126 4
Instruction.swift
in Sources/_MatchingEngine/Engine
123 3
Diagnostics.swift
in Sources/_MatchingEngine/Regex/Parse
119 -
TypedInt.swift
in Sources/_MatchingEngine/Utility
117 -
Source.swift
in Sources/_MatchingEngine/Regex/Parse
114 16
PEG.swift
in Sources/Prototypes/PEG
111 1
Registers.swift
in Sources/_MatchingEngine/Engine
110 1
Decoding.swift
in Sources/_Unicode
109 -
TypeConstruction.swift
in Sources/_MatchingEngine/Utility
106 4
Files With Most Units (Top 20)
File# lines# units
Concatenation.swift
in Sources/_StringProcessing/RegexDSL
5975 252
ASTBuilder.swift
in Sources/_StringProcessing
337 58
LexicalAnalysis.swift
in Sources/_MatchingEngine/Regex/Parse
1202 39
PEGCore.swift
in Sources/Prototypes/PEG
293 28
InstPayload.swift
in Sources/_MatchingEngine/Engine
205 21
Source.swift
in Sources/_MatchingEngine/Regex/Parse
114 16
VirtualMachine.swift
in Sources/_StringProcessing/Legacy
144 16
PEGInterpreter.swift
in Sources/Prototypes/PEG
146 13
Processor.swift
in Sources/_MatchingEngine/Engine
311 12
Parse.swift
in Sources/_MatchingEngine/Regex/Parse
281 12
Formatting.swift
in Sources/_MatchingEngine/Utility
155 11
Mocking.swift
in Sources/_MatchingEngine/Regex/Parse
171 10
ConsumerInterface.swift
in Sources/_StringProcessing
542 10
CharacterClass.swift
in Sources/Prototypes/TourOfTypes
92 9
VariadicsGenerator.swift
in Sources/VariadicsGenerator
220 9
HareVM.swift
in Sources/_StringProcessing/Legacy
149 9
TortoiseVM.swift
in Sources/_StringProcessing/Legacy
139 9
PEGCompile.swift
in Sources/Prototypes/PEG
207 8
PrettyPrinter.swift
in Sources/_MatchingEngine/Regex/Printing
66 8
PrintAsCanonical.swift
in Sources/_MatchingEngine/Regex/Printing
261 7
Files With Long Lines (Top 4)

There are 4 files with lines longer than 120 characters. In total, there are 569 long lines.

File# lines# units# long lines
Concatenation.swift
in Sources/_StringProcessing/RegexDSL
5975 252 564
GraphemeBreakData.swift
in Sources/Exercises
1451 1 3
TypedIndex.swift
in Sources/_MatchingEngine/Utility
86 - 1
DSLCapture.swift
in Sources/_StringProcessing/RegexDSL
76 - 1