blob: 875fb0476b5d18e00657928c97a9bd46f06970b7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
|
/*
* Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
*/
package org.jetbrains.dokka.maven
import org.apache.maven.plugins.annotations.Parameter
import org.jetbrains.dokka.DokkaConfiguration
import org.jetbrains.dokka.DokkaDefaults
/**
* Configuration block that allows setting some options for specific packages
* matched by [matchingRegex].
*
* Example:
*
* ```xml
* <configuration>
* <perPackageOptions>
* <packageOptions>
* <matchingRegex>.*api.*</matchingRegex>
* <suppress>false</suppress>
* <reportUndocumented>false</reportUndocumented>
* <skipDeprecated>false</skipDeprecated>
* <documentedVisibilities>
* <visibility>PUBLIC</visibility>
* <visibility>PROTECTED</visibility>
* </documentedVisibilities>
* </packageOptions>
* </perPackageOptions>
* </configuration>
* ```
*/
public class PackageOptions : DokkaConfiguration.PackageOptions {
/**
* Regular expression that is used to match the package.
*
* If multiple packages match the same `matchingRegex`, the longest `matchingRegex` will be used.
*
* Default is any string: `.*`.
*/
@Parameter
override var matchingRegex: String = ".*"
/**
* Whether this package should be skipped when generating documentation.
*
* Default is `false`.
*/
@Parameter
override var suppress: Boolean = DokkaDefaults.suppress
/**
* List of visibility modifiers that should be documented.
*
* This can be used if you want to document protected/internal/private declarations within a
* specific package, as well as if you want to exclude public declarations and only document internal API.
*
* Default is [DokkaConfiguration.Visibility.PUBLIC].
*/
@Parameter(property = "visibility")
override var documentedVisibilities: Set<DokkaConfiguration.Visibility> = DokkaDefaults.documentedVisibilities
/**
* Whether to document declarations annotated with [Deprecated].
*
* Can be set on project level with [AbstractDokkaMojo.skipDeprecated].
*
* Default is `false`.
*/
@Parameter
override var skipDeprecated: Boolean = DokkaDefaults.skipDeprecated
/**
* Whether to emit warnings about visible undocumented declarations, that is declarations from
* this package and without KDocs, after they have been filtered by [documentedVisibilities].
*
* This setting works well with [AbstractDokkaMojo.failOnWarning].
*
* Default is `false`.
*/
@Parameter
override var reportUndocumented: Boolean = DokkaDefaults.reportUndocumented
@Parameter
@Deprecated("Use [documentedVisibilities] property for a more flexible control over documented visibilities")
override var includeNonPublic: Boolean = DokkaDefaults.includeNonPublic
}
|