<?xml version="1.0"?>
<ruleset name="Mess detection rules for Carbon"
         xmlns="http://pmd.sf.net/ruleset/1.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0
                     http://pmd.sf.net/ruleset_xml_schema.xsd"
         xsi:noNamespaceSchemaLocation="
                     http://pmd.sf.net/ruleset_xml_schema.xsd">
    <description>
        Mess detection rules for Carbon
    </description>
    <rule ref="rulesets/codesize.xml">
        <exclude name="CyclomaticComplexity" />
        <exclude name="NPathComplexity" />
        <exclude name="ExcessiveMethodLength" />
        <exclude name="ExcessiveClassLength" />
        <exclude name="ExcessivePublicCount" />
        <exclude name="TooManyMethods" />
        <exclude name="TooManyPublicMethods" />
        <exclude name="ExcessiveClassComplexity" />
    </rule>
    <rule ref="rulesets/cleancode.xml">
        <exclude name="BooleanArgumentFlag" />
        <exclude name="StaticAccess" />
        <exclude name="IfStatementAssignment" />
        <exclude name="UndefinedVariable" />
        <exclude name="ErrorControlOperator" />
    </rule>
    <rule ref="rulesets/controversial.xml" />
    <rule ref="rulesets/design.xml">
        <exclude name="EvalExpression" />
        <exclude name="CouplingBetweenObjects" />
        <exclude name="CountInLoopExpression" />
    </rule>
    <rule ref="rulesets/design.xml/CouplingBetweenObjects">
        <properties>
            <property name="maximum" value="25" />
        </properties>
    </rule>
    <rule ref="rulesets/naming.xml/ShortVariable">
        <properties>
            <property name="exceptions" value="ci,id,to,tz" />
        </properties>
    </rule>
    <rule ref="rulesets/unusedcode.xml" />
</ruleset>
