Skip to content

Commit 0f76276

Browse files
Fix formatting
1 parent 8c95c70 commit 0f76276

9 files changed

Lines changed: 46 additions & 77 deletions

File tree

‎java-frontend/src/main/java/org/sonar/java/model/EcjSymbolMetadata.java‎

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,7 @@ private static JSymbolMetadata ofTypeArg(JSema sema, Symbol owner, ITypeBinding
5555
return metadata(sema, owner, symbolAnnotations, parameterMetaDatas, true);
5656
}
5757

58-
private static JSymbolMetadata metadata(JSema sema, Symbol owner, IAnnotationBinding[] bindings,
59-
JSymbolMetadata[] parameters, boolean typeArgument) {
58+
private static JSymbolMetadata metadata(JSema sema, Symbol owner, IAnnotationBinding[] bindings, JSymbolMetadata[] parameters, boolean typeArgument) {
6059
return new JSymbolMetadata(owner, () -> Arrays.stream(bindings).map(sema::annotation).collect(Collectors.toList()), parameters, typeArgument);
6160
}
6261

‎java-frontend/src/main/java/org/sonar/java/model/EcjTreeBindings.java‎

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -74,17 +74,14 @@ static IBinding binding(Object tree) {
7474
static void setType(JSema sema, JavaTree tree, @Nullable ITypeBinding binding) {
7575
switch (tree) {
7676
case AbstractTypedTree t -> t.type = sema.typeSupplier(binding);
77-
case ClassTreeImpl t -> t.typeSymbol = binding == null ? SemanticValues.UNKNOWN_TYPE_SYMBOL
78-
: new EcjSemanticAttachment<>(binding, sema::typeSymbol);
77+
case ClassTreeImpl t -> t.typeSymbol = binding == null ? SemanticValues.UNKNOWN_TYPE_SYMBOL : new EcjSemanticAttachment<>(binding, sema::typeSymbol);
7978
case TypeParameterTreeImpl t -> t.typeSymbol = sema.symbolSupplier(binding);
8079
default -> throw new IllegalArgumentException("No type attachment: " + tree.getClass());
8180
}
8281
if (tree instanceof KeywordThis t) {
83-
t.symbolSupplier = binding == null ? SemanticValues.UNKNOWN_SYMBOL
84-
: new EcjSemanticAttachment<>(binding, b -> sema.typeSymbol(b).thisSymbol);
82+
t.symbolSupplier = binding == null ? SemanticValues.UNKNOWN_SYMBOL : new EcjSemanticAttachment<>(binding, b -> sema.typeSymbol(b).thisSymbol);
8583
} else if (tree instanceof KeywordSuper t) {
86-
t.symbolSupplier = binding == null ? SemanticValues.UNKNOWN_SYMBOL
87-
: new EcjSemanticAttachment<>(binding, b -> sema.typeSymbol(b).superSymbol);
84+
t.symbolSupplier = binding == null ? SemanticValues.UNKNOWN_SYMBOL : new EcjSemanticAttachment<>(binding, b -> sema.typeSymbol(b).superSymbol);
8885
}
8986
}
9087

@@ -95,8 +92,9 @@ static void setSymbol(JSema sema, JavaTree tree, @Nullable IBinding binding) {
9592
case LambdaExpressionTreeImpl t -> t.methodSymbol = sema.methodSupplier((IMethodBinding) binding);
9693
case VariableTreeImpl t -> t.variableSymbol = sema.symbolSupplier(binding);
9794
case IdentifierTreeImpl t -> t.symbolSupplier = sema.symbolSupplier(binding);
98-
case JavaTree.ImportTreeImpl t -> t.symbolSupplier = binding == null || binding.getKind() == IBinding.PACKAGE
99-
|| binding.getKind() == IBinding.MODULE ? () -> null : sema.symbolSupplier(binding);
95+
case JavaTree.ImportTreeImpl t -> t.symbolSupplier = (binding == null || binding.getKind() == IBinding.PACKAGE || binding.getKind() == IBinding.MODULE)
96+
? () -> null
97+
: sema.symbolSupplier(binding);
10098
default -> throw new IllegalArgumentException("No symbol attachment: " + tree.getClass());
10199
}
102100
}

‎java-frontend/src/main/java/org/sonar/java/model/JSymbolMetadata.java‎

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
import java.util.EnumMap;
2222
import java.util.List;
2323
import java.util.Map;
24-
import java.util.Objects;
2524
import java.util.function.Function;
2625
import java.util.function.Predicate;
2726
import java.util.function.Supplier;
@@ -66,8 +65,7 @@ final class JSymbolMetadata implements SymbolMetadata {
6665
this(symbol, () -> annotations, new JSymbolMetadata[0], false);
6766
}
6867

69-
JSymbolMetadata(Symbol symbol, Supplier<List<AnnotationInstance>> annotations,
70-
JSymbolMetadata[] parameterMetas, boolean isTypeArgMetadata) {
68+
JSymbolMetadata(Symbol symbol, Supplier<List<AnnotationInstance>> annotations, JSymbolMetadata[] parameterMetas, boolean isTypeArgMetadata) {
7169
this.symbol = symbol;
7270
this.annotationSource = annotations;
7371
this.parameterMetas = parameterMetas;

‎java-frontend/src/main/java/org/sonar/java/model/declaration/ClassTreeImpl.java‎

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,15 @@
1616
*/
1717
package org.sonar.java.model.declaration;
1818

19+
import java.util.Collections;
20+
import java.util.List;
21+
import java.util.function.Supplier;
22+
import javax.annotation.Nullable;
1923
import org.sonar.java.ast.parser.QualifiedIdentifierListTreeImpl;
2024
import org.sonar.java.ast.parser.TypeParameterListTreeImpl;
21-
import org.sonar.java.model.SemanticValues;
22-
import org.sonarsource.analyzer.commons.collections.ListUtils;
2325
import org.sonar.java.model.InternalSyntaxToken;
2426
import org.sonar.java.model.JavaTree;
27+
import org.sonar.java.model.SemanticValues;
2528
import org.sonar.java.model.expression.IdentifierTreeImpl;
2629
import org.sonar.plugins.java.api.location.Position;
2730
import org.sonar.plugins.java.api.semantic.Symbol;
@@ -35,11 +38,7 @@
3538
import org.sonar.plugins.java.api.tree.TypeParameters;
3639
import org.sonar.plugins.java.api.tree.TypeTree;
3740
import org.sonar.plugins.java.api.tree.VariableTree;
38-
39-
import javax.annotation.Nullable;
40-
import java.util.Collections;
41-
import java.util.List;
42-
import java.util.function.Supplier;
41+
import org.sonarsource.analyzer.commons.collections.ListUtils;
4342

4443
public class ClassTreeImpl extends JavaTree implements ClassTree {
4544

‎java-frontend/src/main/java/org/sonar/java/model/declaration/VariableTreeImpl.java‎

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,17 @@
1717
package org.sonar.java.model.declaration;
1818

1919
import java.util.Arrays;
20+
import java.util.Collections;
2021
import java.util.List;
21-
import org.sonar.java.model.SemanticValues;
22-
import org.sonar.plugins.java.api.semantic.Symbol;
23-
import org.sonarsource.analyzer.commons.collections.ListUtils;
22+
import java.util.Objects;
23+
import java.util.function.Supplier;
24+
import javax.annotation.CheckForNull;
25+
import javax.annotation.Nullable;
2426
import org.sonar.java.model.InternalSyntaxToken;
2527
import org.sonar.java.model.JavaTree;
28+
import org.sonar.java.model.SemanticValues;
2629
import org.sonar.java.model.expression.IdentifierTreeImpl;
30+
import org.sonar.plugins.java.api.semantic.Symbol;
2731
import org.sonar.plugins.java.api.tree.ExpressionTree;
2832
import org.sonar.plugins.java.api.tree.IdentifierTree;
2933
import org.sonar.plugins.java.api.tree.InferedTypeTree;
@@ -33,12 +37,7 @@
3337
import org.sonar.plugins.java.api.tree.TreeVisitor;
3438
import org.sonar.plugins.java.api.tree.TypeTree;
3539
import org.sonar.plugins.java.api.tree.VariableTree;
36-
37-
import javax.annotation.CheckForNull;
38-
import javax.annotation.Nullable;
39-
import java.util.Collections;
40-
import java.util.Objects;
41-
import java.util.function.Supplier;
40+
import org.sonarsource.analyzer.commons.collections.ListUtils;
4241

4342
public class VariableTreeImpl extends JavaTree implements VariableTree {
4443
private ModifiersTree modifiers;

‎java-frontend/src/main/java/org/sonar/java/model/expression/LambdaExpressionTreeImpl.java‎

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -17,23 +17,22 @@
1717
package org.sonar.java.model.expression;
1818

1919
import java.util.Arrays;
20+
import java.util.Collections;
21+
import java.util.List;
22+
import java.util.function.Supplier;
23+
import javax.annotation.Nullable;
2024
import org.sonar.java.cfg.CFG;
21-
import org.sonar.java.model.SemanticValues;
22-
import org.sonar.plugins.java.api.semantic.Symbol;
23-
import org.sonarsource.analyzer.commons.collections.ListUtils;
2425
import org.sonar.java.model.InternalSyntaxToken;
26+
import org.sonar.java.model.SemanticValues;
2527
import org.sonar.plugins.java.api.cfg.ControlFlowGraph;
28+
import org.sonar.plugins.java.api.semantic.Symbol;
2629
import org.sonar.plugins.java.api.tree.BlockTree;
2730
import org.sonar.plugins.java.api.tree.LambdaExpressionTree;
2831
import org.sonar.plugins.java.api.tree.SyntaxToken;
2932
import org.sonar.plugins.java.api.tree.Tree;
3033
import org.sonar.plugins.java.api.tree.TreeVisitor;
3134
import org.sonar.plugins.java.api.tree.VariableTree;
32-
33-
import javax.annotation.Nullable;
34-
import java.util.Collections;
35-
import java.util.List;
36-
import java.util.function.Supplier;
35+
import org.sonarsource.analyzer.commons.collections.ListUtils;
3736

3837
public class LambdaExpressionTreeImpl extends AssessableExpressionTree implements LambdaExpressionTree {
3938

‎java-frontend/src/main/java/org/sonar/java/model/expression/MethodInvocationTreeImpl.java‎

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,13 @@
1717
package org.sonar.java.model.expression;
1818

1919
import java.util.Arrays;
20+
import java.util.Collections;
2021
import java.util.List;
22+
import java.util.Objects;
23+
import java.util.function.Supplier;
24+
import javax.annotation.Nullable;
2125
import org.sonar.java.ast.parser.ArgumentListTreeImpl;
2226
import org.sonar.java.model.SemanticValues;
23-
import org.sonarsource.analyzer.commons.collections.ListUtils;
2427
import org.sonar.plugins.java.api.semantic.Symbol;
2528
import org.sonar.plugins.java.api.tree.Arguments;
2629
import org.sonar.plugins.java.api.tree.ExpressionTree;
@@ -30,11 +33,7 @@
3033
import org.sonar.plugins.java.api.tree.Tree;
3134
import org.sonar.plugins.java.api.tree.TreeVisitor;
3235
import org.sonar.plugins.java.api.tree.TypeArguments;
33-
34-
import javax.annotation.Nullable;
35-
import java.util.Collections;
36-
import java.util.Objects;
37-
import java.util.function.Supplier;
36+
import org.sonarsource.analyzer.commons.collections.ListUtils;
3837

3938
public class MethodInvocationTreeImpl extends AssessableExpressionTree implements MethodInvocationTree {
4039

‎java-frontend/src/test/java/org/sonar/java/model/ClassesLayoutTest.java‎

Lines changed: 3 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -16,22 +16,16 @@
1616
*/
1717
package org.sonar.java.model;
1818

19+
import java.lang.reflect.Field;
20+
import java.lang.reflect.Modifier;
21+
import java.util.HashSet;
1922
import org.junit.jupiter.api.Test;
2023
import org.sonar.java.model.declaration.VariableTreeImpl;
2124
import org.sonar.java.model.expression.IdentifierTreeImpl;
2225
import org.sonar.java.model.expression.LiteralTreeImpl;
2326
import org.sonar.java.model.expression.MemberSelectExpressionTreeImpl;
2427
import org.sonar.java.model.expression.MethodInvocationTreeImpl;
2528

26-
import java.lang.reflect.Field;
27-
import java.lang.reflect.Modifier;
28-
import java.nio.file.Files;
29-
import java.nio.file.Path;
30-
import java.util.HashSet;
31-
import java.util.List;
32-
import java.util.Set;
33-
import java.util.stream.Stream;
34-
3529
import static org.assertj.core.api.Assertions.assertThat;
3630

3731
/**
@@ -43,22 +37,6 @@
4337
*/
4438
class ClassesLayoutTest {
4539

46-
@Test
47-
void shared_model_and_contracts_have_no_compiler_imports() throws Exception {
48-
Path model = Path.of("src/main/java/org/sonar/java/model");
49-
Set<String> sharedFiles = Set.of("AbstractTypedTree.java", "JavaTree.java", "KeywordThis.java", "KeywordSuper.java",
50-
"TypeParameterTreeImpl.java", "JUtils.java", "JSymbolMetadata.java", "JSymbolMetadataNullabilityHelper.java",
51-
"JProblem.java", "JWarning.java", "SemanticValues.java");
52-
try (Stream<Path> files = Files.walk(model)) {
53-
for (Path file : files.filter(path -> path.toString().endsWith(".java")).toList()) {
54-
if (sharedFiles.contains(file.getFileName().toString()) || List.of("declaration", "expression", "pattern").contains(file.getParent().getFileName().toString())) {
55-
assertThat(Files.readAllLines(file).stream().filter(line -> line.startsWith("import "))).as(file.toString())
56-
.noneMatch(line -> line.contains("org.eclipse.jdt"));
57-
}
58-
}
59-
}
60-
}
61-
6240
@Test
6341
void token() {
6442
assertThat(countFields(InternalSyntaxToken.class)).isEqualTo(7);

‎java-frontend/src/test/java/org/sonar/java/model/JSymbolMetadataTest.java‎

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,15 @@
5757

5858
class JSymbolMetadataTest {
5959

60+
private static final Path NULLABILITY_SOURCE_DIR = JParserTestUtils.CHECKS_TEST_DIR
61+
.resolve(Paths.get("src", "main", "java", "annotations", "nullability"));
62+
63+
private static final Pattern NULLABILITY_ID_PATTERN = Pattern.compile("id\\d++" +
64+
"_type_(?<type>NO_ANNOTATION|UNKNOWN|STRONG_NULLABLE|WEAK_NULLABLE|NON_NULL)" +
65+
"(?:_level_(?<level>UNKNOWN|PACKAGE|CLASS|METHOD|VARIABLE))?" +
66+
"(?<meta>_meta)?" +
67+
"(?:_line_(?<line>empty|\\d++))?");
68+
6069
@Test
6170
void flattened_annotations_are_independent_of_exposed_metadata_collections() {
6271
Symbol owner = mock(Symbol.class);
@@ -72,15 +81,6 @@ void flattened_annotations_are_independent_of_exposed_metadata_collections() {
7281
assertThat(outer.annotations()).containsExactly(outerAnnotation, argumentAnnotation);
7382
}
7483

75-
private static final Path NULLABILITY_SOURCE_DIR = JParserTestUtils.CHECKS_TEST_DIR
76-
.resolve(Paths.get("src", "main", "java", "annotations", "nullability"));
77-
78-
private static final Pattern NULLABILITY_ID_PATTERN = Pattern.compile("id\\d++" +
79-
"_type_(?<type>NO_ANNOTATION|UNKNOWN|STRONG_NULLABLE|WEAK_NULLABLE|NON_NULL)" +
80-
"(?:_level_(?<level>UNKNOWN|PACKAGE|CLASS|METHOD|VARIABLE))?" +
81-
"(?<meta>_meta)?" +
82-
"(?:_line_(?<line>empty|\\d++))?");
83-
8484
@Test
8585
void should_convert_annotation_values() {
8686
JavaTree.CompilationUnitTreeImpl cu = test("import java.lang.annotation.*; @Target({ElementType.TYPE, ElementType.METHOD}) @interface A { }");

0 commit comments

Comments
 (0)