facebookexperimental / MIRAI
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 51 files with 35,954 lines of code.
    • 12 very long files (30,076 lines of code)
    • 2 long files (1,734 lines of code)
    • 7 medium size files (2,502 lines of codeclsfd_ftr_w_mp_ins)
    • 5 small files (783 lines of code)
    • 25 very small files (859 lines of code)
83% | 4% | 6% | 2% | 2%
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
rs82% | 5% | 8% | 2% | <1%
h91% | 0% | 0% | 0% | 8%
toml0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
checker/src83% | 3% | 8% | 3% | 1%
standard_contracts/src94% | 0% | 4% | 0% | <1%
include91% | 0% | 0% | 0% | 8%
annotations/src0% | 100% | 0% | 0% | 0%
checker0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
standard_contracts0% | 0% | 0% | 0% | 100%
annotations0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
abstract_value.rs
in checker/src
6125 102
foreign_contracts.rs
in standard_contracts/src
4355 68
block_visitor.rs
in checker/src
3209 51
z3++.h
in include
3074 642
call_visitor.rs
in checker/src
2747 43
body_visitor.rs
in checker/src
2612 19
z3_solver.rs
in checker/src
2017 68
expression.rs
in checker/src
1355 2
constant_domain.rs
in checker/src
1177 5
type_visitor.rs
in checker/src
1169 4
path.rs
in checker/src
1148 23
z3_api.h
in include
1088 -
lib.rs
in annotations/src
892 -
call_graph.rs
in checker/src
842 29
summaries.rs
in checker/src
484 9
utils.rs
in checker/src
442 5
known_names.rs
in checker/src
436 1
interval_domain.rs
in checker/src
352 4
329 7
crate_visitor.rs
in checker/src
238 6
macros.rs
in standard_contracts/src
221 -
cargo_mirai.rs
in checker/src
191 7
options.rs
in checker/src
177 2
tag_domain.rs
in checker/src
174 4
callbacks.rs
in checker/src
139 5
main.rs
in checker/src
102 1
z3_fpa.h
in include
87 -
expected_errors.rs
in checker/src
80 3
z3_fixedpoint.h
in include
74 -
lib.rs
in checker/src
65 -
smt_solver.rs
in checker/src
57 12
Cargo.toml
in checker
56 -
56 -
bool_domain.rs
in checker/src
44 1
41 -
z3_v1.h
in include
38 -
z3_spacer.h
in include
34 -
environment.rs
in checker/src
31 -
z3_rcf.h
in include
30 -
z3_algebraic.h
in include
28 -
28 -
Cargo.toml
in root
16 -
lib.rs
in standard_contracts/src
16 -
Cargo.toml
in standard_contracts
14 -
z3.h
in include
14 -
z3_macros.h
in include
13 -
Cargo.toml
in annotations
13 -
z3_polynomial.h
in include
8 -
k_limits.rs
in checker/src
6 -
build.rs
in checker
5 1
Files With Most Units (Top 27)
File# lines# units
z3++.h
in include
3074 642
abstract_value.rs
in checker/src
6125 102
foreign_contracts.rs
in standard_contracts/src
4355 68
z3_solver.rs
in checker/src
2017 68
block_visitor.rs
in checker/src
3209 51
call_visitor.rs
in checker/src
2747 43
call_graph.rs
in checker/src
842 29
path.rs
in checker/src
1148 23
body_visitor.rs
in checker/src
2612 19
smt_solver.rs
in checker/src
57 12
summaries.rs
in checker/src
484 9
329 7
cargo_mirai.rs
in checker/src
191 7
crate_visitor.rs
in checker/src
238 6
callbacks.rs
in checker/src
139 5
constant_domain.rs
in checker/src
1177 5
utils.rs
in checker/src
442 5
type_visitor.rs
in checker/src
1169 4
tag_domain.rs
in checker/src
174 4
interval_domain.rs
in checker/src
352 4
expected_errors.rs
in checker/src
80 3
options.rs
in checker/src
177 2
expression.rs
in checker/src
1355 2
build.rs
in checker
5 1
bool_domain.rs
in checker/src
44 1
main.rs
in checker/src
102 1
known_names.rs
in checker/src
436 1
Files With Long Lines (Top 14)

There are 14 files with lines longer than 120 characters. In total, there are 231 long lines.

File# lines# units# long lines
z3++.h
in include
3074 642 158
lib.rs
in annotations/src
892 - 45
foreign_contracts.rs
in standard_contracts/src
4355 68 4
call_visitor.rs
in checker/src
2747 43 4
body_visitor.rs
in checker/src
2612 19 4
options.rs
in checker/src
177 2 4
z3_api.h
in include
1088 - 3
summaries.rs
in checker/src
484 9 2
abstract_value.rs
in checker/src
6125 102 2
block_visitor.rs
in checker/src
3209 51 1
329 7 1
z3_solver.rs
in checker/src
2017 68 1
cargo_mirai.rs
in checker/src
191 7 1
41 - 1
Correlations

