xref: /aosp_15_r20/external/ow2-asm/tools/checkstyle.xml (revision 2835e6bb194a25e32dae2cc0628d8f988b82bfc0)
1*2835e6bbSSorin Basca<?xml version="1.0"?>
2*2835e6bbSSorin Basca<!DOCTYPE module PUBLIC
3*2835e6bbSSorin Basca          "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN"
4*2835e6bbSSorin Basca          "https://checkstyle.org/dtds/configuration_1_3.dtd">
5*2835e6bbSSorin Basca
6*2835e6bbSSorin Basca<module name="Checker">
7*2835e6bbSSorin Basca  <property name="charset" value="UTF-8" />
8*2835e6bbSSorin Basca  <property name="severity" value="warning" />
9*2835e6bbSSorin Basca  <property name="fileExtensions" value="java" />
10*2835e6bbSSorin Basca  <module name="TreeWalker">
11*2835e6bbSSorin Basca    <!-- Modules for the Google Java Style guide (expect those covered by google-java-format). -->
12*2835e6bbSSorin Basca    <module name="OuterTypeFilename" />
13*2835e6bbSSorin Basca    <module name="IllegalTokenText">
14*2835e6bbSSorin Basca      <property name="tokens" value="STRING_LITERAL, CHAR_LITERAL" />
15*2835e6bbSSorin Basca      <property name="format"
16*2835e6bbSSorin Basca        value="\\u00(09|0(a|A)|0(c|C)|0(d|D)|22|27|5(C|c))|\\(0(10|11|12|14|15|42|47)|134)" />
17*2835e6bbSSorin Basca      <property name="message"
18*2835e6bbSSorin Basca        value="Use special escape sequence instead of octal value or Unicode escaped value." />
19*2835e6bbSSorin Basca    </module>
20*2835e6bbSSorin Basca    <module name="AvoidEscapedUnicodeCharacters">
21*2835e6bbSSorin Basca      <property name="allowEscapesForControlCharacters" value="true" />
22*2835e6bbSSorin Basca      <property name="allowByTailComment" value="true" />
23*2835e6bbSSorin Basca      <property name="allowNonPrintableEscapes" value="true" />
24*2835e6bbSSorin Basca    </module>
25*2835e6bbSSorin Basca    <module name="AvoidStarImport" />
26*2835e6bbSSorin Basca    <module name="OneTopLevelClass" />
27*2835e6bbSSorin Basca    <module name="EmptyBlock">
28*2835e6bbSSorin Basca      <property name="option" value="TEXT" />
29*2835e6bbSSorin Basca      <property name="tokens"
30*2835e6bbSSorin Basca        value="LITERAL_TRY, LITERAL_FINALLY, LITERAL_IF, LITERAL_ELSE, LITERAL_SWITCH" />
31*2835e6bbSSorin Basca    </module>
32*2835e6bbSSorin Basca    <module name="NeedBraces" />
33*2835e6bbSSorin Basca    <module name="MultipleVariableDeclarations" />
34*2835e6bbSSorin Basca    <module name="ArrayTypeStyle" />
35*2835e6bbSSorin Basca    <module name="MissingSwitchDefault" />
36*2835e6bbSSorin Basca    <module name="FallThrough" />
37*2835e6bbSSorin Basca    <module name="UpperEll" />
38*2835e6bbSSorin Basca    <module name="PackageName">
39*2835e6bbSSorin Basca      <property name="format" value="^[a-z]+(\.[a-z][a-z0-9]*)*$" />
40*2835e6bbSSorin Basca    </module>
41*2835e6bbSSorin Basca    <module name="TypeName" />
42*2835e6bbSSorin Basca    <module name="MemberName">
43*2835e6bbSSorin Basca      <property name="format" value="^[a-z][a-z0-9][a-zA-Z0-9]*$" />
44*2835e6bbSSorin Basca    </module>
45*2835e6bbSSorin Basca    <module name="ParameterName">
46*2835e6bbSSorin Basca      <property name="format" value="^[a-z]([a-z0-9][a-zA-Z0-9]*)?$" />
47*2835e6bbSSorin Basca    </module>
48*2835e6bbSSorin Basca    <module name="LambdaParameterName">
49*2835e6bbSSorin Basca      <property name="format" value="^[a-z]([a-z0-9][a-zA-Z0-9]*)?$" />
50*2835e6bbSSorin Basca    </module>
51*2835e6bbSSorin Basca    <module name="CatchParameterName">
52*2835e6bbSSorin Basca      <property name="format" value="^[a-z]([a-z0-9][a-zA-Z0-9]*)?$" />
53*2835e6bbSSorin Basca    </module>
54*2835e6bbSSorin Basca    <module name="LocalVariableName">
55*2835e6bbSSorin Basca      <property name="format" value="^[a-z]([a-z0-9][a-zA-Z0-9]*)?$" />
56*2835e6bbSSorin Basca    </module>
57*2835e6bbSSorin Basca    <module name="ClassTypeParameterName">
58*2835e6bbSSorin Basca      <property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)" />
59*2835e6bbSSorin Basca    </module>
60*2835e6bbSSorin Basca    <module name="MethodTypeParameterName">
61*2835e6bbSSorin Basca      <property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)" />
62*2835e6bbSSorin Basca    </module>
63*2835e6bbSSorin Basca    <module name="InterfaceTypeParameterName">
64*2835e6bbSSorin Basca      <property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)" />
65*2835e6bbSSorin Basca    </module>
66*2835e6bbSSorin Basca    <module name="NoFinalizer" />
67*2835e6bbSSorin Basca    <module name="AbbreviationAsWordInName">
68*2835e6bbSSorin Basca      <property name="ignoreFinal" value="false" />
69*2835e6bbSSorin Basca      <property name="allowedAbbreviationLength" value="1" />
70*2835e6bbSSorin Basca    </module>
71*2835e6bbSSorin Basca    <module name="OverloadMethodsDeclarationOrder" />
72*2835e6bbSSorin Basca    <module name="VariableDeclarationUsageDistance">
73*2835e6bbSSorin Basca      <property name="allowedDistance" value="4" />
74*2835e6bbSSorin Basca    </module>
75*2835e6bbSSorin Basca    <module name="NonEmptyAtclauseDescription" />
76*2835e6bbSSorin Basca    <module name="SummaryJavadoc">
77*2835e6bbSSorin Basca      <property name="forbiddenSummaryFragments"
78*2835e6bbSSorin Basca        value="^@return the *|^This method returns |^A [{]@code [a-zA-Z0-9]+[}]( is a )" />
79*2835e6bbSSorin Basca    </module>
80*2835e6bbSSorin Basca    <module name="JavadocParagraph" />
81*2835e6bbSSorin Basca    <module name="AtclauseOrder">
82*2835e6bbSSorin Basca      <property name="tagOrder" value="@param, @return, @throws, @deprecated" />
83*2835e6bbSSorin Basca      <property name="target"
84*2835e6bbSSorin Basca        value="CLASS_DEF, INTERFACE_DEF, ENUM_DEF, METHOD_DEF, CTOR_DEF, VARIABLE_DEF" />
85*2835e6bbSSorin Basca    </module>
86*2835e6bbSSorin Basca    <module name="JavadocMethod">
87*2835e6bbSSorin Basca      <property name="accessModifiers" value="public" />
88*2835e6bbSSorin Basca      <property name="allowMissingParamTags" value="true" />
89*2835e6bbSSorin Basca      <property name="allowMissingReturnTag" value="true" />
90*2835e6bbSSorin Basca      <property name="allowedAnnotations"
91*2835e6bbSSorin Basca        value="Override,BeforeEach,Test,ParameterizedTest,Setup,Benchmark" />
92*2835e6bbSSorin Basca    </module>
93*2835e6bbSSorin Basca    <module name="MethodName">
94*2835e6bbSSorin Basca      <property name="format" value="^[a-z][a-z0-9][a-zA-Z0-9_]*$" />
95*2835e6bbSSorin Basca    </module>
96*2835e6bbSSorin Basca    <module name="SingleLineJavadoc">
97*2835e6bbSSorin Basca      <property name="ignoredTags" value="@code,@link,@literal" />
98*2835e6bbSSorin Basca      <property name="ignoreInlineTags" value="false" />
99*2835e6bbSSorin Basca    </module>
100*2835e6bbSSorin Basca    <module name="EmptyCatchBlock">
101*2835e6bbSSorin Basca      <property name="exceptionVariableName" value="expected" />
102*2835e6bbSSorin Basca    </module>
103*2835e6bbSSorin Basca
104*2835e6bbSSorin Basca    <!-- Additional modules, not related to the Google Java Style guide. -->
105*2835e6bbSSorin Basca    <module name="AvoidNestedBlocks">
106*2835e6bbSSorin Basca      <property name="allowInSwitchCase" value="true" />
107*2835e6bbSSorin Basca    </module>
108*2835e6bbSSorin Basca    <module name="HideUtilityClassConstructor" />
109*2835e6bbSSorin Basca    <module name="InnerTypeLast" />
110*2835e6bbSSorin Basca    <module name="InterfaceIsType" />
111*2835e6bbSSorin Basca    <module name="MutableException" />
112*2835e6bbSSorin Basca    <module name="ThrowsCount" />
113*2835e6bbSSorin Basca    <module name="CovariantEquals" />
114*2835e6bbSSorin Basca    <module name="DeclarationOrder">
115*2835e6bbSSorin Basca      <property name="ignoreModifiers" value="true" />
116*2835e6bbSSorin Basca    </module>
117*2835e6bbSSorin Basca    <module name="DefaultComesLast" />
118*2835e6bbSSorin Basca    <module name="EmptyStatement" />
119*2835e6bbSSorin Basca    <module name="EqualsHashCode" />
120*2835e6bbSSorin Basca    <module name="ExplicitInitialization" />
121*2835e6bbSSorin Basca    <module name="IllegalCatch" />
122*2835e6bbSSorin Basca    <module name="IllegalThrows" />
123*2835e6bbSSorin Basca    <module name="IllegalType">
124*2835e6bbSSorin Basca      <property name="illegalClassNames"
125*2835e6bbSSorin Basca        value="ArrayList,LinkedList,HashSet,TreeSet,LinkedHashSet,HashMap,TreeMap,LinkedHashMap" />
126*2835e6bbSSorin Basca      <property name="memberModifiers" value="LITERAL_PUBLIC,LITERAL_PROTECTED" />
127*2835e6bbSSorin Basca    </module>
128*2835e6bbSSorin Basca    <module name="JavadocStyle" />
129*2835e6bbSSorin Basca    <module name="ModifiedControlVariable" />
130*2835e6bbSSorin Basca    <module name="NoClone" />
131*2835e6bbSSorin Basca    <module name="SimplifyBooleanExpression" />
132*2835e6bbSSorin Basca    <module name="SimplifyBooleanReturn" />
133*2835e6bbSSorin Basca    <module name="StringLiteralEquality" />
134*2835e6bbSSorin Basca    <module name="FinalClass" />
135*2835e6bbSSorin Basca    <module name="FinalParameters" />
136*2835e6bbSSorin Basca
137*2835e6bbSSorin Basca    <!-- Module allowing to suppress warnings with DontCheck(...) comments. -->
138*2835e6bbSSorin Basca    <module name="SuppressWithNearbyCommentFilter">
139*2835e6bbSSorin Basca      <property name="commentFormat" value="DontCheck\((\w+)\)" />
140*2835e6bbSSorin Basca      <property name="checkFormat" value="$1" />
141*2835e6bbSSorin Basca      <property name="influenceFormat" value="1" />
142*2835e6bbSSorin Basca    </module>
143*2835e6bbSSorin Basca    <module name="SuppressWithNearbyCommentFilter">
144*2835e6bbSSorin Basca      <property name="commentFormat" value="DontCheck\(IllegalCatch\)" />
145*2835e6bbSSorin Basca      <property name="checkFormat" value="IllegalCatch" />
146*2835e6bbSSorin Basca      <property name="influenceFormat" value="-1" />
147*2835e6bbSSorin Basca    </module>
148*2835e6bbSSorin Basca  </module>
149*2835e6bbSSorin Basca</module>
150