Package io.codemodder
package io.codemodder
-
ClassDescriptionThe base of a codemod type.Holds a code directory (e.g., a repository root).Used to mark types providing codemod functionality and provide the necessary metadata.Represents a change made to the code.A description of how important it is that a codemod execute in the list of codemods being run.A type responsible for executing a codemod on a set of files.Represents the result of scanning a file for changes.A codemod and its ID.The context we provide to each codemod.This type is responsible for loading codemods and the surrounding subsystem.A model of a codemod's updating of packages.Describes a codemod parameter.A type that helps provide functionality codemods.A type that is relied on to inform our in-flight analysis on whether codemods are allowed.A type responsible for reporting codemod changes.A utility class for accessing a codemod's resources in it's "default location" the classpath.Type responsible for running a codemod on a single file, performing the analysis and file changes.A type that plugins can implement to enrich or modify CodeTF results.A type that allows composing multiple
JavaParserChanger
instances are under the same umbrella.During analysis, this will be the default setting for every rule.A type that describes a new dependency being added to a project.Models a Java dependency we might want to add.The license, if known, of a dependency.Represents the result of a dependency update operation.Either<L,R> An implementation of the Either monad.Detects the encoding of a file.A cache for file contents.A codemod that only fixes issues and does not perform its own detection, instead relying on external analysis from other tools.Represents the importance of a codemod.This is the main interaction point with types for detecting if a path should be included.Matches every file, indicates that the codemods should use their own filtering.Holds includes and excludes patterns for filesAn includes/excludes pattern that matches any files.An includes/excludes pattern that matches java files.Represents a line of code.For a given file, this type provides an API for callers to understand if certain line numbers are allowed.Given a set of lines to exclude, determine if we should allow changes to this line.Given a set of lines to include, determine if we should allow changes to this line.Utilities related to line numbers.A configurator for the log levels that defaults to "quiet" mode.A type that can collect specific types of nodes from aCompilationUnit
.A parameter for a codemod, capable of retrieving the right value for a given path and line.This type is used in include/exclude logic for matching paths.Represents a position in a source file.A type that plugins can implement to provide a project management functions to codemods.Gives access to raw files for performing arbitrary changes.This type does the heavy lifting for many protections that can work in a simple "search-and-replace" pattern for non-Java code.A type that can match aRegion
to aRange
for determining if we should change the node at this location.Represents a codemod author's confidence that changes wll be safe and effective.Defines a model for interacting with SARIF.An empty implementation ofRuleSarif
for binding codemods with no SARIF results.BuildsRuleSarif
s.Provides an entrypoint for CLIs built with the codemodder framework.Utility class for working with SARIF model objects.Utility class for building keys for SARIF findings.SarifPluginJavaParserChanger<T extends com.github.javaparser.ast.Node>Provides base functionality for making JavaParser-based changes based on results found by a sarif file.ARawFileChanger
bundled with aRuleSarif
.Describes a region of source code.A type responsible for extracting a region from a resultRepresent a normally-structured Java source code directory and all its files underneath it.Represents a worker class that reads a list of repository roots and captures the Java source directories.Type that gets used to modify an XML stream.A handler forXMLEvent
s that match an XPath expression.Represents the results when an XML file is transformed usingXPathStreamProcessor
.Performs configurable actions on nodes that match XPath expressions.