本文整理了Java中net.sourceforge.pmd.Rule.getLanguage
方法的一些代码示例,展示了Rule.getLanguage
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Rule.getLanguage
方法的具体详情如下:
包路径:net.sourceforge.pmd.Rule
类名称:Rule
方法名:getLanguage
[英]Get the Language of this Rule.
[中]获取此规则的语言。
代码示例来源:origin: pmd/pmd
@Override
public Language getLanguage() {
return rule.getLanguage();
}
代码示例来源:origin: pmd/pmd
public TestDescriptor(String code, String description, int numberOfProblemsExpected, Rule rule) {
this(code, description, numberOfProblemsExpected, rule, rule.getLanguage().getDefaultVersion());
}
代码示例来源:origin: pmd/pmd
/**
* Does any Rule for the given Language use Type Resolution?
*
* @param language
* The Language.
* @return <code>true</code> if a Rule for the Language uses Type
* Resolution, <code>false</code> otherwise.
* @deprecated See {@link Rule#isTypeResolution()}
*/
@Deprecated
public boolean usesTypeResolution(Language language) {
for (Rule r : rules) {
if (r.getLanguage().equals(language) && r.isTypeResolution()) {
return true;
}
}
return false;
}
代码示例来源:origin: pmd/pmd
/**
* Does any Rule for the given Language use the DFA layer?
*
* @param language
* The Language.
* @return <code>true</code> if a Rule for the Language uses the DFA layer,
* <code>false</code> otherwise.
* @deprecated See {@link Rule#isDfa()}
*/
@Deprecated
public boolean usesDFA(Language language) {
for (Rule r : rules) {
if (r.getLanguage().equals(language) && r.isDfa()) {
return true;
}
}
return false;
}
代码示例来源:origin: pmd/pmd
/**
* Does any Rule for the given Language use multi-file analysis?
*
* @param language
* The Language.
*
* @return {@code true} if a Rule for the Language uses multi file analysis,
* {@code false} otherwise.
* @deprecated See {@link Rule#isMultifile()}
*/
@Deprecated
public boolean usesMultifile(Language language) {
for (Rule r : rules) {
if (r.getLanguage().equals(language) && r.isMultifile()) {
return true;
}
}
return false;
}
代码示例来源:origin: pmd/pmd
/**
* Rulesets could potentially contain rules from various languages.
* But for built-in rulesets, all rules within one ruleset belong to
* one language. So we take the language of the first rule.
* @param ruleset
* @return the terse name of the ruleset's language
*/
private static Language getRuleSetLanguage(RuleSet ruleset) {
Collection<Rule> rules = ruleset.getRules();
if (rules.isEmpty()) {
throw new RuntimeException("Ruleset " + ruleset.getFileName() + " is empty!");
}
return rules.iterator().next().getLanguage();
}
代码示例来源:origin: pmd/pmd
/**
* Adds a rule. If a rule with the same name and language already
* existed before in the ruleset, then the new rule will replace it.
* This makes sure that the rule configured is overridden.
*
* @param rule
* the new rule to add
* @return The same builder, for a fluid programming interface
*/
public RuleSetBuilder addRuleReplaceIfExists(final Rule rule) {
if (rule == null) {
throw new IllegalArgumentException(MISSING_RULE);
}
for (final Iterator<Rule> it = rules.iterator(); it.hasNext();) {
final Rule r = it.next();
if (r.getName().equals(rule.getName()) && r.getLanguage() == rule.getLanguage()) {
it.remove();
}
}
addRule(rule);
return this;
}
代码示例来源:origin: pmd/pmd
/**
* Add a new rule to this ruleset. Note that this method does not check
* for duplicates.
*
* @param newRule
* the rule to be added
* @return The same builder, for a fluid programming interface
*/
public RuleSetBuilder addRule(final Rule newRule) {
if (newRule == null) {
throw new IllegalArgumentException(MISSING_RULE);
}
// check for duplicates - adding more than one rule with the same name will
// be problematic - see #RuleSet.getRuleByName(String)
for (Rule rule : rules) {
if (rule.getName().equals(newRule.getName()) && rule.getLanguage() == newRule.getLanguage()) {
LOG.warning("The rule with name " + newRule.getName() + " is duplicated. "
+ "Future versions of PMD will reject to load such rulesets.");
break;
}
}
rules.add(newRule);
return this;
}
代码示例来源:origin: pmd/pmd
/**
* Add the given Rule if it wants to participate in the RuleChain.
*
* @param ruleSet
* The RuleSet to which the rule belongs.
* @param rule
* The Rule to add.
*/
private void add(RuleSet ruleSet, Rule rule) {
RuleChainVisitor visitor = getRuleChainVisitor(rule.getLanguage());
if (visitor != null) {
visitor.add(ruleSet, rule);
}
}
代码示例来源:origin: pmd/pmd
if (r.getName().equals(rule.getName()) && r.getLanguage() == rule.getLanguage()) {
exists = true;
break;
代码示例来源:origin: pmd/pmd
private static Set<Language> getApplicableLanguages(PMDConfiguration configuration, RuleSets ruleSets) {
Set<Language> languages = new HashSet<>();
LanguageVersionDiscoverer discoverer = configuration.getLanguageVersionDiscoverer();
for (Rule rule : ruleSets.getAllRules()) {
Language language = rule.getLanguage();
if (languages.contains(language)) {
continue;
}
LanguageVersion version = discoverer.getDefaultLanguageVersion(language);
if (RuleSet.applies(rule, version)) {
languages.add(language);
if (LOG.isLoggable(Level.FINE)) {
LOG.fine("Using " + language.getShortName() + " version: " + version.getShortName());
}
}
}
return languages;
}
代码示例来源:origin: pmd/pmd
private void loadLanguageMinMaxVersions(Rule rule) {
if (minimumVersion != null) {
LanguageVersion minimumLanguageVersion = rule.getLanguage().getVersion(minimumVersion);
if (minimumLanguageVersion == null) {
throwUnknownLanguageVersionException("minimum", minimumVersion);
} else {
rule.setMinimumLanguageVersion(minimumLanguageVersion);
}
}
if (maximumVersion != null) {
LanguageVersion maximumLanguageVersion = rule.getLanguage().getVersion(maximumVersion);
if (maximumLanguageVersion == null) {
throwUnknownLanguageVersionException("maximum", maximumVersion);
} else {
rule.setMaximumLanguageVersion(maximumLanguageVersion);
}
}
checkLanguageVersionsAreOrdered(rule);
}
代码示例来源:origin: pmd/pmd
/**
* Does the given Rule apply to the given LanguageVersion? If so, the
* Language must be the same and be between the minimum and maximums
* versions on the Rule.
*
* @param rule
* The rule.
* @param languageVersion
* The language version.
*
* @return <code>true</code> if the given rule matches the given language,
* which means, that the rule would be executed.
*/
public static boolean applies(Rule rule, LanguageVersion languageVersion) {
final LanguageVersion min = rule.getMinimumLanguageVersion();
final LanguageVersion max = rule.getMaximumLanguageVersion();
return rule.getLanguage().equals(languageVersion.getLanguage())
&& (min == null || min.compareTo(languageVersion) <= 0)
&& (max == null || max.compareTo(languageVersion) >= 0);
}
代码示例来源:origin: pmd/pmd
+ rule.getLanguage().getName() + " " + rule.getMinimumLanguageVersion().getVersion());
lines.add("");
代码示例来源:origin: pmd/pmd
rule.setRuleClass(clazz);
if (rule.getLanguage() == null) {
rule.setLanguage(language);
代码示例来源:origin: pmd/pmd
Language language = rule.getLanguage();
String group = fileName.substring(fileName.lastIndexOf('/') + 1);
group = group.substring(0, group.indexOf(".xml"));
代码示例来源:origin: pmd/pmd
return createSingleRuleElement(rule instanceof ImmutableLanguage ? null : rule.getLanguage(),
rule.getMinimumLanguageVersion(), rule.getMaximumLanguageVersion(), rule.isDeprecated(),
rule.getName(), rule.getSince(), null, rule.getMessage(), rule.getExternalInfoUrl(),
代码示例来源:origin: net.sourceforge.pmd/pmd-core
@Override
public Language getLanguage() {
return rule.getLanguage();
}
代码示例来源:origin: net.sourceforge.pmd/pmd-test
public TestDescriptor(String code, String description, int numberOfProblemsExpected, Rule rule) {
this(code, description, numberOfProblemsExpected, rule, rule.getLanguage().getDefaultVersion());
}
代码示例来源:origin: net.sourceforge.pmd/pmd-core
/**
* Add the given Rule if it wants to participate in the RuleChain.
*
* @param ruleSet
* The RuleSet to which the rule belongs.
* @param rule
* The Rule to add.
*/
private void add(RuleSet ruleSet, Rule rule) {
RuleChainVisitor visitor = getRuleChainVisitor(rule.getLanguage());
if (visitor != null) {
visitor.add(ruleSet, rule);
}
}
内容来源于网络,如有侵权,请联系作者删除!