Sample
int-7359d3d2e14b-I06
Invert eligible conditions and exchange their branches
Scores
| Method | Score | Scale |
|---|---|---|
| Posnett | 0 | 0–1; higher is more readable |
| Scalabrino | 0.61 | 0–1; higher is more readable |
| Dorn | 0.438 | 0–1; higher is more readable |
| Mi | 0.447 | 0–1; higher is more readable |
| LLOC | 19 | Logical lines; fewer is more readable |
| DeepSeek V4 Pro | 17.33 | 0–20; mean of three runs |
| GPT-6.1 Sol | 18 | 0–20; mean of three runs |
| BTTF | 0.612 | 0–1; higher is more readable |
Views
Loading feature diagnosis…
Source regions
Feature contributions
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Halstead volumeHow much symbolic information the code contains. It combines the total number of operators and values with the number of distinct ones. | 2237.639 | −73.842 |
| Source linesThe number of non-empty source lines. | 90 | +36 |
| 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.98 | −7.47 |
Intercept 8.87 + feature contributions = -36.442 (log-odds).
Score = sigmoid(-36.442) = 0.
| Score | 0.61 |
|---|
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 91 | −2.186 |
| Indentation frequencyHow rapidly indentation changes from line to line. | 70 | +1.684 |
| Number layout frequencyHow rapidly the number of numeric values per line changes through the code. | 70 | −1.185 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 89.85 | +0.846 |
| Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right. | 97.912 | +0.775 |
| 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. | 98.956 | −0.526 |
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.069 | +0.274 |
Intercept 0.07 + feature contributions = -0.248 (log-odds).
Score = sigmoid(-0.248) = 0.438.
| Score | 0.447 |
|---|
| Score | 19 |
|---|
Run 1
The code is highly readable due to its clear structure, minimal nesting, and strong documentation. Each class and method has a well-defined purpose, with inherited methods documented via inline comments explaining complexity trade-offs (e.g., O(log N) optimizations). Naming is descriptive and follows Java conventions. The file is concise without sacrificing clarity; complex logic is isolated and justified. Comments address subtle concerns like comparator consistency and GWT compatibility, enhancing understanding without clutter. Most methods are one to three lines, keeping a natural reading flow. Slight deductions for the slightly awkward formatting of the last method’s annotation and rare reliance on comments to explain non-obvious invariant decisions, but overall this is exemplary readable code.
Run 2
The code is highly readable, with clear structure, minimal nesting, and well-defined intent. Each method is concise and performs a single logical action, making the flow natural. Comments explain non-obvious design decisions, and the use of overrides is straightforward. Minor room for improvement exists in the dense comment blocks and inconsistent indentation in the final method, but overall readability is excellent.
Run 3
The code is generally readable with clear class purpose and logical structure. It benefits from descriptive comments explaining design decisions and performance considerations (O(log N) vs O(N)). The methods are short and focused with single responsibilities. However, readability is affected by heavy annotation usage and some inconsistent indentation (notably writeReplace method). The nesting level is minimal, which aids comprehension. Import organization and class hierarchy are clear. The comments about GWT limitations and comparator inconsistency add context but also increase visual noise. Overall, the code demonstrates good practices in structure and intent clarity, though minor formatting issues and annotation density prevent a higher score.
Run 1
Code Structure: Well-organized class with small, focused overrides and consistent delegation. Nesting: Essentially flat; the conditional expression in indexOf is straightforward. Clarity of intent: Descriptive method names and comments explain performance optimizations and comparator-versus-equals behavior, though understanding some details requires familiarity with the superclass and library-specific annotations. Code length: Implementation is concise, but lengthy TODO comments add some clutter. Action granularity: Statements generally perform one clear action each; chained calls and bitwise flag combinations remain readable. Reading flow: Methods follow a logical progression from delegation and comparison to lookup, sublists, iteration, and serialization. Minor distractions include the inconsistent indentation of writeReplace, the unexplained ISS abbreviation, and an internal bug reference.
Run 2
Code Structure: Logically organized into small, focused overrides, with delegation keeping responsibilities clear. Nesting: Essentially flat; the only conditional logic is a straightforward ternary expression. Clarity of intent: Descriptive method names and comments explain performance goals and comparator-versus-equality subtleties, though framework dependencies and the unexplained issue reference require outside context. Code length: Implementation is concise, but lengthy TODO comments and compatibility annotations add visual overhead. Action granularity: Statements generally perform one action per line; chained calls and the combined index validation remain easy to understand. Reading flow: Consistent formatting and grouping support natural reading, with minor interruptions from annotation/comment blocks and inconsistent indentation on writeReplace().
Run 3
Code Structure: Well-organized class with small, focused overrides and clear delegation. Nesting: Essentially flat; the conditional expression in indexOf is straightforward. Clarity of intent: Descriptive names and comments explain logarithmic lookup and comparator/equals compatibility, though framework-specific annotations, abbreviations, and optimizer references require context. Code length: Implementation is concise, but lengthy TODO comments and a redundant override add some reading overhead. Action granularity: Statements generally perform one action per line; fluent expressions remain manageable. Reading flow: Methods progress naturally from delegation and comparison to lookup, slicing, and iteration. Annotation clutter, the extended subList comment, and inconsistent indentation of writeReplace slightly interrupt otherwise clean formatting.