<ruleset xmlns="http://codenarc.org/ruleset/1.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://codenarc.org/ruleset/1.0 http://codenarc.org/ruleset-schema.xsd"
        xsi:noNamespaceSchemaLocation="http://codenarc.org/ruleset-schema.xsd">

    <description>
        Design rule set.
        These rules implement standards and best practices related to design issues.
    </description>

    <rule class='org.codenarc.rule.design.AbstractClassWithoutAbstractMethodRule'/>
    <rule class='org.codenarc.rule.design.AbstractClassWithPublicConstructorRule'/>
    <rule class='org.codenarc.rule.design.BooleanMethodReturnsNullRule'/>
    <rule class='org.codenarc.rule.design.CloneableWithoutCloneRule'/>
    <rule class='org.codenarc.rule.design.CloseWithoutCloseableRule'/>
    <rule class='org.codenarc.rule.design.CompareToWithoutComparableRule'/>
    <rule class='org.codenarc.rule.design.ConstantsOnlyInterfaceRule'/>
    <rule class='org.codenarc.rule.design.EmptyMethodInAbstractClassRule'/>
    <rule class='org.codenarc.rule.design.FinalClassWithProtectedMemberRule'/>
    <rule class='org.codenarc.rule.design.ImplementationAsTypeRule'/>
    <rule class='org.codenarc.rule.design.PublicInstanceFieldRule'/>
    <rule class='org.codenarc.rule.design.PrivateFieldCouldBeFinalRule'/>
    <rule class='org.codenarc.rule.design.ReturnsNullInsteadOfEmptyArrayRule'/>
    <rule class='org.codenarc.rule.design.ReturnsNullInsteadOfEmptyCollectionRule'/>
    <rule class='org.codenarc.rule.design.SimpleDateFormatMissingLocaleRule'/>
    <rule class='org.codenarc.rule.design.StatelessSingletonRule'/>
    <rule class='org.codenarc.rule.design.BuilderMethodWithSideEffectsRule'/>
</ruleset>