PMD CI (pmd-bot)
2024-08-30 10:21:07 +00:00
parent 13554d64c9
commit 5ecb1b370b
173 changed files with 1341 additions and 1290 deletions

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1933,7 +1933,7 @@
<div class="col-lg-12 footer">
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
Site last generated: Aug 29, 2024 <br />
Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -5,8 +5,8 @@
<description>Intended as a documentation theme based on Jekyll for technical writers documenting software and other technical products, this theme has all the elements you would need to handle multiple products with both multi-level sidebar navigation, tags, and other documentation features.</description>
<link>https://docs.pmd-code.org/latest/</link>
<atom:link href="https://docs.pmd-code.org/latest/feed.xml" rel="self" type="application/rss+xml"/>
<pubDate>Thu, 29 Aug 2024 16:26:03 +0000</pubDate>
<lastBuildDate>Thu, 29 Aug 2024 16:26:03 +0000</lastBuildDate>
<pubDate>Fri, 30 Aug 2024 10:16:53 +0000</pubDate>
<lastBuildDate>Fri, 30 Aug 2024 10:16:53 +0000</lastBuildDate>
<generator>Jekyll v3.10.0</generator>
</channel>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -8445,7 +8445,7 @@ Contributions of any kind welcome!</p>
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
October 2022<br /> Site last generated: Aug 29, 2024 <br />
October 2022<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -2177,7 +2177,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
<div class="col-lg-12 footer">
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
Site last generated: Aug 29, 2024 <br />
Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1942,7 +1942,7 @@
<div class="col-lg-12 footer">
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
Site last generated: Aug 29, 2024 <br />
Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1943,7 +1943,7 @@
<div class="col-lg-12 footer">
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
Site last generated: Aug 29, 2024 <br />
Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1954,7 +1954,7 @@ through the <a href="https://sourceforge.net/p/pmd/mailman/pmd-devel/">mailing l
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
January 2021<br /> Site last generated: Aug 29, 2024 <br />
January 2021<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1985,7 +1985,7 @@ or create a separate branch off the last release tag.</li>
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
June 2024 (PMD 7.3.0)<br /> Site last generated: Aug 29, 2024 <br />
June 2024 (PMD 7.3.0)<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1916,7 +1916,7 @@
<tr>
<td>7.x</td>
<td>7.0.0 (2024-03-22)</td>
<td>7.5.0-SNAPSHOT (2024-08-30)</td>
<td>7.6.0-SNAPSHOT (2024-09-27)</td>
<td>8</td>
<td>✔ yes</td>
</tr>
@ -2001,7 +2001,7 @@ We recommend to always update to the latest version to benefit from new features
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
June 2024 (PMD 7.3.0)<br /> Site last generated: Aug 29, 2024 <br />
June 2024 (PMD 7.3.0)<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1917,22 +1917,22 @@
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>[tom@hal building]$ ls -l
total 5716
-rw-rw-r-- 1 tom tom 5837216 Jul 17 13:09 pmd-src-7.5.0-SNAPSHOT.zip
[tom@hal building]$ unzip -q pmd-src-7.5.0-SNAPSHOT.zip
-rw-rw-r-- 1 tom tom 5837216 Jul 17 13:09 pmd-src-7.6.0-SNAPSHOT.zip
[tom@hal building]$ unzip -q pmd-src-7.6.0-SNAPSHOT.zip
[tom@hal building]$
</code></pre></div></div>
<p>Now cd down into the <code class="language-plaintext highlighter-rouge">pmd</code> directory:</p>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>[tom@hal building]$ cd pmd-src-7.5.0-SNAPSHOT
[tom@hal pmd-src-7.5.0-SNAPSHOT]$ ls -l | grep pom.xml
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>[tom@hal building]$ cd pmd-src-7.6.0-SNAPSHOT
[tom@hal pmd-src-7.6.0-SNAPSHOT]$ ls -l | grep pom.xml
-rw-rw-r-- 1 tom tom 36482 14\. Nov 17:36 pom.xml
[tom@hal pmd-src-7.5.0-SNAPSHOT]$
[tom@hal pmd-src-7.6.0-SNAPSHOT]$
</code></pre></div></div>
<p>Thats the project configuration for maven… lets compile!</p>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>[tom@hal pmd-src-7.5.0-SNAPSHOT]$ ./mvnw clean verify
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>[tom@hal pmd-src-7.6.0-SNAPSHOT]$ ./mvnw clean verify
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
@ -1972,7 +1972,7 @@ total 5716
[INFO] Finished at: 2015-11-14T17:46:06+01:00
[INFO] Final Memory: 63M/765M
[INFO] ------------------------------------------------------------------------
[tom@hal pmd-src-7.5.0-SNAPSHOT]$
[tom@hal pmd-src-7.6.0-SNAPSHOT]$
</code></pre></div></div>
<p>Now the source and binary distribution zip files can be found in the folder <code class="language-plaintext highlighter-rouge">pmd-dist/target</code>.</p>
@ -2021,7 +2021,7 @@ Theyre also in the jar file thats included with both the source and binary
<div class="col-lg-12 footer">
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
Site last generated: Aug 29, 2024 <br />
Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1974,7 +1974,7 @@ every push. Each pull request is built as well.</p>
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
March 2024<br /> Site last generated: Aug 29, 2024 <br />
March 2024<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1905,7 +1905,7 @@
<h2 id="overview">Overview</h2>
<p>The processing starts with the main class <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/PmdAnalysis.html#"><code>PmdAnalysis</code></a>.</p>
<p>The processing starts with the main class <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/PmdAnalysis.html#"><code>PmdAnalysis</code></a>.</p>
<ul>
<li>Parse command line parameters (see net.sourceforge.pmd.cli.PMDParameters)
@ -1985,7 +1985,7 @@ type resolution information and DFA nodes.</li>
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
September 2017<br /> Site last generated: Aug 29, 2024 <br />
September 2017<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1990,7 +1990,7 @@ The default configuration is provided in <code class="language-plaintext highlig
<div class="col-lg-12 footer">
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
Site last generated: Aug 29, 2024 <br />
Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1905,7 +1905,7 @@
<h2 id="adding-support-for-a-cpd-language">Adding support for a CPD language</h2>
<p>CPD works generically on the tokens produced by a <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/cpd/CpdLexer.html#"><code>CpdLexer</code></a>.
<p>CPD works generically on the tokens produced by a <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/cpd/CpdLexer.html#"><code>CpdLexer</code></a>.
To add support for a new language, the crucial piece is writing a CpdLexer that
splits the source file into the tokens specific to your language. Thankfully you
can use a stock <a href="https://github.com/antlr/grammars-v4">Antlr grammar</a> or JavaCC
@ -1924,14 +1924,14 @@ other languages.</li>
is automatically available in the binary distribution (pmd-dist).</li>
</ul>
</li>
<li>Implement a <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/cpd/CpdLexer.html#"><code>CpdLexer</code></a>.
<li>Implement a <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/cpd/CpdLexer.html#"><code>CpdLexer</code></a>.
<ul>
<li>
<p>For Antlr grammars you can take the grammar from <a href="https://github.com/antlr/grammars-v4">antlr/grammars-v4</a> and place it in <code class="language-plaintext highlighter-rouge">src/main/antlr4</code> followed by the package name of the language. You then need to call the appropriate ant wrapper to generate
the lexer from the grammar. To do so, edit <code class="language-plaintext highlighter-rouge">pom.xml</code> (eg like <a href="https://github.com/pmd/pmd/tree/master/pmd-go/pom.xml">the Golang module</a>).
Once that is done, <code class="language-plaintext highlighter-rouge">mvn generate-sources</code> should generate the lexer sources for you.</p>
<p>You can now implement a CpdLexer, for instance by extending <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/cpd/impl/AntlrCpdLexer.html#"><code>AntlrCpdLexer</code></a>. The following reproduces the Go implementation:
<p>You can now implement a CpdLexer, for instance by extending <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/cpd/impl/AntlrCpdLexer.html#"><code>AntlrCpdLexer</code></a>. The following reproduces the Go implementation:
```java
// mind the package convention if you are going to make a PR
package net.sourceforge.pmd.lang.go.cpd;</p>
@ -1949,19 +1949,19 @@ Once that is done, <code class="language-plaintext highlighter-rouge">mvn genera
<ul>
<li>If your language is case-insensitive, then you might want to overwrite <code class="language-plaintext highlighter-rouge">getImage(AntlrToken)</code>. There you can
change each token e.g. into uppercase, so that CPD sees the same strings and can find duplicates even when
the casing differs. See <a href="https://docs.pmd-code.org/apidocs/pmd-tsql/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/tsql/cpd/TSqlCpdLexer.html#"><code>TSqlCpdLexer</code></a> for an example. You will also need a
the casing differs. See <a href="https://docs.pmd-code.org/apidocs/pmd-tsql/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/tsql/cpd/TSqlCpdLexer.html#"><code>TSqlCpdLexer</code></a> for an example. You will also need a
“CaseChangingCharStream”, so that antlr itself is case-insensitive.</li>
<li>For JavaCC grammars, place your grammar in <code class="language-plaintext highlighter-rouge">etc/grammar</code> and edit the <code class="language-plaintext highlighter-rouge">pom.xml</code> like the <a href="https://github.com/pmd/pmd/blob/master/pmd-python/pom.xml">Python implementation</a> does.
You can then subclass <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/cpd/impl/JavaccCpdLexer.html#"><code>JavaccCpdLexer</code></a> instead of AntlrCpdLexer.</li>
You can then subclass <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/cpd/impl/JavaccCpdLexer.html#"><code>JavaccCpdLexer</code></a> instead of AntlrCpdLexer.</li>
<li>If your JavaCC based language is case-insensitive (option <code class="language-plaintext highlighter-rouge">IGNORE_CASE=true</code>), then you need to implement
<a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/ast/impl/javacc/JavaccTokenDocument.TokenDocumentBehavior.html#"><code>JavaccTokenDocument.TokenDocumentBehavior</code></a>, which can change each token
e.g. into uppercase. See <a href="https://docs.pmd-code.org/apidocs/pmd-plsql/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/plsql/ast/PLSQLParser.html#"><code>PLSQLParser</code></a> for an example.</li>
<a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/ast/impl/javacc/JavaccTokenDocument.TokenDocumentBehavior.html#"><code>JavaccTokenDocument.TokenDocumentBehavior</code></a>, which can change each token
e.g. into uppercase. See <a href="https://docs.pmd-code.org/apidocs/pmd-plsql/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/plsql/ast/PLSQLParser.html#"><code>PLSQLParser</code></a> for an example.</li>
<li>For any other scenario just implement the interface however you can. Look at the Scala or Apex module for existing implementations.</li>
</ul>
</li>
<li>
<p>Create a <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/Language.html#"><code>Language</code></a> implementation, and make it implement <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/cpd/CpdCapableLanguage.html#"><code>CpdCapableLanguage</code></a>.
If your language only supports CPD, then you can subclass <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/impl/CpdOnlyLanguageModuleBase.html#"><code>CpdOnlyLanguageModuleBase</code></a> to get going:</p>
<p>Create a <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/Language.html#"><code>Language</code></a> implementation, and make it implement <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/cpd/CpdCapableLanguage.html#"><code>CpdCapableLanguage</code></a>.
If your language only supports CPD, then you can subclass <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/impl/CpdOnlyLanguageModuleBase.html#"><code>CpdOnlyLanguageModuleBase</code></a> to get going:</p>
<div class="language-java highlighter-rouge"><div class="highlight"><pre class="highlight"><code> <span class="c1">// mind the package convention if you are going to make a PR</span>
<span class="kn">package</span> <span class="nn">net.sourceforge.pmd.lang.go</span><span class="o">;</span>
@ -1983,7 +1983,7 @@ If your language only supports CPD, then you can subclass <a href="https://docs.
<p>To make PMD find the language module at runtime, write the fully-qualified name of your language class into the file <code class="language-plaintext highlighter-rouge">src/main/resources/META-INF/services/net.sourceforge.pmd.lang.Language</code>.</p>
<p>At this point the new language module should be available in <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/LanguageRegistry.html#CPD"><code>CPD</code></a> and usable by CPD like any other language.</p>
<p>At this point the new language module should be available in <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/LanguageRegistry.html#CPD"><code>CPD</code></a> and usable by CPD like any other language.</p>
</li>
<li>
<p>Update the test that asserts the list of supported languages by updating the <code class="language-plaintext highlighter-rouge">SUPPORTED_LANGUAGES</code> constant in <a href="https://github.com/pmd/pmd/blob/master/pmd-dist/src/test/java/net/sourceforge/pmd/dist/BinaryDistributionIT.java">BinaryDistributionIT</a>.</p>
@ -2016,15 +2016,15 @@ There is also the following Jekyll Include, that creates summary box for the lan
<h3 id="declaring-cpdlexer-options">Declaring CpdLexer options</h3>
<p>To make the CpdLexer configurable, first define some property descriptors using
<a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/properties/PropertyFactory.html#"><code>PropertyFactory</code></a>. Look at <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/cpd/CpdLanguageProperties.html#"><code>CpdLanguageProperties</code></a>
<a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/properties/PropertyFactory.html#"><code>PropertyFactory</code></a>. Look at <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/cpd/CpdLanguageProperties.html#"><code>CpdLanguageProperties</code></a>
for some predefined ones which you can reuse (prefer reusing property descriptors if you can).
You need to override <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/Language.html#newPropertyBundle()"><code>newPropertyBundle</code></a>
You need to override <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/Language.html#newPropertyBundle()"><code>newPropertyBundle</code></a>
and call <code class="language-plaintext highlighter-rouge">definePropertyDescriptor</code> to register the descriptors.
After that you can access the values of the properties from the parameter
of <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/cpd/CpdCapableLanguage.html#createCpdTokenizer(net.sourceforge.pmd.lang.LanguagePropertyBundle)"><code>createCpdTokenizer</code></a>.</p>
of <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/cpd/CpdCapableLanguage.html#createCpdTokenizer(net.sourceforge.pmd.lang.LanguagePropertyBundle)"><code>createCpdTokenizer</code></a>.</p>
<p>To implement simple token filtering, you can use <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/cpd/impl/BaseTokenFilter.html#"><code>BaseTokenFilter</code></a>
as a base class, or another base class in <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/cpd/impl/package-summary.html#"><code>net.sourceforge.pmd.cpd.impl</code></a>.
<p>To implement simple token filtering, you can use <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/cpd/impl/BaseTokenFilter.html#"><code>BaseTokenFilter</code></a>
as a base class, or another base class in <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/cpd/impl/package-summary.html#"><code>net.sourceforge.pmd.cpd.impl</code></a>.
Take a look at the <a href="https://github.com/pmd/pmd/blob/master/pmd-kotlin/src/main/java/net/sourceforge/pmd/lang/kotlin/cpd/KotlinCpdLexer.java">Kotlin token filter implementation</a>, or the <a href="https://github.com/pmd/pmd/blob/master/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/cpd/JavaCpdLexer.java">Java one</a>.</p>
<h3 id="testing-your-implementation">Testing your implementation</h3>
@ -2032,7 +2032,7 @@ Take a look at the <a href="https://github.com/pmd/pmd/blob/master/pmd-kotlin/sr
<p>Add a Maven dependency on <code class="language-plaintext highlighter-rouge">pmd-lang-test</code> (scope <code class="language-plaintext highlighter-rouge">test</code>) in your <code class="language-plaintext highlighter-rouge">pom.xml</code>.
This contains utilities to test your CpdLexer.</p>
<p>Create a test class extending from <a href="https://docs.pmd-code.org/apidocs/pmd-lang-test/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/test/cpd/CpdTextComparisonTest.html#"><code>CpdTextComparisonTest</code></a>.
<p>Create a test class extending from <a href="https://docs.pmd-code.org/apidocs/pmd-lang-test/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/test/cpd/CpdTextComparisonTest.html#"><code>CpdTextComparisonTest</code></a>.
To add tests, you need to write regular JUnit <code class="language-plaintext highlighter-rouge">@Test</code>-annotated methods, and
call the method <code class="language-plaintext highlighter-rouge">doTest</code> with the name of the test file.</p>
@ -2119,7 +2119,7 @@ call the method <code class="language-plaintext highlighter-rouge">doTest</code>
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
June 2024 (7.3.0)<br /> Site last generated: Aug 29, 2024 <br />
June 2024 (7.3.0)<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -2059,7 +2059,7 @@ implementation that you need to extend to create your own adapter as we do with
<li>It can be used to provide other features for your language like
<ul>
<li>violation suppression logic</li>
<li><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/reporting/ViolationDecorator.html#"><code>ViolationDecorator</code></a>s, to add additional language specific information to the
<li><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/reporting/ViolationDecorator.html#"><code>ViolationDecorator</code></a>s, to add additional language specific information to the
created violations. The <a href="pmd_languages_java.html#violation-decorators">Java language module</a> uses this to
provide the method name or class name, where the violation occurred.</li>
<li>metrics</li>
@ -2240,7 +2240,7 @@ syntax tree) is not suitable to add methods such as <code class="language-plaint
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
December 2023 (7.0.0)<br /> Site last generated: Aug 29, 2024 <br />
December 2023 (7.0.0)<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1995,7 +1995,7 @@ all the available tokens in the field <code class="language-plaintext highlighte
<li>It can be used to provide other features for your language like
<ul>
<li>violation suppression logic</li>
<li><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/reporting/ViolationDecorator.html#"><code>ViolationDecorator</code></a>s, to add additional language specific information to the
<li><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/reporting/ViolationDecorator.html#"><code>ViolationDecorator</code></a>s, to add additional language specific information to the
created violations. The <a href="pmd_languages_java.html#violation-decorators">Java language module</a> uses this to
provide the method name or class name, where the violation occurred.</li>
<li>metrics (see below “Optional features”)</li>
@ -2150,7 +2150,7 @@ have more control over this, there are two annotations that can be used for AST
<ul>
<li>
<p><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/rule/xpath/DeprecatedAttribute.html#"><code>DeprecatedAttribute</code></a>: Getters might be annotated with that indicating, that
<p><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/rule/xpath/DeprecatedAttribute.html#"><code>DeprecatedAttribute</code></a>: Getters might be annotated with that indicating, that
this getter method should not be used in XPath rules. When a XPath rule uses such a method, a warning is
issued. If the method additionally has the standard Java <code class="language-plaintext highlighter-rouge">@Deprecated</code> annotation, then the getter is also
deprecated for java usage. Otherwise, the getter is only deprecated for usage in XPath rules.</p>
@ -2159,7 +2159,7 @@ deprecated for java usage. Otherwise, the getter is only deprecated for usage in
attribute <code class="language-plaintext highlighter-rouge">replaceWith</code> should be used.</p>
</li>
<li>
<p><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/rule/xpath/NoAttribute.html#"><code>NoAttribute</code></a>: This annotation can be used on an AST node type or on individual
<p><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/rule/xpath/NoAttribute.html#"><code>NoAttribute</code></a>: This annotation can be used on an AST node type or on individual
methods in order to filter out which methods are available for XPath rules.
When used on a type, either all methods can be filtered or only inherited methods (see attribute <code class="language-plaintext highlighter-rouge">scope</code>).
When used directly on an individual method, then only this method will be filtered out.
@ -2209,10 +2209,10 @@ This can be achieved with Rule Designer:</p>
<li>Create a package <code class="language-plaintext highlighter-rouge">lang.&lt;langname&gt;.metrics</code></li>
<li>Create a utility class <code class="language-plaintext highlighter-rouge">&lt;langname&gt;Metrics</code></li>
<li>Implement new metrics and add them as static constants. Be sure to document them.</li>
<li>Implement <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/LanguageVersionHandler.html#getLanguageMetricsProvider()"><code>getLanguageMetricsProvider</code></a>, to make the metrics available in the designer.</li>
<li>Implement <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/LanguageVersionHandler.html#getLanguageMetricsProvider()"><code>getLanguageMetricsProvider</code></a>, to make the metrics available in the designer.</li>
</ul>
<p>See <a href="https://docs.pmd-code.org/apidocs/pmd-java/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/java/metrics/JavaMetrics.html#"><code>JavaMetrics</code></a> for an example.</p>
<p>See <a href="https://docs.pmd-code.org/apidocs/pmd-java/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/java/metrics/JavaMetrics.html#"><code>JavaMetrics</code></a> for an example.</p>
<h3 id="symbol-table">Symbol table</h3>
@ -2230,7 +2230,7 @@ see <a href="pmd_languages_java.html">Java-specific features and guidance</a>.</
<div class="alert alert-info" role="alert"><i class="fas fa-info-circle"></i> <b>Note:</b>
With PMD 7.0.0 the symbol table and type resolution implementation has been
rewritten from scratch. There is still an old API for symbol table support, that is used by PLSQL,
see <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/symboltable/package-summary.html#"><code>net.sourceforge.pmd.lang.symboltable</code></a>. This will be deprecated and should not be used.
see <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/symboltable/package-summary.html#"><code>net.sourceforge.pmd.lang.symboltable</code></a>. This will be deprecated and should not be used.
</div>
<h3 id="type-resolution">Type resolution</h3>
@ -2303,7 +2303,7 @@ see <a href="pmd_languages_java.html">Java-specific features and guidance</a>.</
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
December 2023 (7.0.0)<br /> Site last generated: Aug 29, 2024 <br />
December 2023 (7.0.0)<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -2038,7 +2038,7 @@ non-private”).</li>
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
August, 2021<br /> Site last generated: Aug 29, 2024 <br />
August, 2021<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1955,7 +1955,7 @@ Regression difference reports are commented back to the PR for the reviewers
<div class="col-lg-12 footer">
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
Site last generated: Aug 29, 2024 <br />
Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -2076,7 +2076,7 @@ This should be configurable on per Rule basis similar to TR and SymbolTable.</p>
<div class="col-lg-12 footer">
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
Site last generated: Aug 29, 2024 <br />
Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -2046,7 +2046,7 @@ major release of PMD.</p>
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
November 15, 2019<br /> Site last generated: Aug 29, 2024 <br />
November 15, 2019<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1975,47 +1975,47 @@ all formatting inside the delimiters, and allow to write code samples without
</tr>
<tr>
<td style="text-align: left"><code class="language-plaintext highlighter-rouge">{% jdoc core::lang.rule.Rule %}</code></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/rule/Rule.html#"><code>Rule</code></a></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/rule/Rule.html#"><code>Rule</code></a></td>
</tr>
<tr>
<td style="text-align: left"><code class="language-plaintext highlighter-rouge">{% jdoc !q!core::lang.rule.Rule %}</code></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/rule/Rule.html#"><code>net.sourceforge.pmd.lang.rule.Rule</code></a></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/rule/Rule.html#"><code>net.sourceforge.pmd.lang.rule.Rule</code></a></td>
</tr>
<tr>
<td style="text-align: left"><code class="language-plaintext highlighter-rouge">{% jdoc core::lang.rule.Rule#setName(java.lang.String) %}</code></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/rule/Rule.html#setName(java.lang.String)"><code>setName</code></a></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/rule/Rule.html#setName(java.lang.String)"><code>setName</code></a></td>
</tr>
<tr>
<td style="text-align: left"><code class="language-plaintext highlighter-rouge">{% jdoc !c!core::lang.rule.Rule#setName(java.lang.String) %}</code></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/rule/Rule.html#setName(java.lang.String)"><code>Rule#setName</code></a></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/rule/Rule.html#setName(java.lang.String)"><code>Rule#setName</code></a></td>
</tr>
<tr>
<td style="text-align: left"><code class="language-plaintext highlighter-rouge">{% jdoc !a!core::lang.rule.Rule#setName(java.lang.String) %}</code></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/rule/Rule.html#setName(java.lang.String)"><code>setName(String)</code></a></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/rule/Rule.html#setName(java.lang.String)"><code>setName(String)</code></a></td>
</tr>
<tr>
<td style="text-align: left"><code class="language-plaintext highlighter-rouge">{% jdoc !ac!core::lang.rule.Rule#setName(java.lang.String) %}</code></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/rule/Rule.html#setName(java.lang.String)"><code>Rule#setName(String)</code></a></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/rule/Rule.html#setName(java.lang.String)"><code>Rule#setName(String)</code></a></td>
</tr>
<tr>
<td style="text-align: left"><code class="language-plaintext highlighter-rouge">{% jdoc core::properties.PropertyDescriptor %}</code></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/properties/PropertyDescriptor.html#"><code>PropertyDescriptor</code></a></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/properties/PropertyDescriptor.html#"><code>PropertyDescriptor</code></a></td>
</tr>
<tr>
<td style="text-align: left"><code class="language-plaintext highlighter-rouge">{% jdoc_nspace :jast java::lang.java.ast %}{% jdoc jast::ASTTypeDeclaration %}</code></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-java/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/java/ast/ASTTypeDeclaration.html#"><code>ASTTypeDeclaration</code></a></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-java/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/java/ast/ASTTypeDeclaration.html#"><code>ASTTypeDeclaration</code></a></td>
</tr>
<tr>
<td style="text-align: left"><code class="language-plaintext highlighter-rouge">{% jdoc_nspace :jast java::lang.java.ast %}{% jdoc_package :jast %}</code></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-java/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/java/ast/package-summary.html#"><code>net.sourceforge.pmd.lang.java.ast</code></a></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-java/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/java/ast/package-summary.html#"><code>net.sourceforge.pmd.lang.java.ast</code></a></td>
</tr>
<tr>
<td style="text-align: left"><code class="language-plaintext highlighter-rouge">{% jdoc_nspace :PrD core::properties.PropertyDescriptor %}{% jdoc !ac!:PrD#uiOrder() %}</code></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/properties/PropertyDescriptor.html#uiOrder()"><code>PropertyDescriptor#uiOrder()</code></a></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/properties/PropertyDescriptor.html#uiOrder()"><code>PropertyDescriptor#uiOrder()</code></a></td>
</tr>
<tr>
<td style="text-align: left"><code class="language-plaintext highlighter-rouge">{% jdoc_old core::Rule %}</code></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.4.0/net/sourceforge/pmd/Rule.html#"><code>Rule</code></a></td>
<td style="text-align: left"><a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0/net/sourceforge/pmd/Rule.html#"><code>Rule</code></a></td>
</tr>
</tbody>
</table>
@ -2192,7 +2192,7 @@ by specifying <code class="language-plaintext highlighter-rouge">-Dpmd.doc.check
<div class="col-lg-12 footer">
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
Site last generated: Aug 29, 2024 <br />
Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1916,7 +1916,7 @@ transaction control statements on the Salesforce Platform server, in conjunction
<div class="card">
<ul class="list-group list-group-flush">
<li class="list-group-item">Since PMD 5.5.0</li>
<li class="list-group-item">Implementation: <a href="https://docs.pmd-code.org/apidocs/pmd-apex/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/apex/ApexLanguageModule.html#"><code>ApexLanguageModule</code></a></li>
<li class="list-group-item">Implementation: <a href="https://docs.pmd-code.org/apidocs/pmd-apex/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/apex/ApexLanguageModule.html#"><code>ApexLanguageModule</code></a></li>
<li class="list-group-item">Id: apex</li>
<li class="list-group-item">PMD: ✔️</li>
<li class="list-group-item">CPD: ✔️</li>
@ -1926,12 +1926,12 @@ transaction control statements on the Salesforce Platform server, in conjunction
<h2 id="metrics-framework">Metrics framework</h2>
<p>In order to use code metrics in Apex, use the metrics constants in <a href="https://docs.pmd-code.org/apidocs/pmd-apex/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/apex/metrics/ApexMetrics.html#"><code>ApexMetrics</code></a>,
together with <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/metrics/MetricsUtil.html#"><code>MetricsUtil</code></a>.</p>
<p>In order to use code metrics in Apex, use the metrics constants in <a href="https://docs.pmd-code.org/apidocs/pmd-apex/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/apex/metrics/ApexMetrics.html#"><code>ApexMetrics</code></a>,
together with <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/metrics/MetricsUtil.html#"><code>MetricsUtil</code></a>.</p>
<h2 id="multifile-analysis">Multifile Analysis</h2>
<p>Integration happens in <a href="https://docs.pmd-code.org/apidocs/pmd-apex/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/apex/multifile/ApexMultifileAnalysis.html#"><code>ApexMultifileAnalysis</code></a>. It uses
<p>Integration happens in <a href="https://docs.pmd-code.org/apidocs/pmd-apex/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/apex/multifile/ApexMultifileAnalysis.html#"><code>ApexMultifileAnalysis</code></a>. It uses
<a href="https://github.com/nawforce/apex-link">ApexLink</a>. For detailed information, see also <a href="https://github.com/pmd/pmd/pull/2830">Apexlink POC #2830</a>.</p>
<div class="alert alert-info" role="alert"><i class="fas fa-info-circle"></i> <b>Note:</b> ApexLinks new home: <a href="https://github.com/apex-dev-tools">https://github.com/apex-dev-tools</a></div>
@ -1997,7 +1997,7 @@ and generate an AST. This library is however a binary-blob provided as part of t
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
September 2023 (7.0.0)<br /> Site last generated: Aug 29, 2024 <br />
September 2023 (7.0.0)<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1915,7 +1915,7 @@ It is part of the Coco Platform from <a href="https://cocotec.io/">https://cocot
<div class="card">
<ul class="list-group list-group-flush">
<li class="list-group-item">Since PMD 7.0.0</li>
<li class="list-group-item">Implementation: <a href="https://docs.pmd-code.org/apidocs/pmd-coco/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/coco/CocoLanguageModule.html#"><code>CocoLanguageModule</code></a></li>
<li class="list-group-item">Implementation: <a href="https://docs.pmd-code.org/apidocs/pmd-coco/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/coco/CocoLanguageModule.html#"><code>CocoLanguageModule</code></a></li>
<li class="list-group-item">Id: coco</li>
<li class="list-group-item">PMD: ❌</li>
<li class="list-group-item">CPD: ✔️</li>
@ -1972,7 +1972,7 @@ It is part of the Coco Platform from <a href="https://cocotec.io/">https://cocot
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
September 2023 (7.0.0)<br /> Site last generated: Aug 29, 2024 <br />
September 2023 (7.0.0)<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1923,7 +1923,7 @@ completely in uppercase:</p>
<p>Properties whose name start with <strong>CPD</strong> are used to configure CPD CpdLexer options.</p>
<p>Programmatically, the language properties can be set on <code class="language-plaintext highlighter-rouge">PMDConfiguration</code> (or <code class="language-plaintext highlighter-rouge">CPDConfiguration</code>) before using the
<a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/PmdAnalysis.html#"><code>PmdAnalysis</code></a> (or <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/cpd/CpdAnalysis.html#"><code>CpdAnalysis</code></a>) instance
<a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/PmdAnalysis.html#"><code>PmdAnalysis</code></a> (or <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/cpd/CpdAnalysis.html#"><code>CpdAnalysis</code></a>) instance
to start the analysis:</p>
<div class="language-java highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nc">PMDConfiguration</span> <span class="n">configuration</span> <span class="o">=</span> <span class="k">new</span> <span class="nc">PMDConfiguration</span><span class="o">();</span>
@ -1953,7 +1953,7 @@ version of the language will be used.</p>
<h2 id="cpd-language-properties">CPD language properties</h2>
<p>Many languages support the following properties, which are centrally defined in <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/cpd/CpdLanguageProperties.html#"><code>CpdLanguageProperties</code></a>:</p>
<p>Many languages support the following properties, which are centrally defined in <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/cpd/CpdLanguageProperties.html#"><code>CpdLanguageProperties</code></a>:</p>
<ul>
<li>
@ -1990,8 +1990,8 @@ appear to have the same value.</p>
</li>
</ul>
<p>Note: <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/cpd/CPDConfiguration.html#"><code>CPDConfiguration</code></a> has convenience methods to control these options, e.g.
<a href="https://docs.pmd-code.org/apidocs/pmd-core/7.5.0-SNAPSHOT/net/sourceforge/pmd/cpd/CPDConfiguration.html#setIgnoreAnnotations(boolean)"><code>setIgnoreAnnotations</code></a>.</p>
<p>Note: <a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/cpd/CPDConfiguration.html#"><code>CPDConfiguration</code></a> has convenience methods to control these options, e.g.
<a href="https://docs.pmd-code.org/apidocs/pmd-core/7.6.0-SNAPSHOT/net/sourceforge/pmd/cpd/CPDConfiguration.html#setIgnoreAnnotations(boolean)"><code>setIgnoreAnnotations</code></a>.</p>
<h2 id="java-language-properties">Java language properties</h2>
@ -2100,7 +2100,7 @@ that is conditionally compiled out. Set this property to empty to disable this.<
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
August 2024 (7.5.0)<br /> Site last generated: Aug 29, 2024 <br />
August 2024 (7.5.0)<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1910,7 +1910,7 @@
<div class="card">
<ul class="list-group list-group-flush">
<li class="list-group-item">Since PMD 3.5</li>
<li class="list-group-item">Implementation: <a href="https://docs.pmd-code.org/apidocs/pmd-cpp/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/cpp/CppLanguageModule.html#"><code>CppLanguageModule</code></a></li>
<li class="list-group-item">Implementation: <a href="https://docs.pmd-code.org/apidocs/pmd-cpp/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/cpp/CppLanguageModule.html#"><code>CppLanguageModule</code></a></li>
<li class="list-group-item">Id: cpp</li>
<li class="list-group-item">PMD: ❌</li>
<li class="list-group-item">CPD: ✔️</li>
@ -1963,7 +1963,7 @@
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
September 2023 (7.0.0)<br /> Site last generated: Aug 29, 2024 <br />
September 2023 (7.0.0)<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1910,7 +1910,7 @@
<div class="card">
<ul class="list-group list-group-flush">
<li class="list-group-item">Since PMD 4.3</li>
<li class="list-group-item">Implementation: <a href="https://docs.pmd-code.org/apidocs/pmd-cs/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/cs/CsLanguageModule.html#"><code>CsLanguageModule</code></a></li>
<li class="list-group-item">Implementation: <a href="https://docs.pmd-code.org/apidocs/pmd-cs/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/cs/CsLanguageModule.html#"><code>CsLanguageModule</code></a></li>
<li class="list-group-item">Id: cs</li>
<li class="list-group-item">PMD: ❌</li>
<li class="list-group-item">CPD: ✔️</li>
@ -1960,7 +1960,7 @@
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
September 2023 (7.0.0)<br /> Site last generated: Aug 29, 2024 <br />
September 2023 (7.0.0)<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1914,7 +1914,7 @@
<div class="card">
<ul class="list-group list-group-flush">
<li class="list-group-item">Since PMD 6.14.0</li>
<li class="list-group-item">Implementation: <a href="https://docs.pmd-code.org/apidocs/pmd-dart/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/dart/DartLanguageModule.html#"><code>DartLanguageModule</code></a></li>
<li class="list-group-item">Implementation: <a href="https://docs.pmd-code.org/apidocs/pmd-dart/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/dart/DartLanguageModule.html#"><code>DartLanguageModule</code></a></li>
<li class="list-group-item">Id: dart</li>
<li class="list-group-item">PMD: ❌</li>
<li class="list-group-item">CPD: ✔️</li>
@ -1964,7 +1964,7 @@
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
September 2023 (7.0.0)<br /> Site last generated: Aug 29, 2024 <br />
September 2023 (7.0.0)<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1910,7 +1910,7 @@
<div class="card">
<ul class="list-group list-group-flush">
<li class="list-group-item">Implementation: <a href="https://docs.pmd-code.org/apidocs/pmd-fortran/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/fortran/FortranLanguageModule.html#"><code>FortranLanguageModule</code></a></li>
<li class="list-group-item">Implementation: <a href="https://docs.pmd-code.org/apidocs/pmd-fortran/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/fortran/FortranLanguageModule.html#"><code>FortranLanguageModule</code></a></li>
<li class="list-group-item">Id: fortran</li>
<li class="list-group-item">PMD: ❌</li>
<li class="list-group-item">CPD: ✔️</li>
@ -1960,7 +1960,7 @@
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
September 2023 (7.0.0)<br /> Site last generated: Aug 29, 2024 <br />
September 2023 (7.0.0)<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1914,7 +1914,7 @@ The Gherkin syntax is designed to be non-technical, making it human-readable for
<div class="card">
<ul class="list-group list-group-flush">
<li class="list-group-item">Since PMD 6.48.0</li>
<li class="list-group-item">Implementation: <a href="https://docs.pmd-code.org/apidocs/pmd-gherkin/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/gherkin/GherkinLanguageModule.html#"><code>GherkinLanguageModule</code></a></li>
<li class="list-group-item">Implementation: <a href="https://docs.pmd-code.org/apidocs/pmd-gherkin/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/gherkin/GherkinLanguageModule.html#"><code>GherkinLanguageModule</code></a></li>
<li class="list-group-item">Id: gherkin</li>
<li class="list-group-item">PMD: ❌</li>
<li class="list-group-item">CPD: ✔️</li>
@ -1973,7 +1973,7 @@ languages, CPD currently supports only the English version of the Gherkin langua
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
September 2023 (7.0.0)<br /> Site last generated: Aug 29, 2024 <br />
September 2023 (7.0.0)<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

View File

@ -85,8 +85,8 @@
<ul id="mysidebar" class="nav">
<li class="sidebarTitle">PMD 7.5.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 30-August-2024</div>
<li class="sidebarTitle">PMD 7.6.0-SNAPSHOT</li>
<div class="sidebarTitleDate">Release date: 27-September-2024</div>
@ -1914,7 +1914,7 @@
<div class="card">
<ul class="list-group list-group-flush">
<li class="list-group-item">Since PMD 5.2.0</li>
<li class="list-group-item">Implementation: <a href="https://docs.pmd-code.org/apidocs/pmd-go/7.5.0-SNAPSHOT/net/sourceforge/pmd/lang/go/GoLanguageModule.html#"><code>GoLanguageModule</code></a></li>
<li class="list-group-item">Implementation: <a href="https://docs.pmd-code.org/apidocs/pmd-go/7.6.0-SNAPSHOT/net/sourceforge/pmd/lang/go/GoLanguageModule.html#"><code>GoLanguageModule</code></a></li>
<li class="list-group-item">Id: go</li>
<li class="list-group-item">PMD: ❌</li>
<li class="list-group-item">CPD: ✔️</li>
@ -1964,7 +1964,7 @@
&copy;2024 PMD Open Source Project. All rights
reserved. <br />
<span>Page last updated:</span>
September 2023 (7.0.0)<br /> Site last generated: Aug 29, 2024 <br />
September 2023 (7.0.0)<br /> Site last generated: Aug 30, 2024 <br />
<p>
<img src="images/logo/pmd-logo-70px.png" alt="PMD
logo"/>

Some files were not shown because too many files have changed in this diff Show More