1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-06 06:20:55 -08:00
emacs/test/lisp/progmodes/java-ts-mode-resources/indent.erts
Yuan Fu 93cd55f40e
Use c-ts-common baseline rule in java-ts-mode (bug#75154)
Use it for function parameters.

* lisp/progmodes/java-ts-mode.el:
(java-ts-mode--standalone-predicate): New function.
(java-ts-mode--indent-rules): Comment out rules for function
parameters and statements, and add
c-ts-common-baseline-indent-rule as fallback.
(java-ts-mode): Setup.
(java-ts-mode--first-line-on-multi-line-string): Mark BOL as
unused.
* test/lisp/progmodes/java-ts-mode-resources/indent.erts:
New test.
2025-03-16 22:44:05 -07:00

171 lines
2.8 KiB
Text

Code:
(lambda ()
(setq indent-tabs-mode nil)
(setq java-ts-mode-indent-offset 4)
(java-ts-mode)
(indent-region (point-min) (point-max)))
Point-Char: |
Name: Basic
=-=
public class Basic {
public void basic() {
return;
}
}
=-=-=
Name: Empty Line
=-=
public class EmptyLine {
public void emptyLine() {
|
}
}
=-=-=
Name: Statements
=-=
if (x) {
for (var foo : foos) {
|
}
} else if (y) {
for (int i = 0; x < foos.size(); i++) {
return;
}
} else {
return;
}
=-=-=
Name: Field declaration without access modifier (bug#61115)
=-=
public class T {
@Autowired
String a;
}
=-=-=
Name: Array initializer
=-=
public class Java {
void foo() {
return new String[]{
"foo", // These
"bar"
}
}
}
=-=-=
Name: Advanced bracket matching indentation (bug#61142)
=-=
public class Java {
public Java(
String foo) {
this.foo = foo;
}
void foo(
String foo) {
for (var f : rs)
return new String[]{
"foo",
"bar"
};
if (a == 0
&& b == 1
&& foo) {
return 0;
} else if (a == 1) {
return 1;
} else if (true)
return 5;
else {
if (a == 0
&& b == 1
&& foo)
while (true)
for (
;;)
if (true)
return 5;
else if (false) {
return 6;
} else
if (true
&& false)
return 6;
}
}
}
=-=-=
Name: Opening bracket on separate line (bug#67556)
=-=
public class Java {
void foo(
String foo)
{
for (var f : rs)
return new String[]
{
"foo",
"bar"
};
if (a == 0)
{
return 0;
} else if (a == 1)
{
return 1;
}
switch(expr)
{
case x:
// code block
break;
}
}
}
=-=-=
Name: Method chaining
=-=
public class FloodFill {
public static void main(String[] args) {
List<Foo> stream = students.stream(MAX_VALUE)
.filter(item -> {
return item.getValue() > 100 &&
item.isActive();
})
.map()
.collect();
}
}
=-=
public class FloodFill {
public static void main(String[] args) {
List<Foo> stream = students.stream(MAX_VALUE)
.filter(item -> {
return item.getValue() > 100 &&
item.isActive();
})
.map()
.collect();
}
}
=-=-=