JetBrains / skia
File Size

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

Intro
Learn more...
File Size Overall
22% | 17% | 26% | 17% | 16%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: grouped by folders | grouped by size | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
cpp25% | 21% | 27% | 15% | 9%
go39% | 11% | 28% | 15% | 6%
h4% | 6% | 24% | 24% | 39%
htm100% | 0% | 0% | 0% | 0%
gn51% | 10% | 18% | 9% | 9%
mm20% | 19% | 17% | 26% | 16%
cc95% | 0% | 0% | 0% | 4%
js22% | 22% | 21% | 21% | 11%
inc100% | 0% | 0% | 0% | 0%
bzl21% | 0% | 45% | 17% | 16%
html22% | 15% | 17% | 29% | 14%
py0% | 11% | 18% | 19% | 49%
gni0% | 30% | 41% | 15% | 12%
rs0% | 61% | 14% | 15% | 8%
ts0% | 93% | 0% | 0% | 6%
c0% | 100% | 0% | 0% | 0%
json50% | 100% | 0% | 0% | 0%
java0% | 0% | 29% | 31% | 39%
natvis0% | 0% | 100% | 0% | 0%
xml0% | 0% | 19% | 23% | 57%
sql0% | 0% | 100% | 0% | 0%
toml0% | 0% | 0% | 90% | 9%
css0% | 0% | 0% | 100% | 0%
lex0% | 0% | 0% | 100% | 0%
cfg0% | 0% | 0% | 0% | 100%
vert0% | 0% | 0% | 0% | 100%
proto0% | 0% | 0% | 0% | 100%
ps10% | 0% | 0% | 0% | 100%
m0% | 0% | 0% | 0% | 100%
frag0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
src25% | 21% | 25% | 14% | 13%
tools17% | 16% | 27% | 18% | 18%
modules18% | 15% | 25% | 20% | 20%
bench31% | 7% | 23% | 18% | 19%
bazel55% | 15% | 10% | 7% | 10%
gm6% | 7% | 35% | 30% | 20%
dm81% | 12% | 0% | 5% | <1%
infra20% | 0% | 28% | 22% | 28%
ROOT80% | 14% | 0% | 4% | <1%
fuzz25% | 12% | 29% | 9% | 23%
gn0% | 46% | 31% | 10% | 11%
include0% | 11% | 23% | 24% | 41%
experimental0% | 31% | 26% | 15% | 25%
toolchain0% | 0% | 82% | 13% | 4%
platform_tools0% | 0% | 39% | 24% | 35%
build0% | 0% | 81% | 0% | 18%
resources0% | 0% | 26% | 32% | 40%
example0% | 0% | 17% | 21% | 60%
client_utils0% | 0% | 0% | 71% | 28%
site0% | 0% | 0% | 74% | 25%
build_overrides0% | 0% | 0% | 0% | 100%
skiko_tests0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
5587 528
BigPath.cpp
in bench
5160 1
SkSLSPIRVCodeGenerator.cpp
in src/sksl/codegen
4553 164
4479 -
GrGLCaps.cpp
in src/gpu/ganesh/gl
3992 56
GrGLGpu.cpp
in src/gpu/ganesh/gl
3776 132
SkSLWGSLCodeGenerator.cpp
in src/sksl/codegen
3513 109
gn
BUILD.gn
in root
3269 -
SkPath.cpp
in src/core
3200 142
SkSLMetalCodeGenerator.cpp
in src/sksl/codegen
3102 111
3029 140
3027 114
Viewer.cpp
in tools/viewer
3012 59
build.pb.go
in bazel/exporter/build_proto/build
2874 296
GrOvalOpFactory.cpp
in src/gpu/ganesh/ops
2775 85
SkPathOpsDebug.cpp
in src/pathops
2730 133
canvaskit_bindings.cpp
in modules/canvaskit
2355 69
skcms.cc
in modules/skcms
2244 76
GrVkGpu.cpp
in src/gpu/ganesh/vk
2214 77
SkCanvas.cpp
in src/core
2194 166
KeyHelpers.cpp
in src/gpu/graphite
2144 117
gen_tasks_logic.go
in infra/bots/gen_tasks_logic
2129 43
SkSLParser.cpp
in src/sksl
2107 93
SkSLLexer.cpp
in src/sksl
2085 2
2055 91
SkPathOpsTSect.cpp
in src/pathops
1991 67
1947 50
1936 69
GrBlurUtils.cpp
in src/gpu/ganesh
1807 34
SkSLGLSLCodeGenerator.cpp
in src/sksl/codegen
1793 61
DrawCommand.cpp
in tools/debugger
1785 132
SkFontHost_win.cpp
in src/ports
1750 99
GrVkCaps.cpp
in src/gpu/ganesh/vk
1681 52
1678 46
SurfaceDrawContext.cpp
in src/gpu/ganesh
1648 45
GrTriangulator.cpp
in src/gpu/ganesh/geometry
1621 71
SkOpSegment.cpp
in src/pathops
1614 50
SkXPSDevice.cpp
in src/xps
1612 54
1604 23
SkAAClip.cpp
in src/core
1577 72
GrMtlGpu.mm
in src/gpu/ganesh/mtl
1538 57
SkPDFDevice.cpp
in src/pdf
1523 63
1521 65
VulkanCommandBuffer.cpp
in src/gpu/graphite/vk
1485 58
SkMatrix.cpp
in src/core
1427 65
VulkanCaps.cpp
in src/gpu/graphite/vk
1414 49
DM.cpp
in dm
1414 46
1398 75
1396 116
1395 -
Files With Most Units (Top 50)
File# lines# units
externs.js
in modules/canvaskit
1077 594
5587 528
build.pb.go
in bazel/exporter/build_proto/build
2874 296
SkCanvas.cpp
in src/core
2194 166
SkSLSPIRVCodeGenerator.cpp
in src/sksl/codegen
4553 164
SkPath.cpp
in src/core
3200 142
3029 140
SkPathOpsDebug.cpp
in src/pathops
2730 133
DrawCommand.cpp
in tools/debugger
1785 132
GrGLGpu.cpp
in src/gpu/ganesh/gl
3776 132
analysis_v2.pb.go
in bazel/exporter/build_proto/analysis_v2
1204 124
SkSLType.cpp
in src/sksl/ir
1139 121
interface.js
in modules/canvaskit
1104 120
KeyHelpers.cpp
in src/gpu/graphite
2144 117
689 116
1396 116
3027 114
SkSLMetalCodeGenerator.cpp
in src/sksl/codegen
3102 111
SkSLWGSLCodeGenerator.cpp
in src/sksl/codegen
3513 109
SkSLFunctionCall.cpp
in src/sksl/ir
1035 99
SkFontHost_win.cpp
in src/ports
1750 99
SkPathOpsTypes.h
in src/pathops
466 96
canvas_perf.js
in tools/perf-canvaskit-puppeteer
649 93
SkSLParser.cpp
in src/sksl
2107 93
2055 91
SkRect.h
in include/core
418 88
SkGeometry.cpp
in src/core
1256 87
GrCaps.h
in src/gpu/ganesh
366 86
GrOvalOpFactory.cpp
in src/gpu/ganesh/ops
2775 85
canvas2dcontext.js
in modules/canvaskit/htmlcanvas
962 82
Run.h
in modules/skparagraph/src
429 80
742 79
SkStream.cpp
in src/core
817 77
GrVkGpu.cpp
in src/gpu/ganesh/vk
2214 77
skcms.cc
in modules/skcms
2244 76
1398 75
SubRunContainer.cpp
in src/text/gpu
1278 75
PrecompileShader.cpp
in src/gpu/graphite/precompile
977 75
SkGlyph.h
in src/core
420 74
SkVx.h
in src/base
899 74
GrGpu.h
in src/gpu/ganesh
499 74
main.go
in tools/unicode_comparison/go/generate_table
646 73
SkAAClip.cpp
in src/core
1577 72
GrGLCaps.h
in src/gpu/ganesh/gl
499 72
SkRecordDraw.cpp
in src/core
455 71
GrTriangulator.cpp
in src/gpu/ganesh/geometry
1621 71
1936 69
GrDirectContext.cpp
in src/gpu/ganesh
982 69
canvaskit_bindings.cpp
in modules/canvaskit
2355 69
SkPathOpsTSect.cpp
in src/pathops
1991 67
Files With Long Lines (Top 50)