File Size vs. Commits (all time): 51 points

checker/Cargo.windows.toml x: 1 commits (all time) y: 56 lines of code checker/src/abstract_value.rs x: 268 commits (all time) y: 6125 lines of code checker/src/block_visitor.rs x: 218 commits (all time) y: 3209 lines of code checker/src/call_visitor.rs x: 205 commits (all time) y: 2747 lines of code checker/src/expression.rs x: 91 commits (all time) y: 1355 lines of code checker/src/path.rs x: 153 commits (all time) y: 1148 lines of code checker/Cargo.toml x: 33 commits (all time) y: 56 lines of code include/z3++.h x: 6 commits (all time) y: 3074 lines of code include/z3_algebraic.h x: 6 commits (all time) y: 28 lines of code include/z3_api.h x: 6 commits (all time) y: 1088 lines of code include/z3_fixedpoint.h x: 6 commits (all time) y: 74 lines of code include/z3_polynomial.h x: 6 commits (all time) y: 8 lines of code checker/src/body_visitor.rs x: 194 commits (all time) y: 2612 lines of code checker/src/crate_visitor.rs x: 31 commits (all time) y: 238 lines of code checker/src/type_visitor.rs x: 120 commits (all time) y: 1169 lines of code checker/src/utils.rs x: 63 commits (all time) y: 442 lines of code checker/src/constant_domain.rs x: 67 commits (all time) y: 1177 lines of code checker/src/options.rs x: 24 commits (all time) y: 177 lines of code checker/src/main.rs x: 19 commits (all time) y: 102 lines of code checker/src/bool_domain.rs x: 4 commits (all time) y: 44 lines of code checker/src/environment.rs x: 91 commits (all time) y: 31 lines of code checker/src/interval_domain.rs x: 10 commits (all time) y: 352 lines of code checker/src/known_names.rs x: 41 commits (all time) y: 436 lines of code checker/src/tag_domain.rs x: 7 commits (all time) y: 174 lines of code standard_contracts/src/foreign_contracts.rs x: 147 commits (all time) y: 4355 lines of code checker/build.rs x: 3 commits (all time) y: 5 lines of code checker/src/cargo_mirai.rs x: 2 commits (all time) y: 191 lines of code checker/src/call_graph.rs x: 8 commits (all time) y: 842 lines of code checker/src/fixed_point_visitor.rs x: 26 commits (all time) y: 329 lines of code checker/src/z3_solver.rs x: 73 commits (all time) y: 2017 lines of code checker/src/callbacks.rs x: 238 commits (all time) y: 139 lines of code checker/src/k_limits.rs x: 23 commits (all time) y: 6 lines of code include/z3.h x: 1 commits (all time) y: 14 lines of code include/z3_v1.h x: 1 commits (all time) y: 38 lines of code annotations/Cargo.toml x: 22 commits (all time) y: 13 lines of code standard_contracts/Cargo.toml x: 2 commits (all time) y: 14 lines of code standard_contracts/src/macros.rs x: 8 commits (all time) y: 221 lines of code checker/src/summaries.rs x: 84 commits (all time) y: 484 lines of code standard_contracts/src/lib.rs x: 12 commits (all time) y: 16 lines of code annotations/src/lib.rs x: 26 commits (all time) y: 892 lines of code checker/src/expected_errors.rs x: 7 commits (all time) y: 80 lines of code checker/src/smt_solver.rs x: 7 commits (all time) y: 57 lines of code Cargo.toml x: 15 commits (all time) y: 16 lines of code
6125.0
lines of code
  min: 5.0
  average: 704.98
  25th percentile: 30.0
  median: 102.0
  75th percentile: 892.0
  max: 6125.0
0 268.0
commits (all time)
min: 1.0 | average: 47.94 | 25th percentile: 6.0 | median: 12.0 | 75th percentile: 67.0 | max: 268.0

File Size vs. Contributors (all time): 51 points

