Sample
int-50f5f155d998-I12
Inline all eligible single-use intermediate local variables
Scores
| Method | Score | Scale |
|---|---|---|
| Posnett | 0.885 | 0–1; higher is more readable |
| Scalabrino | 0.825 | 0–1; higher is more readable |
| Dorn | 0.578 | 0–1; higher is more readable |
| Mi | 0.116 | 0–1; higher is more readable |
| LLOC | 5 | Logical lines; fewer is more readable |
| DeepSeek V4 Pro | 18 | 0–20; mean of three runs |
| GPT-6.1 Sol | 18 | 0–20; mean of three runs |
| BTTF | 0.726 | 0–1; higher is more readable |
Views
Loading feature diagnosis…
Source regions
Feature contributions
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Source linesThe number of non-empty source lines. | 60 | +24 |
| Halstead volumeHow much symbolic information the code contains. It combines the total number of operators and values with the number of distinct ones. | 724.925 | −23.923 |
| Byte entropyHow varied the bytes in the source text are. Repeated bytes give a lower value; a more even mixture gives a higher value. | 4.604 | −6.907 |
Intercept 8.87 + feature contributions = 2.041 (log-odds).
Score = sigmoid(2.041) = 0.885.
| Score | 0.825 |
|---|
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Identifier layout (horizontal)How rapidly the visual pattern of identifier characters changes from left to right. It measures spatial frequency, not the meaning of the names. | 123.967 | −1.586 |
| Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right. | 121.951 | +1.163 |
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 61 | −1.123 |
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.021 | +0.734 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 59.864 | +0.427 |
| Number layout frequencyHow rapidly the number of numeric values per line changes through the code. | 1 | +0.398 |
| Indentation frequencyHow rapidly indentation changes from line to line. | 28 | +0.231 |
Intercept 0.07 + feature contributions = 0.315 (log-odds).
Score = sigmoid(0.315) = 0.578.
| Score | 0.116 |
|---|
| Score | 5 |
|---|
Run 1
The code is highly readable. Structure is logical, with clear package, imports, and interface definition. Nesting is nonexistent; methods are flat and concise. Intent is well-documented with Javadoc explaining purpose, usage, and discovery mechanism. Code length is appropriate for an interface with clear contracts. Each method signature is on one line, maintaining action granularity. Reading flow is natural, progressing from class-level docs to method declarations. Minor deductions: a Javadoc line slightly exceeds 80 characters and the return type description in the validate() method contains a line break, slightly disrupting flow. Overall, it exemplifies clean API design.
Run 2
The code is highly readable with clear structure and intent. It uses a standard interface declaration with well-organized imports, comprehensive Javadoc, and logical method grouping. Nesting is flat, with no conditional or loop complexity. Each method serves a single purpose, and action granularity is appropriate for an interface definition. The reading flow is natural, progressing from class-level documentation to method signatures and default implementations. Minor deductions: the validate() method's Javadoc has a slightly awkward line break in the return description, and there is a trailing blank line before the closing brace, but these are trivial issues. The code is concise yet informative, balancing brevity with necessary documentation.
Run 3
The code is highly readable, with a clear interface definition, well-structured Javadoc, and a logical flow. The import statements are concise and specific, and the class structure is organized with clear method separation. The nesting is minimal, with no deeply nested blocks. The intent of the interface is obvious from the class name and Javadoc, and each method has a single responsibility. Action granularity is appropriate, with one action per statement. The reading flow is natural, starting from package declaration, followed by imports, class Javadoc, interface declaration, and then methods. The only minor drawback is the slightly long return type in the Javadoc link, but overall the code is exemplary in terms of readability.
Run 1
Code Structure: The interface is logically organized, with imports, class documentation, and clearly separated method declarations. Nesting: Minimal nesting makes the code easy to scan. Clarity of intent: Descriptive names and detailed Javadoc clearly explain policy validation, configuration, and version contracts. Code length: The implementation is concise, though the extensive documentation adds some verbosity. Action granularity: Each declaration and return statement occupies its own line, with no bundled actions. Reading flow: Methods follow a natural progression and documentation precedes each declaration. Minor distractions include extra blank lines, ungrouped imports, and inconsistent formatting in the multiline @return documentation.
Run 2
Code Structure: A well-organized interface with imports, class documentation, and clearly separated method declarations. Nesting: Minimal nesting, with only simple default method bodies. Clarity of intent: Descriptive names and detailed Javadoc clearly explain policy validation, configuration, and version reporting. Code length: The implementation is concise; documentation is somewhat lengthy but provides useful API context. Action granularity: Each statement occupies its own line, and each default method performs one straightforward action. Reading flow: The sequence from interface purpose to validation and plugin metadata is natural. Minor distractions include extra blank lines, inconsistent Javadoc continuation formatting, long documentation lines, and slightly awkward prose.
Run 3
Code Structure: A logically organized interface with imports, class documentation, and clearly separated method declarations. Nesting: Minimal; default methods contain only a single return statement. Clarity of intent: Descriptive names and detailed Javadoc clearly explain the policy, validation behavior, and integration requirements. Code length: The implementation is concise, although documentation dominates and occasionally uses wordy phrasing. Action granularity: Each statement performs one action, with no combined operations. Reading flow: Natural progression from interface purpose to validation and plugin metadata methods. Minor distractions include extra blank lines, ungrouped imports, long documentation lines, and inconsistent indentation in the return documentation.