Skip to content

Commit 18dce5f

Browse files
committed
Handle Markdown in EnumDeclaration
This commit fixes the IOBE on formatting Markdown in Enum declaration part Fixes : #5032
1 parent 5044341 commit 18dce5f

2 files changed

Lines changed: 18 additions & 1 deletion

File tree

org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterRegressionTests.java

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16554,4 +16554,21 @@ record X<T>(T value) {
1655416554
""";
1655516555
formatSource(input, expected);
1655616556
}
16557+
16558+
public void testEnumJavaDocBreak() throws JavaModelException {
16559+
setComplianceLevel(CompilerOptions.VERSION_23);
16560+
String input = """
16561+
public enum TestEnum {
16562+
/// A
16563+
A;
16564+
}
16565+
""";
16566+
String expected = """
16567+
public enum TestEnum {
16568+
/// A
16569+
A;
16570+
}
16571+
""";
16572+
formatSource(input, expected);
16573+
}
1655716574
}

org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/LineBreaksPreparator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ public boolean visit(EnumDeclaration node) {
164164
for (int i = 0; i < enumConstants.size(); i++) {
165165
EnumConstantDeclaration declaration = enumConstants.get(i);
166166
if (declaration.getJavadoc() != null)
167-
this.tm.firstTokenIn(declaration, TokenNameCOMMENT_JAVADOC).breakBefore();
167+
this.tm.firstTokenIn(declaration.getJavadoc(), ANY).breakBefore();
168168
if (declaration.getAnonymousClassDeclaration() != null && i < enumConstants.size() - 1)
169169
this.tm.firstTokenAfter(declaration, TokenNameCOMMA).breakAfter();
170170
}

0 commit comments

Comments
 (0)