checker/Cargo.windows.toml x: 1 contributors (all time) y: 56 lines of code checker/src/abstract_value.rs x: 3 contributors (all time) y: 6125 lines of code checker/src/block_visitor.rs x: 4 contributors (all time) y: 3209 lines of code checker/src/call_visitor.rs x: 5 contributors (all time) y: 2747 lines of code checker/src/expression.rs x: 3 contributors (all time) y: 1355 lines of code checker/src/path.rs x: 3 contributors (all time) y: 1148 lines of code checker/Cargo.toml x: 4 contributors (all time) y: 56 lines of code include/z3++.h x: 1 contributors (all time) y: 3074 lines of code include/z3_algebraic.h x: 1 contributors (all time) y: 28 lines of code include/z3_api.h x: 1 contributors (all time) y: 1088 lines of code include/z3_fixedpoint.h x: 1 contributors (all time) y: 74 lines of code include/z3_polynomial.h x: 1 contributors (all time) y: 8 lines of code checker/src/body_visitor.rs x: 4 contributors (all time) y: 2612 lines of code checker/src/crate_visitor.rs x: 3 contributors (all time) y: 238 lines of code checker/src/type_visitor.rs x: 2 contributors (all time) y: 1169 lines of code checker/src/utils.rs x: 3 contributors (all time) y: 442 lines of code checker/src/options.rs x: 5 contributors (all time) y: 177 lines of code checker/src/main.rs x: 3 contributors (all time) y: 102 lines of code checker/src/bool_domain.rs x: 3 contributors (all time) y: 44 lines of code checker/src/interval_domain.rs x: 1 contributors (all time) y: 352 lines of code checker/src/tag_domain.rs x: 3 contributors (all time) y: 174 lines of code standard_contracts/src/foreign_contracts.rs x: 3 contributors (all time) y: 4355 lines of code checker/build.rs x: 2 contributors (all time) y: 5 lines of code checker/src/cargo_mirai.rs x: 1 contributors (all time) y: 191 lines of code checker/src/call_graph.rs x: 2 contributors (all time) y: 842 lines of code checker/src/fixed_point_visitor.rs x: 3 contributors (all time) y: 329 lines of code checker/src/z3_solver.rs x: 3 contributors (all time) y: 2017 lines of code checker/src/callbacks.rs x: 5 contributors (all time) y: 139 lines of code checker/src/k_limits.rs x: 3 contributors (all time) y: 6 lines of code standard_contracts/src/macros.rs x: 1 contributors (all time) y: 221 lines of code checker/src/summaries.rs x: 2 contributors (all time) y: 484 lines of code annotations/src/lib.rs x: 4 contributors (all time) y: 892 lines of code checker/src/expected_errors.rs x: 2 contributors (all time) y: 80 lines of code
6125.0
lines of code
  min: 5.0
  average: 704.98
  25th percentile: 30.0
  median: 102.0
  75th percentile: 892.0
  max: 6125.0
0 5.0
contributors (all time)
min: 1.0 | average: 2.27 | 25th percentile: 1.0 | median: 2.0 | 75th percentile: 3.0 | max: 5.0

File Size vs. Commits (30 days): 22 points

checker/Cargo.windows.toml x: 1 commits (30d) y: 56 lines of code checker/src/abstract_value.rs x: 1 commits (30d) y: 6125 lines of code checker/src/block_visitor.rs x: 3 commits (30d) y: 3209 lines of code checker/src/call_visitor.rs x: 3 commits (30d) y: 2747 lines of code checker/src/expression.rs x: 1 commits (30d) y: 1355 lines of code checker/src/path.rs x: 1 commits (30d) y: 1148 lines of code include/z3++.h x: 5 commits (30d) y: 3074 lines of code include/z3_algebraic.h x: 5 commits (30d) y: 28 lines of code include/z3_api.h x: 5 commits (30d) y: 1088 lines of code include/z3_fixedpoint.h x: 5 commits (30d) y: 74 lines of code include/z3_polynomial.h x: 5 commits (30d) y: 8 lines of code checker/src/body_visitor.rs x: 2 commits (30d) y: 2612 lines of code checker/src/crate_visitor.rs x: 2 commits (30d) y: 238 lines of code checker/src/type_visitor.rs x: 2 commits (30d) y: 1169 lines of code checker/src/utils.rs x: 2 commits (30d) y: 442 lines of code
6125.0
lines of code
  min: 5.0
  average: 1075.18
  25th percentile: 33.0
  median: 162.5
  75th percentile: 1669.25
  max: 6125.0
0 5.0
commits (30d)
min: 1.0 | average: 3.36 | 25th percentile: 1.75 | median: 4.0 | 75th percentile: 5.0 | max: 5.0

File Size vs. Contributors (30 days): 22 points

