# Package net.sourceforge.pmd

This is the PMD programming mistake detector.

See: Description

Interface Summary
Interface | Description
--- | ---
NumericPropertyDescriptor<T> | Defines a descriptor type whose instance values are required lie within specified upper and lower limits.
PMD.ProgressMonitor | A callback that would be implemented by IDEs keeping track of PMD's progress as it evaluates a set of files.
PropertyDescriptor<T> | Property value descriptor that defines the use & requirements for setting property values for use within PMD and any associated GUIs.
PropertyDescriptorFactory |
PropertySource |
ReportListener |
Rule | This is the basic Rule interface for PMD rules.
RuleViolation | A RuleViolation is created by a Rule when it identifies a violation of the Rule constraints.

Class Summary
Class | Description
--- | ---
AbstractConfiguration |
AbstractPropertySource |
ExternalRuleID |
PMD | This is the main class for interacting with PMD.
PMDConfiguration | This class contains the details for the runtime configuration of PMD.
PropertyDescriptorFields |
Report |
Report.ProcessingError |
Report.ReadableDuration |
Report.RuleConfigurationError |
Report.SuppressedViolation |
RuleChain | The RuleChain is a means by which Rules can participate in a uniform visitation of the AST, and not need perform their own independent visitation.
RuleContext | The RuleContext provides access to Rule processing state.
RuleSet | This class represents a collection of rules along with some optional filter patterns that can preclude their application on specific files.
RuleSetFactory | RuleSetFactory is responsible for creating RuleSet instances from XML content.
RuleSetReference | This class represents a reference to RuleSet.
RuleSetReferenceId | This class is used to parse a RuleSet reference value.
RuleSets | Grouping of Rules per Language in a RuleSet.
RulesetsFactoryUtils |
RuleSetWriter | This class represents a way to serialize a RuleSet to an XML configuration file.
RuleViolationComparator | Compares RuleViolations using the following criteria: Source file name Begin line Description Begin column End line End column Rule name
SourceCodeProcessor |
SynchronizedReportListener | Wraps a report listener in order to synchronize calls to it.

Enum Summary
Enum | Description
--- | ---
RulePriority | These are the possible Rule priority values.

Exception Summary
Exception | Description
--- | ---
PMDException | A convenience exception wrapper.
RuleSetNotFoundException |

## Package net.sourceforge.pmd Description

This is the PMD programming mistake detector. In order to use it, create a new instance of `PMD` and use its `PMD.processFiles(net.sourceforge.pmd.PMDConfiguration, net.sourceforge.pmd.RuleSetFactory, java.util.Collection<java.io.File>, net.sourceforge.pmd.RuleContext, net.sourceforge.pmd.PMD.ProgressMonitor)` method.