Package net.sourceforge.pmd.lang
Class BaseLanguageModule
- java.lang.Object
-
- net.sourceforge.pmd.lang.BaseLanguageModule
-
- All Implemented Interfaces:
Comparable<Language>,Language
public abstract class BaseLanguageModule extends Object implements Language
Created by christoferdutz on 21.09.14.
-
-
Field Summary
Fields Modifier and Type Field Description protected LanguageVersiondefaultVersionprotected List<String>extensionsprotected Stringnameprotected Class<?>ruleChainVisitorClassprotected StringshortNameprotected StringterseNameprotected Map<String,LanguageVersion>versions-
Fields inherited from interface net.sourceforge.pmd.lang.Language
LANGUAGE_MODULES_CLASS_NAMES_PROPERTY
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidaddVersion(String version, LanguageVersionHandler languageVersionHandler, boolean isDefault)protected voidaddVersions(LanguageVersionHandler languageVersionHandler, boolean isDefault, String... languageVersions)intcompareTo(Language o)booleanequals(Object obj)LanguageVersiongetDefaultVersion()Get the current PMD defined default LanguageVersion for this Language.List<String>getExtensions()Get the list of file extensions associated with this Language.StringgetName()Get the full name of this Language.Class<?>getRuleChainVisitorClass()Get the RuleChainVisitor implementation class used when visiting the AST structure for this Rules for this Language.StringgetShortName()Get the short name of this Language.StringgetTerseName()Get the terse name of this Language.LanguageVersiongetVersion(String versionName)Get the LanguageVersion for the version string from this Language.List<LanguageVersion>getVersions()Gets the list of supported LanguageVersion for this Language.booleanhasExtension(String extension)Returns whether the given Language handles the given file extension.inthashCode()booleanhasVersion(String version)StringtoString()
-
-
-
Field Detail
-
name
protected String name
-
shortName
protected String shortName
-
terseName
protected String terseName
-
ruleChainVisitorClass
protected Class<?> ruleChainVisitorClass
-
versions
protected Map<String,LanguageVersion> versions
-
defaultVersion
protected LanguageVersion defaultVersion
-
-
Method Detail
-
addVersions
@Experimental protected void addVersions(LanguageVersionHandler languageVersionHandler, boolean isDefault, String... languageVersions)
-
addVersion
protected void addVersion(String version, LanguageVersionHandler languageVersionHandler, boolean isDefault)
-
getName
public String getName()
Description copied from interface:LanguageGet the full name of this Language. This is generally the name of this Language without the use of acronyms.
-
getShortName
public String getShortName()
Description copied from interface:LanguageGet the short name of this Language. This is the commonly used short form of this Language's name, perhaps an acronym.- Specified by:
getShortNamein interfaceLanguage- Returns:
- The short name of this Language.
-
getTerseName
public String getTerseName()
Description copied from interface:LanguageGet the terse name of this Language. This is used for Rule configuration.- Specified by:
getTerseNamein interfaceLanguage- Returns:
- The terse name of this Language.
-
getRuleChainVisitorClass
public Class<?> getRuleChainVisitorClass()
Description copied from interface:LanguageGet the RuleChainVisitor implementation class used when visiting the AST structure for this Rules for this Language.- Specified by:
getRuleChainVisitorClassin interfaceLanguage- Returns:
- The RuleChainVisitor class.
- See Also:
RuleChainVisitor
-
getExtensions
public List<String> getExtensions()
Description copied from interface:LanguageGet the list of file extensions associated with this Language.- Specified by:
getExtensionsin interfaceLanguage- Returns:
- List of file extensions.
-
hasExtension
public boolean hasExtension(String extension)
Description copied from interface:LanguageReturns whether the given Language handles the given file extension. The comparison is done ignoring case.- Specified by:
hasExtensionin interfaceLanguage- Parameters:
extension- A file extension.- Returns:
trueif this Language handles this extension,falseotherwise.
-
getVersions
public List<LanguageVersion> getVersions()
Description copied from interface:LanguageGets the list of supported LanguageVersion for this Language.- Specified by:
getVersionsin interfaceLanguage- Returns:
- The LanguageVersion for this Language.
-
hasVersion
public boolean hasVersion(String version)
- Specified by:
hasVersionin interfaceLanguage
-
getVersion
public LanguageVersion getVersion(String versionName)
Description copied from interface:LanguageGet the LanguageVersion for the version string from this Language.- Specified by:
getVersionin interfaceLanguage- Parameters:
versionName- The language version string.- Returns:
- The corresponding LanguageVersion,
nullif the version string is not recognized.
-
getDefaultVersion
public LanguageVersion getDefaultVersion()
Description copied from interface:LanguageGet the current PMD defined default LanguageVersion for this Language. This is an arbitrary choice made by the PMD product, and can change between PMD releases. Every Language has a default version.- Specified by:
getDefaultVersionin interfaceLanguage- Returns:
- The current default LanguageVersion for this Language.
-
compareTo
public int compareTo(Language o)
- Specified by:
compareToin interfaceComparable<Language>
-
-