checker/Cargo.windows.toml x: 1 contributors (30d) y: 56 lines of code checker/src/abstract_value.rs x: 1 contributors (30d) y: 6125 lines of code checker/src/block_visitor.rs x: 1 contributors (30d) y: 3209 lines of code checker/src/call_visitor.rs x: 1 contributors (30d) y: 2747 lines of code checker/src/expression.rs x: 1 contributors (30d) y: 1355 lines of code checker/src/path.rs x: 1 contributors (30d) y: 1148 lines of code include/z3++.h x: 1 contributors (30d) y: 3074 lines of code include/z3_algebraic.h x: 1 contributors (30d) y: 28 lines of code include/z3_api.h x: 1 contributors (30d) y: 1088 lines of code include/z3_fixedpoint.h x: 1 contributors (30d) y: 74 lines of code include/z3_polynomial.h x: 1 contributors (30d) y: 8 lines of code checker/src/body_visitor.rs x: 1 contributors (30d) y: 2612 lines of code checker/src/crate_visitor.rs x: 1 contributors (30d) y: 238 lines of code checker/src/type_visitor.rs x: 1 contributors (30d) y: 1169 lines of code checker/src/utils.rs x: 1 contributors (30d) y: 442 lines of code
6125.0
lines of code
  min: 5.0
  average: 1075.18
  25th percentile: 33.0
  median: 162.5
  75th percentile: 1669.25
  max: 6125.0
0 1.0
contributors (30d)
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0

File Size vs. Commits (90 days): 25 points

checker/Cargo.windows.toml x: 1 commits (90d) y: 56 lines of code checker/src/abstract_value.rs x: 1 commits (90d) y: 6125 lines of code checker/src/block_visitor.rs x: 8 commits (90d) y: 3209 lines of code checker/src/call_visitor.rs x: 4 commits (90d) y: 2747 lines of code checker/src/expression.rs x: 1 commits (90d) y: 1355 lines of code checker/src/path.rs x: 1 commits (90d) y: 1148 lines of code checker/Cargo.toml x: 3 commits (90d) y: 56 lines of code include/z3++.h x: 5 commits (90d) y: 3074 lines of code include/z3_algebraic.h x: 5 commits (90d) y: 28 lines of code include/z3_api.h x: 5 commits (90d) y: 1088 lines of code include/z3_fixedpoint.h x: 5 commits (90d) y: 74 lines of code include/z3_polynomial.h x: 5 commits (90d) y: 8 lines of code checker/src/body_visitor.rs x: 4 commits (90d) y: 2612 lines of code checker/src/crate_visitor.rs x: 3 commits (90d) y: 238 lines of code checker/src/type_visitor.rs x: 5 commits (90d) y: 1169 lines of code checker/src/utils.rs x: 3 commits (90d) y: 442 lines of code checker/src/constant_domain.rs x: 1 commits (90d) y: 1177 lines of code checker/src/options.rs x: 2 commits (90d) y: 177 lines of code checker/src/main.rs x: 1 commits (90d) y: 102 lines of code
6125.0
lines of code
  min: 5.0
  average: 1004.4
  25th percentile: 37.5
  median: 177.0
  75th percentile: 1266.0
  max: 6125.0
0 8.0
commits (90d)
min: 1.0 | average: 3.72 | 25th percentile: 1.5 | median: 5.0 | 75th percentile: 5.0 | max: 8.0

File Size vs. Contributors (90 days): 25 points

checker/Cargo.windows.toml x: 1 contributors (90d) y: 56 lines of code checker/src/abstract_value.rs x: 1 contributors (90d) y: 6125 lines of code checker/src/block_visitor.rs x: 1 contributors (90d) y: 3209 lines of code checker/src/call_visitor.rs x: 1 contributors (90d) y: 2747 lines of code checker/src/expression.rs x: 1 contributors (90d) y: 1355 lines of code checker/src/path.rs x: 1 contributors (90d) y: 1148 lines of code include/z3++.h x: 1 contributors (90d) y: 3074 lines of code include/z3_algebraic.h x: 1 contributors (90d) y: 28 lines of code include/z3_api.h x: 1 contributors (90d) y: 1088 lines of code include/z3_fixedpoint.h x: 1 contributors (90d) y: 74 lines of code include/z3_polynomial.h x: 1 contributors (90d) y: 8 lines of code checker/src/body_visitor.rs x: 1 contributors (90d) y: 2612 lines of code checker/src/crate_visitor.rs x: 1 contributors (90d) y: 238 lines of code checker/src/type_visitor.rs x: 1 contributors (90d) y: 1169 lines of code checker/src/utils.rs x: 1 contributors (90d) y: 442 lines of code checker/src/options.rs x: 1 contributors (90d) y: 177 lines of code checker/src/main.rs x: 1 contributors (90d) y: 102 lines of code
6125.0
lines of code
  min: 5.0
  average: 1004.4
  25th percentile: 37.5
  median: 177.0
  75th percentile: 1266.0
  max: 6125.0
0 1.0
contributors (90d)
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0