microsoft / thrifty
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 122 files with 13,168 lines of code.
    • 1 very long files (2,002 lines of code)
    • 3 long files (2,060 lines of code)
    • 12 medium size files (3,647 lines of codeclsfd_ftr_w_mp_ins)
    • 19 small files (2,682 lines of code)
    • 87 very small files (2,777 lines of code)
15% | 15% | 27% | 20% | 21%
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
kt16% | 17% | 28% | 18% | 18%
g40% | 0% | 100% | 0% | 0%
java0% | 0% | 0% | 35% | 64%
thrift0% | 0% | 0% | 84% | 15%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
thrifty-kotlin-codegen/src/main95% | 0% | 0% | 4% | 0%
thrifty-java-codegen/src/main0% | 39% | 28% | 29% | 2%
thrifty-runtime/src/commonMain0% | 26% | 43% | 0% | 30%
thrifty-schema/src/main0% | 14% | 38% | 16% | 30%
thrifty-compiler/src/main0% | 0% | 100% | 0% | 0%
thrifty-runtime/src/commonTest0% | 0% | 23% | 60% | 16%
thrifty-gradle-plugin/src/main0% | 0% | 0% | 37% | 62%
thrifty-runtime/src/jvmMain0% | 0% | 0% | 96% | 3%
thrifty-compiler0% | 0% | 0% | 84% | 15%
thrifty-compiler-plugins/src/main0% | 0% | 0% | 0% | 100%
thrifty-example-postprocessor/src/main0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
KotlinCodeGenerator.kt
in thrifty-kotlin-codegen/src/main/kotlin/com/microsoft/thrifty/kgen
2002 55
ThriftyCodeGenerator.kt
in thrifty-java-codegen/src/main/kotlin/com/microsoft.thrifty.gen
816 20
JsonProtocol.kt
in thrifty-runtime/src/commonMain/kotlin/com/microsoft/thrifty/protocol
670 54
ThriftListener.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema/parser
574 14
CompactProtocol.kt
in thrifty-runtime/src/commonMain/kotlin/com/microsoft/thrifty/protocol
470 45
SchemaRendering.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema/render
414 -
SimpleJsonProtocol.kt
in thrifty-runtime/src/commonMain/kotlin/com/microsoft/thrifty/protocol
327 48
Linker.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
322 5
ConstantBuilder.kt
in thrifty-java-codegen/src/main/kotlin/com/microsoft.thrifty.gen
298 27
ServiceBuilder.kt
in thrifty-java-codegen/src/main/kotlin/com/microsoft.thrifty.gen
293 4
BinaryProtocol.kt
in thrifty-runtime/src/commonMain/kotlin/com/microsoft/thrifty/protocol
280 41
Constant.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
276 11
SchemaFunctionalEquality.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
260 -
ThriftyCompiler.kt
in thrifty-compiler/src/main/kotlin/com/microsoft/thrifty/compiler
240 1
g4
AntlrThrift.g4
in thrifty-schema/src/main/antlr/com/microsoft/thrifty/schema/antlr
237 -
Xtruct.kt
in thrifty-runtime/src/commonTest/kotlin/com/microsoft/thrifty/protocol
230 15
Loader.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
196 1
GenerateThriftSourcesWorkAction.java
in thrifty-gradle-plugin/src/main/java/com/microsoft/thrifty/gradle
185 7
TestThrift.thrift
in thrifty-compiler
184 -
GenerateReaderVisitor.kt
in thrifty-java-codegen/src/main/kotlin/com/microsoft.thrifty.gen
181 18
BinaryProtocolTest.kt
in thrifty-runtime/src/commonTest/kotlin/com/microsoft/thrifty/protocol
177 12
ProtocolUtilTest.kt
in thrifty-runtime/src/commonTest/kotlin/com/microsoft/thrifty/util
167 13
TypeResolver.kt
in thrifty-java-codegen/src/main/kotlin/com/microsoft.thrifty.gen
166 40
ParserTypes.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema/parser
145 -
GenerateWriterVisitor.kt
in thrifty-java-codegen/src/main/kotlin/com/microsoft.thrifty.gen
142 16
JsonProtocolTest.kt
in thrifty-runtime/src/commonTest/kotlin/com/microsoft/thrifty/protocol
131 14
AsyncClientBase.kt
in thrifty-runtime/src/jvmMain/kotlin/com/microsoft/thrifty/service
131 2
SimpleJsonProtocolTest.kt
in thrifty-runtime/src/commonTest/kotlin/com/microsoft/thrifty/protocol
127 15
TypeNames.kt
in thrifty-java-codegen/src/main/kotlin/com/microsoft.thrifty.gen
116 1
ServiceMethod.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
111 2
UserElementMixin.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
110 3
Schema.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
105 4
ThriftyExtension.java
in thrifty-gradle-plugin/src/main/java/com/microsoft/thrifty/gradle
104 12
SocketTransport.kt
in thrifty-runtime/src/jvmMain/kotlin/com/microsoft/thrifty/transport
103 9
TypeUtils.kt
in thrifty-kotlin-codegen/src/main/kotlin/com/microsoft/thrifty/kgen
101 3
SerializableThriftOptions.java
in thrifty-gradle-plugin/src/main/java/com/microsoft/thrifty/gradle
97 17
Protocol.kt
in thrifty-runtime/src/commonMain/kotlin/com/microsoft/thrifty/protocol
94 43
Program.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
92 3
ServiceType.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
89 2
FramedTransport.kt
in thrifty-runtime/src/commonMain/kotlin/com/microsoft/thrifty/transport
86 6
StructType.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
86 6
ThriftOptions.java
in thrifty-gradle-plugin/src/main/java/com/microsoft/thrifty/gradle
85 15
ClientBase.kt
in thrifty-runtime/src/commonMain/kotlin/com/microsoft/thrifty/service
84 4
FieldNamingPolicy.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
77 3
ThriftyGradlePlugin.java
in thrifty-gradle-plugin/src/main/java/com/microsoft/thrifty/gradle
73 3
ThriftException.kt
in thrifty-runtime/src/commonMain/kotlin/com/microsoft/thrifty
70 3
KotlinThriftOptions.java
in thrifty-gradle-plugin/src/main/java/com/microsoft/thrifty/gradle
67 8
BuiltinType.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
66 5
Location.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
66 5
FramedTransportTest.kt
in thrifty-runtime/src/commonTest/kotlin/com/microsoft/thrifty/transport
61 5
Files With Most Units (Top 20)
File# lines# units
KotlinCodeGenerator.kt
in thrifty-kotlin-codegen/src/main/kotlin/com/microsoft/thrifty/kgen
2002 55
JsonProtocol.kt
in thrifty-runtime/src/commonMain/kotlin/com/microsoft/thrifty/protocol
670 54
SimpleJsonProtocol.kt
in thrifty-runtime/src/commonMain/kotlin/com/microsoft/thrifty/protocol
327 48
CompactProtocol.kt
in thrifty-runtime/src/commonMain/kotlin/com/microsoft/thrifty/protocol
470 45
Protocol.kt
in thrifty-runtime/src/commonMain/kotlin/com/microsoft/thrifty/protocol
94 43
BinaryProtocol.kt
in thrifty-runtime/src/commonMain/kotlin/com/microsoft/thrifty/protocol
280 41
TypeResolver.kt
in thrifty-java-codegen/src/main/kotlin/com/microsoft.thrifty.gen
166 40
ConstantBuilder.kt
in thrifty-java-codegen/src/main/kotlin/com/microsoft.thrifty.gen
298 27
ThriftyCodeGenerator.kt
in thrifty-java-codegen/src/main/kotlin/com/microsoft.thrifty.gen
816 20
GenerateReaderVisitor.kt
in thrifty-java-codegen/src/main/kotlin/com/microsoft.thrifty.gen
181 18
ThriftType.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
61 18
SerializableThriftOptions.java
in thrifty-gradle-plugin/src/main/java/com/microsoft/thrifty/gradle
97 17
GenerateWriterVisitor.kt
in thrifty-java-codegen/src/main/kotlin/com/microsoft.thrifty.gen
142 16
ThriftOptions.java
in thrifty-gradle-plugin/src/main/java/com/microsoft/thrifty/gradle
85 15
SimpleJsonProtocolTest.kt
in thrifty-runtime/src/commonTest/kotlin/com/microsoft/thrifty/protocol
127 15
Xtruct.kt
in thrifty-runtime/src/commonTest/kotlin/com/microsoft/thrifty/protocol
230 15
JsonProtocolTest.kt
in thrifty-runtime/src/commonTest/kotlin/com/microsoft/thrifty/protocol
131 14
ThriftListener.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema/parser
574 14
ProtocolUtilTest.kt
in thrifty-runtime/src/commonTest/kotlin/com/microsoft/thrifty/util
167 13
ThriftyExtension.java
in thrifty-gradle-plugin/src/main/java/com/microsoft/thrifty/gradle
104 12
Files With Long Lines (Top 17)