There are 148 files with lines longer than 120 characters. In total, there are 814 long lines.

File# lines# units# long lines
4479 - 159
GrGLFunctions.h
in include/gpu/ganesh/gl
261 3 69
build.pb.go
in bazel/exporter/build_proto/build
2874 296 64
PathLerpSlide.cpp
in tools/viewer
546 14 50
290 9 34
analysis_v2.pb.go
in bazel/exporter/build_proto/analysis_v2
1204 124 25
canvaskit_bindings.cpp
in modules/canvaskit
2355 69 22
adb_test_runner.go
in tools/testrunners/common/android/adb_test_runner
468 29 20
tbody.html
in tools/unicode_comparison/html
218 - 12
codesize.go
in infra/bots/task_drivers/codesize
437 8 12
471 - 9
451 - 9
g3_canary.go
in infra/bots/task_drivers/g3_canary
187 3 8
gn
BUILD.gn
in gn/toolchain
371 - 7
SkOTUtils.cpp
in src/sfnt
181 3 7
ParagraphImpl.cpp
in modules/skparagraph/src
1263 56 7
recreate_skps.go
in infra/bots/task_drivers/recreate_skps
284 2 7
push_apps_from_skia_image.go
in infra/bots/task_drivers/push_apps_from_skia_image
197 4 7
410 - 6
692 38 6
perf_puppeteer_render_skps.go
in infra/bots/task_drivers/perf_puppeteer_render_skps
289 8 6
perf_puppeteer_canvas.go
in infra/bots/task_drivers/perf_puppeteer_canvas
236 8 6
bazel_utils.go
in infra/bots/task_drivers/common
88 2 6
goldctl_steps.go
in infra/bots/task_drivers/common
217 3 6
bazel_clean_step.go
in infra/bots/task_drivers/common
112 4 6
bazel_build.go
in infra/bots/task_drivers/bazel_build
100 2 6
perf_puppeteer_skottie_frames.go
in infra/bots/task_drivers/perf_puppeteer_skottie_frames
331 8 6
bazel_test_precompiled.go
in infra/bots/task_drivers/bazel_test_precompiled
153 2 6
gen_tasks_logic.go
in infra/bots/gen_tasks_logic
2129 43 6
SkUnicode_icu4x.cpp
in modules/skunicode/src
364 41 5
TextLine.cpp
in modules/skparagraph/src
1268 29 5
bazel_flags.go
in infra/bots/task_drivers/common
64 2 5
348 - 4
main.go
in tools/unicode_comparison/go/generate_table
646 73 4
SkPathOpsDebug.cpp
in src/pathops
2730 133 4
OneLineShaper.cpp
in modules/skparagraph/src
639 15 4
TextWrapper.cpp
in modules/skparagraph/src
392 3 4
skottie_metric.sql
in platform_tools/android/apps/skottie
233 - 4
canvaskit_gold.go
in infra/bots/task_drivers/canvaskit_gold
234 7 4
copts.bzl
in include/config
164 - 3
218 11 3
120 - 3
MeshGradientSlide.cpp
in tools/viewer
497 18 3
gen_interface.go
in tools/gpu/gl/interface
334 17 3
1395 - 3
make_tarball.go
in tools/testrunners/common/make_tarball
76 4 3
76 - 3
deps_parser.go
in bazel/deps_parser
180 3 3
425 2 3
extra.html
in modules/canvaskit/npm_build
727 - 3