From f87fb99cb38310ea60efead5d5b499313bba4e96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Fournier?= Date: Sat, 3 Dec 2022 18:46:39 +0100 Subject: [PATCH] Improve annot toString --- .../java/symbols/internal/SymbolToStrings.java | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/symbols/internal/SymbolToStrings.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/symbols/internal/SymbolToStrings.java index bb3a34d1a1..2526b248e2 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/symbols/internal/SymbolToStrings.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/symbols/internal/SymbolToStrings.java @@ -4,6 +4,8 @@ package net.sourceforge.pmd.lang.java.symbols.internal; +import java.util.stream.Collectors; + import net.sourceforge.pmd.lang.java.symbols.JClassSymbol; import net.sourceforge.pmd.lang.java.symbols.JConstructorSymbol; import net.sourceforge.pmd.lang.java.symbols.JElementSymbol; @@ -15,7 +17,6 @@ import net.sourceforge.pmd.lang.java.symbols.JTypeDeclSymbol; import net.sourceforge.pmd.lang.java.symbols.JTypeParameterSymbol; import net.sourceforge.pmd.lang.java.symbols.SymbolVisitor; import net.sourceforge.pmd.lang.java.symbols.SymbolicValue.SymAnnot; -import net.sourceforge.pmd.util.CollectionUtil; public class SymbolToStrings { @@ -35,7 +36,16 @@ public class SymbolToStrings { } public String toString(SymAnnot annot) { - return "@" + annot.getBinaryName() + CollectionUtil.associateWith(annot.getAttributeNames(), annot::getAttribute); + String attrs; + if (annot.getAttributeNames().isEmpty()) { + attrs = ""; + } else { + attrs = annot.getAttributeNames() + .stream() + .map(name -> name + "=" + annot.getAttribute(name)) + .collect(Collectors.joining(", ", "(", ")")); + } + return "@" + annot.getBinaryName() + attrs; } private static final class ToStringVisitor implements SymbolVisitor {