awslabs / shuttle
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 42 files with 4,280 lines of code.
    • 0 very long files (0 lines of code)
    • 0 long files (0 lines of code)
    • 6 medium size files (1,753 lines of codeclsfd_ftr_w_mp_ins)
    • 11 small files (1,469 lines of code)
    • 25 very small files (1,058 lines of code)
0% | 0% | 40% | 34% | 24%
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
rs0% | 0% | 41% | 34% | 23%
toml0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
src/sync0% | 0% | 54% | 36% | 8%
src/runtime0% | 0% | 57% | 35% | 6%
src/runtime/task0% | 0% | 62% | 29% | 8%
src/runtime/thread0% | 0% | 99% | 0% | <1%
src0% | 0% | 46% | 32% | 21%
src/sync/atomic0% | 0% | 0% | 61% | 38%
src/scheduler0% | 0% | 0% | 37% | 62%
benches0% | 0% | 0% | 0% | 100%
src/scheduler/data0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
Longest Files (Top 42)
File# lines# units
execution.rs
in src/runtime
431 7
mpsc.rs
in src/sync
346 10
rwlock.rs
in src/sync
321 14
mod.rs
in src/runtime/task
226 4
continuation.rs
in src/runtime/thread
220 10
thread.rs
in src
209 4
condvar.rs
in src/sync
175 1
runner.rs
in src/runtime
168 3
mutex.rs
in src/sync
154 6
lib.rs
in src
144 1
metrics.rs
in src/scheduler
138 8
mod.rs
in src/sync/atomic
133 10
int.rs
in src/sync/atomic
124 3
once.rs
in src/sync
120 5
clock.rs
in src/runtime/task
107 4
serialization.rs
in src/scheduler
105 4
failure.rs
in src/runtime
101 3
bool.rs
in src/sync/atomic
86 3
replay.rs
in src/scheduler
86 3
pct.rs
in src/scheduler
83 3
barrier.rs
in src/sync
82 -
counter.rs
in benches
78 2
mod.rs
in src/scheduler
78 4
ptr.rs
in src/sync/atomic
76 3
dfs.rs
in src/scheduler
74 4
asynch.rs
in src
52 1
round_robin.rs
in src/scheduler
47 4
storage.rs
in src/runtime
46 -
random.rs
in src/scheduler
45 3
Cargo.toml
in root
40 -
waker.rs
in src/runtime/task
30 -
random.rs
in src/scheduler/data
30 4
rand.rs
in src
29 4
fixed.rs
in src/scheduler/data
28 4
mod.rs
in src/sync
17 -
current.rs
in src
15 -
buffer.rs
in benches
12 -
mod.rs
in src/scheduler/data
9 -
lock.rs
in benches
6 -
mod.rs
in src/runtime
6 -
mod.rs
in src/runtime/thread
2 -
rustfmt.toml
in root
1 -
Files With Most Units (Top 20)
File# lines# units
rwlock.rs
in src/sync
321 14
mpsc.rs
in src/sync
346 10
mod.rs
in src/sync/atomic
133 10
continuation.rs
in src/runtime/thread
220 10
metrics.rs
in src/scheduler
138 8
execution.rs
in src/runtime
431 7
mutex.rs
in src/sync
154 6
once.rs
in src/sync
120 5
mod.rs
in src/runtime/task
226 4
clock.rs
in src/runtime/task
107 4
rand.rs
in src
29 4
thread.rs
in src
209 4
mod.rs
in src/scheduler
78 4
serialization.rs
in src/scheduler
105 4
fixed.rs
in src/scheduler/data
28 4
random.rs
in src/scheduler/data
30 4
round_robin.rs
in src/scheduler
47 4
dfs.rs
in src/scheduler
74 4
bool.rs
in src/sync/atomic
86 3
ptr.rs
in src/sync/atomic
76 3
Files With Long Lines (Top 2)

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

File# lines# units# long lines
failure.rs
in src/runtime
101 3 2
execution.rs
in src/runtime
431 7 1