There are 17 files with lines longer than 120 characters. In total, there are 47 long lines.

File# lines# units# long lines
KotlinCodeGenerator.kt
in thrifty-kotlin-codegen/src/main/kotlin/com/microsoft/thrifty/kgen
2002 55 13
SchemaFunctionalEquality.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
260 - 8
ThriftyCompiler.kt
in thrifty-compiler/src/main/kotlin/com/microsoft/thrifty/compiler
240 1 6
ThriftyGradlePlugin.java
in thrifty-gradle-plugin/src/main/java/com/microsoft/thrifty/gradle
73 3 6
UserElementMixin.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
110 3 2
ThriftyExtension.java
in thrifty-gradle-plugin/src/main/java/com/microsoft/thrifty/gradle
104 12 1
ThriftyCodeGenerator.kt
in thrifty-java-codegen/src/main/kotlin/com/microsoft.thrifty.gen
816 20 1
CompactProtocol.kt
in thrifty-runtime/src/commonMain/kotlin/com/microsoft/thrifty/protocol
470 45 1
JsonProtocol.kt
in thrifty-runtime/src/commonMain/kotlin/com/microsoft/thrifty/protocol
670 54 1
Xtruct.kt
in thrifty-runtime/src/commonTest/kotlin/com/microsoft/thrifty/protocol
230 15 1
Constant.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
276 11 1
EnumMember.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
28 3 1
EnumType.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
33 3 1
Program.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
92 3 1
ServiceMethod.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
111 2 1
ServiceType.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema
89 2 1
SchemaRendering.kt
in thrifty-schema/src/main/kotlin/com/microsoft/thrifty/schema/render
414 - 1