Merge pull request #4354 from oowekyala:pmd7-utility-classes
[core] Move utility classes around #4354
This commit is contained in:
137 files changed
+200
-331
No files matched your search
@@ -247,6 +247,7 @@ The following previously deprecated rules have been finally removed:
|
||||
* [#4080](https://github.com/pmd/pmd/issues/4080): \[ant] Split off Ant integration into a new submodule
|
||||
* core
|
||||
* [#2234](https://github.com/pmd/pmd/issues/2234): \[core] Consolidate PMD CLI into a single command
|
||||
* [#2873](https://github.com/pmd/pmd/issues/2873): \[core] Utility classes in pmd 7
|
||||
* [#3203](https://github.com/pmd/pmd/issues/3203): \[core] Replace RuleViolationFactory implementations with ViolationDecorator
|
||||
* [#3902](https://github.com/pmd/pmd/issues/3902): \[core] Violation decorators
|
||||
* [#4035](https://github.com/pmd/pmd/issues/4035): \[core] ConcurrentModificationException in DefaultRuleViolationFactory
|
||||
@@ -354,6 +355,19 @@ The following previously deprecated rules have been finally removed:
|
||||
has been moved into the same package {% jdoc_package ant::ant %}. You'll need to update your taskdef entries in your
|
||||
build.xml files with the FQCN {% jdoc !!ant::ant.CPDTask %} if you use it anywhere.
|
||||
|
||||
* Utility classes in {% jdoc_package core::util %}, that have previously marked as `@InternalApi` have been finally
|
||||
moved to {% jdoc_package core::internal.util %}. This includes ClasspathClassLoader, FileFinder, FileUtil, and
|
||||
IOUtil.
|
||||
|
||||
* The following utility classes in {% jdoc_package core::util %} are now considered public API:
|
||||
* {% jdoc core::util.AssertionUtil %}
|
||||
* {% jdoc core::util.CollectionUtil %}
|
||||
* {% jdoc core::util.ContextedAssertionError %}
|
||||
* {% jdoc core::util.ContextedStackOverflowError %}
|
||||
* {% jdoc core::util.GraphUtil %}
|
||||
* {% jdoc core::util.IteratorUtil %}
|
||||
* {% jdoc core::util.StringUtil %}
|
||||
|
||||
#### Metrics framework
|
||||
|
||||
The metrics framework has been made simpler and more general.
|
||||
|
||||
@@ -27,12 +27,12 @@ import org.apache.tools.ant.types.Parameter;
|
||||
|
||||
import net.sourceforge.pmd.Report;
|
||||
import net.sourceforge.pmd.annotation.InternalApi;
|
||||
import net.sourceforge.pmd.internal.util.IOUtil;
|
||||
import net.sourceforge.pmd.lang.document.TextFile;
|
||||
import net.sourceforge.pmd.renderers.Renderer;
|
||||
import net.sourceforge.pmd.renderers.RendererFactory;
|
||||
import net.sourceforge.pmd.reporting.FileAnalysisListener;
|
||||
import net.sourceforge.pmd.reporting.GlobalAnalysisListener;
|
||||
import net.sourceforge.pmd.util.IOUtil;
|
||||
|
||||
@InternalApi
|
||||
public class Formatter {
|
||||
|
||||
@@ -28,6 +28,8 @@ import net.sourceforge.pmd.ant.Formatter;
|
||||
import net.sourceforge.pmd.ant.PMDTask;
|
||||
import net.sourceforge.pmd.ant.SourceLanguage;
|
||||
import net.sourceforge.pmd.internal.Slf4jSimpleConfiguration;
|
||||
import net.sourceforge.pmd.internal.util.ClasspathClassLoader;
|
||||
import net.sourceforge.pmd.internal.util.IOUtil;
|
||||
import net.sourceforge.pmd.lang.Language;
|
||||
import net.sourceforge.pmd.lang.LanguageRegistry;
|
||||
import net.sourceforge.pmd.lang.LanguageVersion;
|
||||
@@ -36,8 +38,6 @@ import net.sourceforge.pmd.reporting.FileAnalysisListener;
|
||||
import net.sourceforge.pmd.reporting.GlobalAnalysisListener;
|
||||
import net.sourceforge.pmd.reporting.ReportStats;
|
||||
import net.sourceforge.pmd.reporting.ReportStatsListener;
|
||||
import net.sourceforge.pmd.util.ClasspathClassLoader;
|
||||
import net.sourceforge.pmd.util.IOUtil;
|
||||
|
||||
public class PMDTaskImpl {
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@ import org.apache.tools.ant.ProjectHelper;
|
||||
import org.junit.jupiter.api.AfterAll;
|
||||
|
||||
import net.sourceforge.pmd.internal.Slf4jSimpleConfiguration;
|
||||
import net.sourceforge.pmd.util.IOUtil;
|
||||
import net.sourceforge.pmd.internal.util.IOUtil;
|
||||
|
||||
class AbstractAntTest {
|
||||
protected Project project;
|
||||
|
||||
@@ -20,7 +20,7 @@ import org.apache.tools.ant.BuildException;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import net.sourceforge.pmd.util.IOUtil;
|
||||
import net.sourceforge.pmd.internal.util.IOUtil;
|
||||
|
||||
class PMDTaskTest extends AbstractAntTest {
|
||||
|
||||
|
||||
@@ -14,8 +14,8 @@ import java.util.Iterator;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import net.sourceforge.pmd.internal.util.IOUtil;
|
||||
import net.sourceforge.pmd.lang.apex.ApexLanguageModule;
|
||||
import net.sourceforge.pmd.util.IOUtil;
|
||||
|
||||
class ApexCpdTest {
|
||||
private File testdir;
|
||||
|
||||
@@ -20,9 +20,9 @@ import java.util.List;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import net.sourceforge.pmd.internal.util.IOUtil;
|
||||
import net.sourceforge.pmd.lang.ast.Node;
|
||||
import net.sourceforge.pmd.lang.document.FileLocation;
|
||||
import net.sourceforge.pmd.util.IOUtil;
|
||||
|
||||
class ApexParserTest extends ApexParserTestBase {
|
||||
|
||||
@@ -182,7 +182,7 @@ class ApexParserTest extends ApexParserTestBase {
|
||||
@Test
|
||||
void stackOverflowDuringClassParsing() throws Exception {
|
||||
String source = IOUtil.readToString(ApexParserTest.class.getResourceAsStream("StackOverflowClass.cls"),
|
||||
StandardCharsets.UTF_8);
|
||||
StandardCharsets.UTF_8);
|
||||
ASTUserClassOrInterface<?> rootNode = parse(source);
|
||||
assertNotNull(rootNode);
|
||||
|
||||
|
||||
+1
-1
@@ -19,7 +19,7 @@ import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.io.TempDir;
|
||||
|
||||
import net.sourceforge.pmd.util.IOUtil;
|
||||
import net.sourceforge.pmd.internal.util.IOUtil;
|
||||
|
||||
import com.github.stefanbirkner.systemlambda.SystemLambda;
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@ import net.sourceforge.pmd.cpd.CPDReport;
|
||||
import net.sourceforge.pmd.cpd.Language;
|
||||
import net.sourceforge.pmd.cpd.Tokenizer;
|
||||
import net.sourceforge.pmd.internal.LogMessages;
|
||||
import net.sourceforge.pmd.util.IOUtil;
|
||||
import net.sourceforge.pmd.internal.util.IOUtil;
|
||||
|
||||
import picocli.CommandLine.Command;
|
||||
import picocli.CommandLine.Option;
|
||||
|
||||
@@ -42,9 +42,9 @@ import org.junit.jupiter.api.io.TempDir;
|
||||
import net.sourceforge.pmd.RuleContext;
|
||||
import net.sourceforge.pmd.cli.internal.CliExitCode;
|
||||
import net.sourceforge.pmd.internal.Slf4jSimpleConfiguration;
|
||||
import net.sourceforge.pmd.internal.util.IOUtil;
|
||||
import net.sourceforge.pmd.lang.ast.Node;
|
||||
import net.sourceforge.pmd.lang.rule.MockRule;
|
||||
import net.sourceforge.pmd.util.IOUtil;
|
||||
|
||||
import com.github.stefanbirkner.systemlambda.SystemLambda;
|
||||
|
||||
|
||||
@@ -26,13 +26,13 @@ import net.sourceforge.pmd.cache.AnalysisCache;
|
||||
import net.sourceforge.pmd.cache.FileAnalysisCache;
|
||||
import net.sourceforge.pmd.cache.NoopAnalysisCache;
|
||||
import net.sourceforge.pmd.cli.PmdParametersParseResult;
|
||||
import net.sourceforge.pmd.internal.util.AssertionUtil;
|
||||
import net.sourceforge.pmd.internal.util.ClasspathClassLoader;
|
||||
import net.sourceforge.pmd.lang.LanguageRegistry;
|
||||
import net.sourceforge.pmd.lang.LanguageVersion;
|
||||
import net.sourceforge.pmd.lang.LanguageVersionDiscoverer;
|
||||
import net.sourceforge.pmd.renderers.Renderer;
|
||||
import net.sourceforge.pmd.renderers.RendererFactory;
|
||||
import net.sourceforge.pmd.util.ClasspathClassLoader;
|
||||
import net.sourceforge.pmd.util.AssertionUtil;
|
||||
import net.sourceforge.pmd.util.log.MessageReporter;
|
||||
import net.sourceforge.pmd.util.log.internal.SimpleMessageReporter;
|
||||
|
||||
|
||||
@@ -26,8 +26,9 @@ import net.sourceforge.pmd.benchmark.TimedOperationCategory;
|
||||
import net.sourceforge.pmd.cache.AnalysisCacheListener;
|
||||
import net.sourceforge.pmd.cache.NoopAnalysisCache;
|
||||
import net.sourceforge.pmd.internal.LogMessages;
|
||||
import net.sourceforge.pmd.internal.util.AssertionUtil;
|
||||
import net.sourceforge.pmd.internal.util.ClasspathClassLoader;
|
||||
import net.sourceforge.pmd.internal.util.FileCollectionUtil;
|
||||
import net.sourceforge.pmd.internal.util.IOUtil;
|
||||
import net.sourceforge.pmd.lang.Language;
|
||||
import net.sourceforge.pmd.lang.LanguageVersion;
|
||||
import net.sourceforge.pmd.lang.LanguageVersionDiscoverer;
|
||||
@@ -39,8 +40,7 @@ import net.sourceforge.pmd.reporting.GlobalAnalysisListener;
|
||||
import net.sourceforge.pmd.reporting.ListenerInitializer;
|
||||
import net.sourceforge.pmd.reporting.ReportStats;
|
||||
import net.sourceforge.pmd.reporting.ReportStatsListener;
|
||||
import net.sourceforge.pmd.util.ClasspathClassLoader;
|
||||
import net.sourceforge.pmd.util.IOUtil;
|
||||
import net.sourceforge.pmd.util.AssertionUtil;
|
||||
import net.sourceforge.pmd.util.StringUtil;
|
||||
import net.sourceforge.pmd.util.log.MessageReporter;
|
||||
|
||||
|
||||
@@ -29,6 +29,7 @@ import org.w3c.dom.Document;
|
||||
import org.w3c.dom.Element;
|
||||
import org.w3c.dom.Text;
|
||||
|
||||
import net.sourceforge.pmd.internal.util.IOUtil;
|
||||
import net.sourceforge.pmd.lang.Language;
|
||||
import net.sourceforge.pmd.lang.LanguageVersion;
|
||||
import net.sourceforge.pmd.lang.rule.RuleReference;
|
||||
@@ -36,7 +37,6 @@ import net.sourceforge.pmd.lang.rule.XPathRule;
|
||||
import net.sourceforge.pmd.properties.PropertyDescriptor;
|
||||
import net.sourceforge.pmd.properties.PropertyDescriptorField;
|
||||
import net.sourceforge.pmd.properties.PropertyTypeId;
|
||||
import net.sourceforge.pmd.util.IOUtil;
|
||||
|
||||
/**
|
||||
* This class represents a way to serialize a RuleSet to an XML configuration
|
||||
|
||||
+1
-1
@@ -33,9 +33,9 @@ import net.sourceforge.pmd.benchmark.TimeTracker;
|
||||
import net.sourceforge.pmd.benchmark.TimedOperation;
|
||||
import net.sourceforge.pmd.benchmark.TimedOperationCategory;
|
||||
import net.sourceforge.pmd.cache.internal.ClasspathFingerprinter;
|
||||
import net.sourceforge.pmd.internal.util.IOUtil;
|
||||
import net.sourceforge.pmd.lang.document.TextDocument;
|
||||
import net.sourceforge.pmd.reporting.FileAnalysisListener;
|
||||
import net.sourceforge.pmd.util.IOUtil;
|
||||
|
||||
/**
|
||||
* Abstract implementation of the analysis cache. Handles all operations, except for persistence.
|
||||
|
||||
+1
-1
@@ -16,7 +16,7 @@ import java.util.zip.Checksum;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import net.sourceforge.pmd.util.IOUtil;
|
||||
import net.sourceforge.pmd.internal.util.IOUtil;
|
||||
|
||||
/**
|
||||
* Base fingerprinter for raw files.
|
||||
|
||||
@@ -23,10 +23,10 @@ import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import net.sourceforge.pmd.annotation.Experimental;
|
||||
import net.sourceforge.pmd.internal.util.FileFinder;
|
||||
import net.sourceforge.pmd.internal.util.FileUtil;
|
||||
import net.sourceforge.pmd.internal.util.IOUtil;
|
||||
import net.sourceforge.pmd.lang.ast.TokenMgrError;
|
||||
import net.sourceforge.pmd.util.FileFinder;
|
||||
import net.sourceforge.pmd.util.FileUtil;
|
||||
import net.sourceforge.pmd.util.IOUtil;
|
||||
import net.sourceforge.pmd.util.database.DBMSMetadata;
|
||||
import net.sourceforge.pmd.util.database.DBURI;
|
||||
import net.sourceforge.pmd.util.database.SourceObject;
|
||||
|
||||
@@ -22,8 +22,8 @@ import java.util.Set;
|
||||
|
||||
import net.sourceforge.pmd.AbstractConfiguration;
|
||||
import net.sourceforge.pmd.cpd.renderer.CPDReportRenderer;
|
||||
import net.sourceforge.pmd.util.FileFinder;
|
||||
import net.sourceforge.pmd.util.FileUtil;
|
||||
import net.sourceforge.pmd.internal.util.FileFinder;
|
||||
import net.sourceforge.pmd.internal.util.FileUtil;
|
||||
|
||||
/**
|
||||
*
|
||||
|
||||
@@ -14,7 +14,7 @@ import java.nio.file.Files;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import net.sourceforge.pmd.util.IOUtil;
|
||||
import net.sourceforge.pmd.internal.util.IOUtil;
|
||||
|
||||
public class SourceCode {
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
package net.sourceforge.pmd.cpd.token.internal;
|
||||
|
||||
import static net.sourceforge.pmd.internal.util.IteratorUtil.AbstractIterator;
|
||||
import static net.sourceforge.pmd.util.IteratorUtil.AbstractIterator;
|
||||
|
||||
import java.util.ConcurrentModificationException;
|
||||
import java.util.Iterator;
|
||||
|
||||
+7
-11
@@ -1,8 +1,8 @@
|
||||
/**
|
||||
/*
|
||||
* BSD-style license; for more info see http://pmd.sourceforge.net/license.html
|
||||
*/
|
||||
|
||||
package net.sourceforge.pmd.util;
|
||||
package net.sourceforge.pmd.internal.util;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.File;
|
||||
@@ -19,8 +19,7 @@ import org.apache.commons.lang3.StringUtils;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import net.sourceforge.pmd.annotation.InternalApi;
|
||||
import net.sourceforge.pmd.internal.util.AssertionUtil;
|
||||
import net.sourceforge.pmd.util.AssertionUtil;
|
||||
|
||||
/**
|
||||
* Create a ClassLoader which loads classes using a CLASSPATH like String. If
|
||||
@@ -28,10 +27,7 @@ import net.sourceforge.pmd.internal.util.AssertionUtil;
|
||||
* the file will be read with each line representing an path on the classpath.
|
||||
*
|
||||
* @author Edwin Chan
|
||||
* @deprecated Is internal API
|
||||
*/
|
||||
@InternalApi
|
||||
@Deprecated
|
||||
public class ClasspathClassLoader extends URLClassLoader {
|
||||
|
||||
private static final Logger LOG = LoggerFactory.getLogger(ClasspathClassLoader.class);
|
||||
@@ -105,10 +101,10 @@ public class ClasspathClassLoader extends URLClassLoader {
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return new StringBuilder(getClass().getSimpleName())
|
||||
.append("[[")
|
||||
.append(StringUtils.join(getURLs(), ":"))
|
||||
.append("] parent: ").append(getParent()).append(']').toString();
|
||||
return getClass().getSimpleName()
|
||||
+ "[["
|
||||
+ StringUtils.join(getURLs(), ":")
|
||||
+ "] parent: " + getParent() + ']';
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -17,8 +17,6 @@ import org.slf4j.LoggerFactory;
|
||||
|
||||
import net.sourceforge.pmd.PMDConfiguration;
|
||||
import net.sourceforge.pmd.lang.document.FileCollector;
|
||||
import net.sourceforge.pmd.util.FileUtil;
|
||||
import net.sourceforge.pmd.util.IOUtil;
|
||||
import net.sourceforge.pmd.util.database.DBMSMetadata;
|
||||
import net.sourceforge.pmd.util.database.DBURI;
|
||||
import net.sourceforge.pmd.util.database.SourceObject;
|
||||
|
||||
+2
-7
@@ -1,8 +1,8 @@
|
||||
/**
|
||||
/*
|
||||
* BSD-style license; for more info see http://pmd.sourceforge.net/license.html
|
||||
*/
|
||||
|
||||
package net.sourceforge.pmd.util;
|
||||
package net.sourceforge.pmd.internal.util;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FilenameFilter;
|
||||
@@ -11,14 +11,9 @@ import java.util.Arrays;
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
|
||||
import net.sourceforge.pmd.annotation.InternalApi;
|
||||
|
||||
/**
|
||||
* A utility class for finding files within a directory.
|
||||
* @deprecated Is internal API
|
||||
*/
|
||||
@Deprecated
|
||||
@InternalApi
|
||||
public class FileFinder {
|
||||
|
||||
private FilenameFilter filter;
|
||||
+2
-8
@@ -1,8 +1,8 @@
|
||||
/**
|
||||
/*
|
||||
* BSD-style license; for more info see http://pmd.sourceforge.net/license.html
|
||||
*/
|
||||
|
||||
package net.sourceforge.pmd.util;
|
||||
package net.sourceforge.pmd.internal.util;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileNotFoundException;
|
||||
@@ -21,15 +21,9 @@ import java.util.stream.Collectors;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
|
||||
import net.sourceforge.pmd.annotation.InternalApi;
|
||||
|
||||
/**
|
||||
* This is a utility class for working with Files.
|
||||
*
|
||||
* @deprecated Is internal API
|
||||
*/
|
||||
@Deprecated
|
||||
@InternalApi
|
||||
public final class FileUtil {
|
||||
|
||||
private FileUtil() {
|
||||
+2
-7
@@ -1,8 +1,8 @@
|
||||
/**
|
||||
/*
|
||||
* BSD-style license; for more info see http://pmd.sourceforge.net/license.html
|
||||
*/
|
||||
|
||||
package net.sourceforge.pmd.util;
|
||||
package net.sourceforge.pmd.internal.util;
|
||||
|
||||
import java.io.Closeable;
|
||||
import java.io.File;
|
||||
@@ -34,15 +34,10 @@ import java.util.Objects;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.checkerframework.checker.nullness.qual.Nullable;
|
||||
|
||||
import net.sourceforge.pmd.annotation.InternalApi;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Brian Remedios
|
||||
* @deprecated Is internal API
|
||||
*/
|
||||
@InternalApi
|
||||
@Deprecated
|
||||
public final class IOUtil {
|
||||
/**
|
||||
* Unicode BOM character. Replaces commons io ByteOrderMark.
|
||||
@@ -5,8 +5,8 @@
|
||||
package net.sourceforge.pmd.internal.util;
|
||||
|
||||
|
||||
import static net.sourceforge.pmd.internal.util.AssertionUtil.requireOver1;
|
||||
import static net.sourceforge.pmd.internal.util.AssertionUtil.requireParamNotNull;
|
||||
import static net.sourceforge.pmd.util.AssertionUtil.requireOver1;
|
||||
import static net.sourceforge.pmd.util.AssertionUtil.requireParamNotNull;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.function.Predicate;
|
||||
@@ -14,6 +14,8 @@ import java.util.regex.Pattern;
|
||||
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
|
||||
import net.sourceforge.pmd.util.AssertionUtil;
|
||||
|
||||
/**
|
||||
* Utility class for working with {@link Predicate}.
|
||||
*/
|
||||
|
||||
@@ -15,7 +15,7 @@ import org.apache.commons.lang3.StringUtils;
|
||||
import org.checkerframework.checker.nullness.qual.Nullable;
|
||||
|
||||
import net.sourceforge.pmd.annotation.DeprecatedUntil700;
|
||||
import net.sourceforge.pmd.internal.util.AssertionUtil;
|
||||
import net.sourceforge.pmd.util.AssertionUtil;
|
||||
|
||||
/**
|
||||
* This class can discover the LanguageVersion of a source file. Further, every
|
||||
|
||||
@@ -10,9 +10,9 @@ import java.util.Map;
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
|
||||
import net.sourceforge.pmd.annotation.Experimental;
|
||||
import net.sourceforge.pmd.internal.util.AssertionUtil;
|
||||
import net.sourceforge.pmd.lang.ast.Parser.ParserTask;
|
||||
import net.sourceforge.pmd.lang.document.TextDocument;
|
||||
import net.sourceforge.pmd.util.AssertionUtil;
|
||||
|
||||
/**
|
||||
* The output of {@link Parser#parse(ParserTask)}.
|
||||
|
||||
@@ -9,10 +9,10 @@ import java.util.stream.Stream;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import net.sourceforge.pmd.annotation.Experimental;
|
||||
import net.sourceforge.pmd.internal.util.IteratorUtil;
|
||||
import net.sourceforge.pmd.lang.document.Chars;
|
||||
import net.sourceforge.pmd.lang.document.TextRegion;
|
||||
import net.sourceforge.pmd.reporting.Reportable;
|
||||
import net.sourceforge.pmd.util.IteratorUtil;
|
||||
|
||||
/**
|
||||
* Represents a token, part of a token chain in a source file. Tokens
|
||||
|
||||
+1
-1
@@ -6,11 +6,11 @@ package net.sourceforge.pmd.lang.ast.impl.javacc;
|
||||
|
||||
import static java.lang.Integer.min;
|
||||
|
||||
import net.sourceforge.pmd.internal.util.AssertionUtil;
|
||||
import net.sourceforge.pmd.lang.document.Chars;
|
||||
import net.sourceforge.pmd.lang.document.FileLocation;
|
||||
import net.sourceforge.pmd.lang.document.FragmentedDocBuilder;
|
||||
import net.sourceforge.pmd.lang.document.TextDocument;
|
||||
import net.sourceforge.pmd.util.AssertionUtil;
|
||||
|
||||
/**
|
||||
* An object that can translate an input document into an output document,
|
||||
|
||||
@@ -18,10 +18,10 @@ import java.util.function.Predicate;
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
import org.checkerframework.checker.nullness.qual.Nullable;
|
||||
|
||||
import net.sourceforge.pmd.internal.util.AssertionUtil;
|
||||
import net.sourceforge.pmd.internal.util.IteratorUtil;
|
||||
import net.sourceforge.pmd.lang.ast.Node;
|
||||
import net.sourceforge.pmd.lang.ast.NodeStream;
|
||||
import net.sourceforge.pmd.util.AssertionUtil;
|
||||
import net.sourceforge.pmd.util.IteratorUtil;
|
||||
|
||||
/**
|
||||
* Stream that iterates over one axis of the tree.
|
||||
|
||||
Loaded 30 of 137 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user