import com.google.common.annotations.Beta;
import com.google.common.collect.ImmutableList;
+import java.io.Serial;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
@NonNullByDefault
public abstract sealed class JavaTypeName implements Identifier, Immutable {
private static final class Primitive extends JavaTypeName {
+ @Serial
private static final long serialVersionUID = 1L;
Primitive(final String simpleName) {
}
private abstract static sealed class Reference extends JavaTypeName {
+ @Serial
private static final long serialVersionUID = 1L;
Reference(final String simpleName) {
}
private static final class TopLevel extends Reference {
+ @Serial
private static final long serialVersionUID = 1L;
private final String packageName;
@Override
public List<String> localNameComponents() {
- final List<String> ret = new ArrayList<>();
+ final var ret = new ArrayList<String>();
ret.add(simpleName());
return ret;
}
}
private static final class Nested extends Reference {
+ @Serial
private static final long serialVersionUID = 1L;
private final Reference immediatelyEnclosingClass;
}
private static final Logger LOG = LoggerFactory.getLogger(JavaTypeName.class);
+ @Serial
private static final long serialVersionUID = 1L;
private final String simpleName;