Sample
int-6cd2462fc006-I06
Invert eligible conditions and exchange their branches
Scores
| Method | Score | Scale |
|---|---|---|
| Posnett | 0 | 0–1; higher is more readable |
| Scalabrino | 0.806 | 0–1; higher is more readable |
| Dorn | 0.842 | 0–1; higher is more readable |
| Mi | 0.768 | 0–1; higher is more readable |
| LLOC | 11 | Logical lines; fewer is more readable |
| DeepSeek V4 Pro | 18 | 0–20; mean of three runs |
| GPT-6.1 Sol | 19 | 0–20; mean of three runs |
| BTTF | 0.716 | 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. | 867.881 | −28.64 |
| Source linesThe number of non-empty source lines. | 40 | +16 |
| 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.974 | −7.46 |
Intercept 8.87 + feature contributions = -11.23 (log-odds).
Score = sigmoid(-11.23) = 0.
| Score | 0.806 |
|---|
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. | 74.976 | +0.49 |
| Indentation frequencyHow rapidly indentation changes from line to line. | 35 | +0.473 |
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 41 | −0.415 |
| Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right. | 74.927 | +0.404 |
| Number layout frequencyHow rapidly the number of numeric values per line changes through the code. | 1 | +0.398 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 39.684 | +0.145 |
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.085 | +0.111 |
Intercept 0.07 + feature contributions = 1.676 (log-odds).
Score = sigmoid(1.676) = 0.842.
| Score | 0.768 |
|---|
| Score | 11 |
|---|
Run 1
The code is highly readable. It has a clear, logical structure with a single class, well-named fields, and a straightforward constructor. Nesting is minimal; there are no deeply nested control structures. The intent of each method is explicit: retrieving the literal value, checking compilability, and generating bytecode. Code length is concise and appropriate for the functionality. Action granularity is sensible, with one logical action per line in the generateCode method. Reading flow is natural, with the class definition, field, constructor, and methods arranged in a conventional order. Minor deductions would only reflect the lack of explicit null or bounds checks, but for a literal AST node this is acceptable and idiomatic.
Run 2
The code is highly readable. It is well-structured, with clear package and imports, and a single class that extends a base literal type. Each method is focused and performs one action, such as returning a value, checking compilability, or generating code. Nesting is minimal, and the logic is flat with no deep conditional blocks. Naming is clear and follows Java conventions, making the intent obvious. The class is concise, with no unnecessary code or comments. The reading flow is natural, moving from field declaration to constructor to overridden methods. The only minor deduction is for the repeated use of 'this.' which is slightly verbose but still clear.
Run 3
The code is highly readable. It has a clear, single-purpose class structure with logical organization: fields, constructor, then overridden methods. Nesting is flat and minimal. Intent is unambiguous—it represents a long integer literal in an expression AST. Code length is concise without unnecessary boilerplate. Action granularity is appropriate, with one logical action per line. Reading flow is natural, starting from class documentation through field declaration, constructor initialization, and method implementations. Minor deductions: lack of JavaDoc on methods (though overrides are self-explanatory) and no explicit validation of payload/value consistency, but these are trivial. Overall, the code exemplifies clean, maintainable design.
Run 1
Code Structure: The class is logically organized into a field, constructor, and focused overridden methods. Nesting: There is no nested control flow, making the code easy to scan. Clarity of intent: The class documentation, descriptive names, and straightforward methods clearly convey its purpose as a long-literal AST node; the JVM descriptor "J" requires some domain knowledge. Code length: The implementation is concise, with no unnecessary logic, though extra blank lines add minor visual padding. Action granularity: Each statement performs one clear action on its own line. Reading flow: The progression from initialization to value retrieval, compilability, and bytecode generation is natural and consistent.
Run 2
Code Structure: The class is logically organized, with one field, a constructor, and focused overridden methods. Nesting: All methods are flat, with no conditional or loop nesting. Clarity of intent: The documentation, class name, and method names clearly convey a long-literal AST node; the descriptor "J" and abbreviation "mv" require some JVM bytecode knowledge. Code length: The implementation is concise, without unnecessary logic or duplication. Action granularity: Each statement performs a single clear action on its own line. Reading flow: The progression from initialization to value access, compilation capability, and code generation is natural. Extra blank lines are a minor formatting distraction.
Run 3
Code Structure: The class is logically organized into a field, constructor, and clearly separated overridden methods. Nesting: There is no nested control flow, making the code easy to scan. Clarity of intent: The class documentation and method names clearly communicate its role as a long-integer literal AST node; the descriptor "J" and abbreviation "mv" require some domain knowledge. Code length: The implementation is concise, with no unnecessary logic. Action granularity: Each statement occupies its own line and performs a distinct operation. Reading flow: The sequence from initialization to value retrieval, compilation capability, and code generation is natural. Minor excess blank lines do not materially affect readability.