OSDN Git Service

bump maven-checkstyle-plugin to 3.1.2
[jindolf/JinParser.git] / config / checkstyle / checkstyle.xml
1 <?xml version="1.0" encoding="UTF-8" ?>
2
3 <!DOCTYPE module PUBLIC
4     "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN"
5     "https://checkstyle.org/dtds/configuration_1_3.dtd">
6
7 <!--
8     Checkstyle modules
9     for Checkstyle 8.45 or later
10
11     [ https://checkstyle.org/ ]
12
13     Copyright(c) 2019 olyutorskii
14 -->
15
16
17 <module name="Checker">
18
19     <property name="charset" value="UTF-8" />
20     <property name="localeCountry" value="JP" />
21     <property name="localeLanguage" value="en" />
22     <!--property name="localeLanguage" value="ja" /-->
23     <property name="fileExtensions" value="java, properties, xml, xsd, md, txt" />
24     <property name="severity" value="error" />
25
26
27     <!-- Filters -->
28
29     <module name="SeverityMatchFilter" />
30     <!--module name="SuppressionFilter" /-->
31     <!--module name="SuppressionSingleFilter" /-->
32     <module name="SuppressWarningsFilter" />
33     <module name="SuppressWithPlainTextCommentFilter" />
34
35
36     <!-- Headers -->
37
38     <module name="Header">
39         <property name="header" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt;" />
40         <property name="fileExtensions" value="xml" />
41     </module>
42     <module name="RegexpHeader">
43         <property name="header" value="^/\*$\n^ \*( .*)?$\n^ \*/$\n" />
44         <property name="multiLines" value="2" />
45         <property name="fileExtensions" value="java" />
46     </module>
47
48
49     <!-- Javadoc Comments -->
50
51     <module name="JavadocPackage" />
52
53
54     <!-- Miscellaneous -->
55
56     <module name="NewlineAtEndOfFile">
57         <property name="fileExtensions" value="java, properties, xml, xsd, md, txt" />
58     </module>
59     <module name="OrderedProperties" />
60     <module name="Translation" />
61     <module name="UniqueProperties" />
62
63
64     <!-- Regexp -->
65
66     <module name="RegexpMultiline">
67         <property name="format" value="[\u000b\f\u001a]" />
68     </module>
69     <module name="RegexpOnFilename" />
70     <module name="RegexpSingleline">
71         <property name="format" value="\s+$" />
72     </module>
73     <module name="RegexpSingleline">
74         <!-- scm conflict -->
75         <property name="format" value="&lt;&lt;&lt;&lt;&lt;" />
76     </module>
77
78
79     <!-- Size Violations -->
80
81     <module name="FileLength" />
82     <module name="LineLength">
83         <property name="fileExtensions" value="java" />
84         <property name="max" value="100" />
85     </module>
86
87
88     <!-- Whitespace -->
89
90     <module name="FileTabCharacter" />
91
92
93     <module name="BeforeExecutionExclusionFileFilter">
94         <property name="fileNamePattern" value="module\-info\.java$" />
95     </module>
96
97
98     <module name="TreeWalker">
99
100         <property name="tabWidth" value="8" />
101         <property name="fileExtensions" value="java" />
102
103         <module name="SuppressWarningsHolder" />
104
105
106     <!-- Filters -->
107
108         <module name="SuppressionCommentFilter" />
109         <module name="SuppressWithNearbyCommentFilter" />
110         <!--module name="SuppressionXpathFilter" /-->
111         <!--module name="SuppressionXpathSingleFilter" /-->
112
113
114     <!-- Annotations -->
115
116         <module name="AnnotationLocation" />
117         <module name="AnnotationOnSameLine" />
118         <module name="AnnotationUseStyle" />
119         <module name="MissingDeprecated" />
120         <module name="MissingOverride" />
121         <module name="PackageAnnotation" />
122         <module name="SuppressWarnings" />
123         <module name="SuppressWarningsHolder" />
124
125
126     <!-- Block Checks -->
127
128         <module name="AvoidNestedBlocks" />
129         <module name="EmptyBlock" />
130         <module name="EmptyCatchBlock" />
131         <module name="LeftCurly" />
132         <module name="NeedBraces">
133             <property name="allowSingleLineStatement" value="true" />
134         </module>
135         <module name="RightCurly" />
136
137
138     <!-- Class Design -->
139
140         <module name="DesignForExtension" />
141         <module name="FinalClass" />
142         <module name="HideUtilityClassConstructor" />
143         <module name="InnerTypeLast" />
144         <module name="InterfaceIsType" />
145         <module name="MutableException" />
146         <module name="OneTopLevelClass" />
147         <module name="ThrowsCount" />
148         <module name="VisibilityModifier" />
149
150
151     <!-- Coding -->
152
153         <module name="ArrayTrailingComma" />
154         <module name="AvoidDoubleBraceInitialization" />
155         <module name="AvoidInlineConditionals" />
156         <module name="AvoidNoArgumentSuperConstructorCall" />
157         <module name="CovariantEquals" />
158         <module name="DeclarationOrder" />
159         <module name="DefaultComesLast" />
160         <module name="EmptyStatement" />
161         <module name="EqualsAvoidNull" />
162         <module name="EqualsHashCode" />
163         <module name="ExplicitInitialization" />
164         <module name="FallThrough" />
165         <module name="FinalLocalVariable" />
166         <module name="HiddenField">
167             <property name="ignoreConstructorParameter" value="true" />
168             <property name="ignoreSetter" value="true" />
169             <property name="setterCanReturnItsClass" value="true" />
170             <property name="ignoreAbstractMethods" value="true" />
171         </module>
172         <module name="IllegalCatch" />
173         <module name="IllegalInstantiation" />
174         <module name="IllegalThrows" />
175         <module name="IllegalToken">
176             <property name="tokens" value="LITERAL_NATIVE" />
177         </module>
178         <module name="IllegalTokenText" />
179         <module name="IllegalType" />
180         <module name="InnerAssignment" />
181         <module name="MagicNumber" />
182         <module name="MatchXpath" />
183         <module name="MissingCtor" />
184         <module name="MissingSwitchDefault" />
185         <module name="ModifiedControlVariable" />
186         <module name="MultipleStringLiterals" />
187         <module name="MultipleVariableDeclarations" />
188         <module name="NestedForDepth" />
189         <module name="NestedIfDepth" />
190         <module name="NestedTryDepth" />
191         <module name="NoArrayTrailingComma" />
192         <module name="NoClone" />
193         <module name="NoEnumTrailingComma" />
194         <module name="NoFinalizer" />
195         <module name="OneStatementPerLine" />
196         <module name="OverloadMethodsDeclarationOrder" />
197         <module name="PackageDeclaration" />
198         <module name="ParameterAssignment" />
199         <module name="RequireThis">
200             <property name="checkMethods" value="false" />
201             <property name="validateOnlyOverlapping" value="false" />
202         </module>
203         <module name="ReturnCount" />
204         <module name="SimplifyBooleanExpression" />
205         <module name="SimplifyBooleanReturn" />
206         <module name="StringLiteralEquality" />
207         <module name="SuperClone" />
208         <module name="SuperFinalize" />
209         <module name="UnnecessaryParentheses" />
210         <module name="UnnecessarySemicolonAfterOuterTypeDeclaration" />
211         <module name="UnnecessarySemicolonAfterTypeMemberDeclaration" />
212         <module name="UnnecessarySemicolonInEnumeration" />
213         <module name="UnnecessarySemicolonInTryWithResources" />
214         <module name="VariableDeclarationUsageDistance" />
215
216
217     <!-- Imports -->
218
219         <module name="AvoidStarImport" />
220         <module name="AvoidStaticImport" />
221         <module name="CustomImportOrder" />
222         <module name="IllegalImport" />
223         <!--module name="ImportControl" /-->
224         <module name="ImportOrder" />
225         <module name="RedundantImport" />
226         <module name="UnusedImports" />
227
228
229     <!-- Javadoc Comments -->
230
231         <module name="AtclauseOrder" />
232         <module name="InvalidJavadocPosition" />
233         <module name="JavadocBlockTagLocation" />
234         <module name="JavadocContentLocationCheck" />
235         <module name="JavadocMethod" />
236         <module name="JavadocMissingLeadingAsterisk" />
237         <module name="JavadocMissingWhitespaceAfterAsterisk" />
238         <module name="JavadocParagraph" />
239         <module name="JavadocStyle">
240             <property
241                 name="endOfSentenceFormat"
242                 value="([。.?!][ \t\n\r\f&lt;])|([。.?!]$)" />
243             <property name="checkEmptyJavadoc" value="true" />
244             <property name="checkHtml" value="true" />
245         </module>
246         <module name="JavadocTagContinuationIndentation" />
247         <module name="JavadocType" />
248         <module name="JavadocVariable">
249             <property name="scope" value="protected" />
250         </module>
251         <module name="MissingJavadocMethod" />
252         <module name="MissingJavadocPackage" />
253         <module name="MissingJavadocType" />
254         <module name="NonEmptyAtclauseDescription" />
255         <module name="SingleLineJavadoc" />
256         <module name="SummaryJavadocCheck" />
257         <module name="WriteTag" />
258
259
260     <!-- Metrics -->
261
262         <module name="BooleanExpressionComplexity" />
263         <module name="ClassDataAbstractionCoupling" />
264         <module name="ClassFanOutComplexity" />
265         <module name="CyclomaticComplexity" />
266         <module name="JavaNCSS" />
267         <module name="NPathComplexity" />
268
269
270     <!-- Miscellaneous -->
271
272         <module name="ArrayTypeStyle" />
273         <module name="AvoidEscapedUnicodeCharacters">
274             <property name="allowEscapesForControlCharacters" value="true" />
275             <property name="allowByTailComment" value="true" />
276             <property name="allowIfAllCharactersEscaped" value="true" />
277             <property name="allowNonPrintableEscapes" value="true" />
278         </module>
279         <module name="CommentsIndentation" />
280         <module name="DescendantToken" />
281         <module name="FinalParameters" />
282         <module name="Indentation">
283             <property name="caseIndent" value="0" />
284         </module>
285         <module name="NoCodeInFile" />
286         <module name="OuterTypeFilename" />
287         <module name="TodoComment">
288             <property name="format" value="TODO" />
289         </module>
290         <module name="TrailingComment" />
291         <module name="UncommentedMain" />
292         <module name="UpperEll" />
293
294
295     <!-- Modifiers -->
296
297         <module name="ClassMemberImpliedModifier" />
298         <module name="InterfaceMemberImpliedModifier" />
299         <module name="ModifierOrder" />
300         <module name="RedundantModifier" />
301
302
303     <!-- Naming Conventions -->
304
305         <module name="AbbreviationAsWordInName" />
306         <module name="AbstractClassName" />
307         <module name="CatchParameterName" />
308         <module name="ClassTypeParameterName" />
309         <module name="ConstantName" />
310         <module name="IllegalIdentifierName" />
311         <module name="InterfaceTypeParameterName" />
312         <module name="LambdaParameterName" />
313         <module name="LocalFinalVariableName" />
314         <module name="LocalVariableName" />
315         <module name="MemberName" />
316         <module name="MethodName" />
317         <module name="MethodTypeParameterName" />
318         <module name="PackageName" />
319         <module name="ParameterName" />
320         <module name="PatternVariableName" />
321         <module name="RecordComponentName" />
322         <module name="RecordTypeParameterName" />
323         <module name="StaticVariableName" />
324         <module name="TypeName" />
325
326
327     <!-- Regex -->
328
329         <module name="Regexp">
330             <property name="format" value="@author" />
331             <property name="illegalPattern" value="true" />
332         </module>
333         <module name="Regexp">
334             <property name="format" value="^ \* Copyright\(c\)" />
335         </module>
336         <module name="Regexp">
337             <property name="format" value="^ \* License : The MIT License" />
338             <property name="duplicateLimit" value="1" />
339         </module>
340         <module name="RegexpSinglelineJava">
341             <property name="format" value="\u0000" />
342         </module>
343
344
345     <!-- Size Violations -->
346
347         <module name="AnonInnerLength" />
348         <module name="ExecutableStatementCount" />
349         <module name="LambdaBodyLength" />
350         <module name="MethodCount" />
351         <module name="MethodLength" />
352         <module name="OuterTypeNumber" />
353         <module name="ParameterNumber" />
354         <module name="RecordComponentNumber" />
355
356
357     <!-- Whitespace -->
358
359         <module name="EmptyForInitializerPad" />
360         <module name="EmptyForIteratorPad" />
361         <module name="EmptyLineSeparator">
362             <property name="allowNoEmptyLineBetweenFields" value="true" />
363         </module>
364         <module name="GenericWhitespace" />
365         <module name="MethodParamPad">
366             <property
367                 name="tokens"
368                 value="CTOR_DEF, LITERAL_NEW, METHOD_DEF, SUPER_CTOR_CALL"
369             />
370         </module>
371         <module name="NoLineWrap" />
372         <module name="NoWhitespaceAfter">
373             <property name="allowLineBreaks" value="false" />
374             <property name="tokens" value="INC, DEC, DOT" />
375         </module>
376         <module name="NoWhitespaceBefore">
377             <property name="allowLineBreaks" value="false" />
378             <property name="tokens" value="COMMA, POST_INC, POST_DEC" />
379         </module>
380         <module name="NoWhitespaceBeforeCaseDefaultColon" />
381         <module name="OperatorWrap" />
382         <module name="ParenPad">
383             <property name="option" value="nospace" />
384             <property
385                 name="tokens"
386                 value="CTOR_CALL, METHOD_CALL, SUPER_CTOR_CALL"
387             />
388         </module>
389         <module name="SeparatorWrap">
390             <property name="tokens" value="DOT" />
391             <property name="option" value="nl" />
392         </module>
393         <module name="SingleSpaceSeparator" />
394         <module name="TypecastParenPad" />
395         <module name="WhitespaceAfter" >
396             <property name="tokens" value="COMMA, SEMI," />
397         </module>
398         <module name="WhitespaceAround">
399             <property
400                 name="tokens"
401                 value="ASSIGN,
402                        LAND, LOR,
403                        BAND, BOR, BXOR, BSR,
404                        BAND_ASSIGN, BOR_ASSIGN, BXOR_ASSIGN, BSR_ASSIGN,
405                        SL, SR,
406                        SL_ASSIGN, SR_ASSIGN,
407                        MINUS, STAR, DIV, MOD,
408                        PLUS_ASSIGN, MINUS_ASSIGN,
409                        STAR_ASSIGN, DIV_ASSIGN, MOD_ASSIGN,
410                        EQUAL, NOT_EQUAL, GT, GE, LT, LE,
411                        "
412             />
413         </module>
414
415
416     </module>
417
418
419 </module>
420
421 <!-- EOF -->