@cparra/apexdocs 2.24.0 → 2.25.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (317) hide show
  1. package/.eslintrc.js +12 -12
  2. package/.github/workflows/ci.yaml +22 -0
  3. package/.github/workflows/close_stale.yml +22 -22
  4. package/.prettierrc.js +7 -7
  5. package/LICENSE +21 -21
  6. package/README.md +742 -718
  7. package/apexdocs.config.ts +13 -13
  8. package/docs/{README.md → __old/README.md} +1 -1
  9. package/docs/{restapi.json → __old/restapi.json} +589 -589
  10. package/docs/{types → __old/types}/Classes/nspc.ChildClass.md +97 -97
  11. package/docs/{types → __old/types}/Main/nspc.SampleClass.md +189 -189
  12. package/examples/force-app/main/default/classes/AnotherInterface.cls +16 -16
  13. package/examples/force-app/main/default/classes/ChildClass.cls +42 -42
  14. package/examples/force-app/main/default/classes/EscapedAnnotations.cls +5 -5
  15. package/examples/force-app/main/default/classes/GrandparentClass.cls +4 -4
  16. package/examples/force-app/main/default/classes/GroupedClass.cls +8 -8
  17. package/examples/force-app/main/default/classes/MemberGrouping.cls +17 -17
  18. package/examples/force-app/main/default/classes/ParentClass.cls +16 -16
  19. package/examples/force-app/main/default/classes/SampleClass.cls +166 -166
  20. package/examples/force-app/main/default/classes/SampleClass.cls-meta.xml +5 -5
  21. package/examples/force-app/main/default/classes/SampleClassWithoutModifier.cls +9 -9
  22. package/examples/force-app/main/default/classes/SampleInterface.cls +16 -16
  23. package/examples/force-app/main/default/restapi/SampleRestResource.cls +195 -195
  24. package/examples/force-app/main/default/restapi/SampleRestResourceToSkip.cls +35 -35
  25. package/examples/force-app/main/default/restapi/SampleRestResourceWithInnerClass.cls +24 -24
  26. package/examples/force-app/main/default/restapi/SampleRestResourceWithoutApexDocs.cls +15 -15
  27. package/examples/force-app/main/default/restapi/references/Reference1.cls +9 -9
  28. package/examples/force-app/main/default/restapi/references/Reference2.cls +9 -9
  29. package/examples/force-app/main/default/restapi/references/Reference3.cls +3 -3
  30. package/examples/force-app/main/default/restapi/references/Reference4.cls +3 -3
  31. package/examples/force-app/main/default/restapi/references/Reference5.cls +3 -3
  32. package/examples/force-app/main/default/restapi/references/Reference6.cls +6 -6
  33. package/examples/force-app/main/default/restapi/references/Reference7.cls +3 -3
  34. package/examples/includes/header.md +3 -3
  35. package/examples/plain-markdown/.forceignore +12 -0
  36. package/examples/plain-markdown/README.md +301 -0
  37. package/examples/plain-markdown/config/project-scratch-def.json +5 -0
  38. package/examples/plain-markdown/force-app/classes/BaseClass.cls +3 -0
  39. package/examples/plain-markdown/force-app/classes/ParentInterface.cls +3 -0
  40. package/examples/plain-markdown/force-app/classes/ReferencedEnum.cls +3 -0
  41. package/examples/plain-markdown/force-app/classes/SampleClass.cls +35 -0
  42. package/examples/plain-markdown/force-app/classes/SampleEnum.cls +30 -0
  43. package/examples/plain-markdown/force-app/classes/SampleException.cls +1 -0
  44. package/examples/plain-markdown/force-app/classes/SampleInterface.cls +46 -0
  45. package/examples/plain-markdown/package-lock.json +665 -0
  46. package/examples/plain-markdown/package.json +24 -0
  47. package/examples/plain-markdown/sfdx-project.json +12 -0
  48. package/examples/plain-markdown/template.md +3 -0
  49. package/jest.config.js +5 -5
  50. package/lib/adapters/apex-types.d.ts +5 -0
  51. package/lib/adapters/apex-types.js +34 -0
  52. package/lib/adapters/apex-types.js.map +1 -0
  53. package/lib/adapters/documentables.d.ts +6 -0
  54. package/lib/adapters/documentables.js +41 -0
  55. package/lib/adapters/documentables.js.map +1 -0
  56. package/lib/adapters/fields-and-properties.d.ts +3 -0
  57. package/lib/adapters/fields-and-properties.js +10 -0
  58. package/lib/adapters/fields-and-properties.js.map +1 -0
  59. package/lib/adapters/methods-and-constructors.d.ts +4 -0
  60. package/lib/adapters/methods-and-constructors.js +49 -0
  61. package/lib/adapters/methods-and-constructors.js.map +1 -0
  62. package/lib/adapters/references.d.ts +5 -0
  63. package/lib/adapters/references.js +82 -0
  64. package/lib/adapters/references.js.map +1 -0
  65. package/lib/adapters/type-utils.d.ts +2 -0
  66. package/lib/adapters/type-utils.js +8 -0
  67. package/lib/adapters/type-utils.js.map +1 -0
  68. package/lib/application/Apexdocs.d.ts +13 -13
  69. package/lib/application/Apexdocs.js +79 -76
  70. package/lib/application/Apexdocs.js.map +1 -1
  71. package/lib/cli/generate.d.ts +2 -2
  72. package/lib/cli/generate.js +156 -130
  73. package/lib/cli/generate.js.map +1 -1
  74. package/lib/index.d.ts +1 -1
  75. package/lib/index.js +17 -17
  76. package/lib/model/apex-bundle.d.ts +6 -6
  77. package/lib/model/apex-bundle.js +10 -10
  78. package/lib/model/apex-type-wrappers/ClassMirrorWrapper.d.ts +7 -7
  79. package/lib/model/apex-type-wrappers/ClassMirrorWrapper.js +13 -13
  80. package/lib/model/apex-type-wrappers/MethodMirrorWrapper.d.ts +7 -7
  81. package/lib/model/apex-type-wrappers/MethodMirrorWrapper.js +11 -11
  82. package/lib/model/inheritance.d.ts +8 -8
  83. package/lib/model/inheritance.js +2 -2
  84. package/lib/model/manifest.d.ts +22 -22
  85. package/lib/model/manifest.js +46 -46
  86. package/lib/model/manifest.js.map +1 -1
  87. package/lib/model/markdown-file.d.ts +16 -16
  88. package/lib/model/markdown-file.js +109 -106
  89. package/lib/model/markdown-file.js.map +1 -1
  90. package/lib/model/markdown-generation-util/doc-comment-annotation-util.d.ts +8 -8
  91. package/lib/model/markdown-generation-util/doc-comment-annotation-util.js +46 -43
  92. package/lib/model/markdown-generation-util/doc-comment-annotation-util.js.map +1 -1
  93. package/lib/model/markdown-generation-util/field-declaration-util.d.ts +3 -3
  94. package/lib/model/markdown-generation-util/field-declaration-util.js +54 -54
  95. package/lib/model/markdown-generation-util/index.d.ts +3 -3
  96. package/lib/model/markdown-generation-util/index.js +19 -19
  97. package/lib/model/markdown-generation-util/method-declaration-util.d.ts +4 -4
  98. package/lib/model/markdown-generation-util/method-declaration-util.js +114 -114
  99. package/lib/model/markdown-generation-util/type-declaration-util.d.ts +3 -3
  100. package/lib/model/markdown-generation-util/type-declaration-util.js +81 -81
  101. package/lib/model/markdown-home-file.d.ts +11 -11
  102. package/lib/model/markdown-home-file.js +56 -53
  103. package/lib/model/markdown-home-file.js.map +1 -1
  104. package/lib/model/markdown-type-file.d.ts +26 -26
  105. package/lib/model/markdown-type-file.js +136 -133
  106. package/lib/model/markdown-type-file.js.map +1 -1
  107. package/lib/model/openapi/apex-doc-types.d.ts +19 -19
  108. package/lib/model/openapi/apex-doc-types.js +4 -4
  109. package/lib/model/openapi/open-api-types.d.ts +93 -93
  110. package/lib/model/openapi/open-api-types.js +2 -2
  111. package/lib/model/openapi/open-api.d.ts +16 -16
  112. package/lib/model/openapi/open-api.js +33 -33
  113. package/lib/model/openapi/openapi-type-file.d.ts +7 -7
  114. package/lib/model/openapi/openapi-type-file.js +16 -16
  115. package/lib/model/outputFile.d.ts +10 -10
  116. package/lib/model/outputFile.js +28 -28
  117. package/lib/model/types-repository.d.ts +16 -16
  118. package/lib/model/types-repository.js +53 -53
  119. package/lib/service/apex-file-reader.d.ts +14 -14
  120. package/lib/service/apex-file-reader.js +48 -45
  121. package/lib/service/apex-file-reader.js.map +1 -1
  122. package/lib/service/file-system.d.ts +14 -14
  123. package/lib/service/file-system.js +47 -24
  124. package/lib/service/file-system.js.map +1 -1
  125. package/lib/service/file-writer.d.ts +6 -6
  126. package/lib/service/file-writer.js +56 -33
  127. package/lib/service/file-writer.js.map +1 -1
  128. package/lib/service/manifest-factory.d.ts +10 -10
  129. package/lib/service/manifest-factory.js +16 -13
  130. package/lib/service/manifest-factory.js.map +1 -1
  131. package/lib/service/metadata-processor.d.ts +3 -3
  132. package/lib/service/metadata-processor.js +16 -16
  133. package/lib/service/parser.d.ts +21 -21
  134. package/lib/service/parser.js +137 -134
  135. package/lib/service/parser.js.map +1 -1
  136. package/lib/service/state.d.ts +9 -9
  137. package/lib/service/state.js +19 -19
  138. package/lib/service/walkers/class-walker.d.ts +4 -4
  139. package/lib/service/walkers/class-walker.js +32 -32
  140. package/lib/service/walkers/enum-walker.d.ts +4 -4
  141. package/lib/service/walkers/enum-walker.js +10 -10
  142. package/lib/service/walkers/interface-walker.d.ts +4 -4
  143. package/lib/service/walkers/interface-walker.js +14 -14
  144. package/lib/service/walkers/walker-factory.d.ts +5 -5
  145. package/lib/service/walkers/walker-factory.js +20 -20
  146. package/lib/service/walkers/walker.d.ts +19 -19
  147. package/lib/service/walkers/walker.js +16 -16
  148. package/lib/settings.d.ts +70 -64
  149. package/lib/settings.js +99 -88
  150. package/lib/settings.js.map +1 -1
  151. package/lib/templating/compile.d.ts +7 -0
  152. package/lib/templating/compile.js +98 -0
  153. package/lib/templating/compile.js.map +1 -0
  154. package/lib/templating/helpers.d.ts +2 -0
  155. package/lib/templating/helpers.js +18 -0
  156. package/lib/templating/helpers.js.map +1 -0
  157. package/lib/test-helpers/AnnotationBuilder.d.ts +12 -12
  158. package/lib/test-helpers/AnnotationBuilder.js +30 -30
  159. package/lib/test-helpers/ClassMirrorBuilder.d.ts +18 -18
  160. package/lib/test-helpers/ClassMirrorBuilder.js +53 -53
  161. package/lib/test-helpers/DocCommentAnnotationBuilder.d.ts +8 -8
  162. package/lib/test-helpers/DocCommentAnnotationBuilder.js +25 -25
  163. package/lib/test-helpers/DocCommentBuilder.d.ts +12 -12
  164. package/lib/test-helpers/DocCommentBuilder.js +37 -37
  165. package/lib/test-helpers/FieldMirrorBuilder.d.ts +18 -18
  166. package/lib/test-helpers/FieldMirrorBuilder.js +53 -53
  167. package/lib/test-helpers/InterfaceMirrorBuilder.d.ts +16 -0
  168. package/lib/test-helpers/InterfaceMirrorBuilder.js +43 -0
  169. package/lib/test-helpers/InterfaceMirrorBuilder.js.map +1 -0
  170. package/lib/test-helpers/MethodMirrorBuilder.d.ts +29 -10
  171. package/lib/test-helpers/MethodMirrorBuilder.js +71 -36
  172. package/lib/test-helpers/MethodMirrorBuilder.js.map +1 -1
  173. package/lib/test-helpers/SettingsBuilder.d.ts +8 -8
  174. package/lib/test-helpers/SettingsBuilder.js +26 -26
  175. package/lib/transpiler/factory.d.ts +6 -6
  176. package/lib/transpiler/factory.js +34 -31
  177. package/lib/transpiler/factory.js.map +1 -1
  178. package/lib/transpiler/file-container.d.ts +6 -6
  179. package/lib/transpiler/file-container.js +15 -15
  180. package/lib/transpiler/generator-choices.d.ts +1 -1
  181. package/lib/transpiler/generator-choices.js +2 -2
  182. package/lib/transpiler/markdown/class-file-generatorHelper.d.ts +11 -8
  183. package/lib/transpiler/markdown/class-file-generatorHelper.js +74 -55
  184. package/lib/transpiler/markdown/class-file-generatorHelper.js.map +1 -1
  185. package/lib/transpiler/markdown/docsify/docsify-docs-processor.d.ts +6 -6
  186. package/lib/transpiler/markdown/docsify/docsify-docs-processor.js +12 -12
  187. package/lib/transpiler/markdown/jekyll/jekyll-docsProcessor.d.ts +11 -11
  188. package/lib/transpiler/markdown/jekyll/jekyll-docsProcessor.js +50 -50
  189. package/lib/transpiler/markdown/markdown-transpiler-base.d.ts +11 -11
  190. package/lib/transpiler/markdown/markdown-transpiler-base.js +26 -23
  191. package/lib/transpiler/markdown/markdown-transpiler-base.js.map +1 -1
  192. package/lib/transpiler/markdown/plain-markdown/class-template.d.ts +1 -0
  193. package/lib/transpiler/markdown/plain-markdown/class-template.js +36 -0
  194. package/lib/transpiler/markdown/plain-markdown/class-template.js.map +1 -0
  195. package/lib/transpiler/markdown/plain-markdown/constructors-partial-template.d.ts +1 -0
  196. package/lib/transpiler/markdown/plain-markdown/constructors-partial-template.js +39 -0
  197. package/lib/transpiler/markdown/plain-markdown/constructors-partial-template.js.map +1 -0
  198. package/lib/transpiler/markdown/plain-markdown/documentable-partial-template.d.ts +1 -0
  199. package/lib/transpiler/markdown/plain-markdown/documentable-partial-template.js +25 -0
  200. package/lib/transpiler/markdown/plain-markdown/documentable-partial-template.js.map +1 -0
  201. package/lib/transpiler/markdown/plain-markdown/enum-template.d.ts +1 -0
  202. package/lib/transpiler/markdown/plain-markdown/enum-template.js +15 -0
  203. package/lib/transpiler/markdown/plain-markdown/enum-template.js.map +1 -0
  204. package/lib/transpiler/markdown/plain-markdown/fieldsPartialTemplate.d.ts +1 -0
  205. package/lib/transpiler/markdown/plain-markdown/fieldsPartialTemplate.js +24 -0
  206. package/lib/transpiler/markdown/plain-markdown/fieldsPartialTemplate.js.map +1 -0
  207. package/lib/transpiler/markdown/plain-markdown/interface-template.d.ts +1 -0
  208. package/lib/transpiler/markdown/plain-markdown/interface-template.js +20 -0
  209. package/lib/transpiler/markdown/plain-markdown/interface-template.js.map +1 -0
  210. package/lib/transpiler/markdown/plain-markdown/methods-partial-template.d.ts +1 -0
  211. package/lib/transpiler/markdown/plain-markdown/methods-partial-template.js +49 -0
  212. package/lib/transpiler/markdown/plain-markdown/methods-partial-template.js.map +1 -0
  213. package/lib/transpiler/markdown/plain-markdown/plain-docsProcessor.d.ts +13 -6
  214. package/lib/transpiler/markdown/plain-markdown/plain-docsProcessor.js +121 -13
  215. package/lib/transpiler/markdown/plain-markdown/plain-docsProcessor.js.map +1 -1
  216. package/lib/transpiler/markdown/plain-markdown/type-level-apex-doc-partial-template.d.ts +1 -0
  217. package/lib/transpiler/markdown/plain-markdown/type-level-apex-doc-partial-template.js +31 -0
  218. package/lib/transpiler/markdown/plain-markdown/type-level-apex-doc-partial-template.js.map +1 -0
  219. package/lib/transpiler/openapi/open-api-docs-processor.d.ts +13 -13
  220. package/lib/transpiler/openapi/open-api-docs-processor.js +77 -74
  221. package/lib/transpiler/openapi/open-api-docs-processor.js.map +1 -1
  222. package/lib/transpiler/openapi/parsers/Builder.d.ts +16 -16
  223. package/lib/transpiler/openapi/parsers/Builder.js +29 -29
  224. package/lib/transpiler/openapi/parsers/Builder.js.map +1 -1
  225. package/lib/transpiler/openapi/parsers/MethodParser.d.ts +20 -20
  226. package/lib/transpiler/openapi/parsers/MethodParser.js +189 -166
  227. package/lib/transpiler/openapi/parsers/MethodParser.js.map +1 -1
  228. package/lib/transpiler/openapi/parsers/ParameterObjectBuilder.d.ts +7 -7
  229. package/lib/transpiler/openapi/parsers/ParameterObjectBuilder.js +10 -10
  230. package/lib/transpiler/openapi/parsers/ReferenceBuilder.d.ts +39 -39
  231. package/lib/transpiler/openapi/parsers/ReferenceBuilder.js +248 -225
  232. package/lib/transpiler/openapi/parsers/ReferenceBuilder.js.map +1 -1
  233. package/lib/transpiler/openapi/parsers/RequestBodyBuilder.d.ts +10 -10
  234. package/lib/transpiler/openapi/parsers/RequestBodyBuilder.js +19 -19
  235. package/lib/transpiler/openapi/parsers/ResponsesBuilder.d.ts +7 -7
  236. package/lib/transpiler/openapi/parsers/ResponsesBuilder.js +21 -21
  237. package/lib/transpiler/processor-type-transpiler.d.ts +10 -10
  238. package/lib/transpiler/processor-type-transpiler.js +8 -8
  239. package/lib/transpiler/transpiler.d.ts +5 -5
  240. package/lib/transpiler/transpiler.js +29 -26
  241. package/lib/transpiler/transpiler.js.map +1 -1
  242. package/lib/util/error-logger.d.ts +8 -8
  243. package/lib/util/error-logger.js +89 -89
  244. package/lib/util/error-logger.js.map +1 -1
  245. package/lib/util/logger.d.ts +21 -21
  246. package/lib/util/logger.js +60 -57
  247. package/lib/util/logger.js.map +1 -1
  248. package/lib/util/string-utils.d.ts +2 -2
  249. package/lib/util/string-utils.js +14 -14
  250. package/package.json +79 -78
  251. package/src/adapters/__tests__/interface-adapter.spec.ts +76 -0
  252. package/src/adapters/__tests__/references.spec.ts +115 -0
  253. package/src/adapters/apex-types.ts +67 -0
  254. package/src/adapters/documentables.ts +58 -0
  255. package/src/adapters/fields-and-properties.ts +14 -0
  256. package/src/adapters/methods-and-constructors.ts +78 -0
  257. package/src/adapters/references.ts +113 -0
  258. package/src/adapters/type-utils.ts +5 -0
  259. package/src/adapters/types.d.ts +8 -0
  260. package/src/cli/generate.ts +3 -0
  261. package/src/model/__tests__/manifest.spec.ts +1 -0
  262. package/src/model/manifest.ts +3 -3
  263. package/src/model/markdown-file.ts +1 -1
  264. package/src/model/openapi/open-api-types.ts +2 -2
  265. package/src/service/__tests__/apex-file-reader.spec.ts +4 -4
  266. package/src/service/__tests__/manifest-factory.spec.ts +1 -2
  267. package/src/settings.ts +15 -0
  268. package/src/templating/__tests__/compile.spec.ts +741 -0
  269. package/src/templating/compile.ts +187 -0
  270. package/src/templating/helpers.ts +14 -0
  271. package/src/templating/types.d.ts +104 -0
  272. package/src/test-helpers/FieldMirrorBuilder.ts +1 -1
  273. package/src/test-helpers/InterfaceMirrorBuilder.ts +44 -0
  274. package/src/test-helpers/MethodMirrorBuilder.ts +46 -6
  275. package/src/transpiler/markdown/class-file-generatorHelper.ts +22 -2
  276. package/src/transpiler/markdown/plain-markdown/class-template.ts +32 -0
  277. package/src/transpiler/markdown/plain-markdown/constructors-partial-template.ts +35 -0
  278. package/src/transpiler/markdown/plain-markdown/documentable-partial-template.ts +21 -0
  279. package/src/transpiler/markdown/plain-markdown/enum-template.ts +11 -0
  280. package/src/transpiler/markdown/plain-markdown/fieldsPartialTemplate.ts +20 -0
  281. package/src/transpiler/markdown/plain-markdown/interface-template.ts +16 -0
  282. package/src/transpiler/markdown/plain-markdown/methods-partial-template.ts +45 -0
  283. package/src/transpiler/markdown/plain-markdown/plain-docsProcessor.ts +122 -0
  284. package/src/transpiler/markdown/plain-markdown/type-level-apex-doc-partial-template.ts +27 -0
  285. package/src/transpiler/openapi/parsers/Builder.ts +1 -1
  286. package/src/transpiler/openapi/parsers/MethodParser.ts +1 -1
  287. package/src/transpiler/openapi/parsers/ReferenceBuilder.ts +1 -1
  288. package/src/util/error-logger.ts +4 -4
  289. package/src/util/logger.ts +3 -3
  290. package/tsconfig.json +21 -20
  291. package/tslint.json +5 -5
  292. package/lib/model/manifest-diff.d.ts +0 -27
  293. package/lib/model/manifest-diff.js +0 -69
  294. package/lib/model/manifest-diff.js.map +0 -1
  295. package/src/model/__tests__/manifest-diff.spec.ts +0 -139
  296. package/src/model/manifest-diff.ts +0 -94
  297. /package/docs/{index.html → __old/index.html} +0 -0
  298. /package/docs/{types → __old/types}/Classes/nspc.AnotherInterface.md +0 -0
  299. /package/docs/{types → __old/types}/Main/nspc.GroupedClass.md +0 -0
  300. /package/docs/{types → __old/types}/Misc-Group/nspc.EscapedAnnotations.md +0 -0
  301. /package/docs/{types → __old/types}/Misc-Group/nspc.GrandparentClass.md +0 -0
  302. /package/docs/{types → __old/types}/Misc-Group/nspc.InterfaceWithInheritance.md +0 -0
  303. /package/docs/{types → __old/types}/Misc-Group/nspc.MemberGrouping.md +0 -0
  304. /package/docs/{types → __old/types}/Misc-Group/nspc.ParentClass.md +0 -0
  305. /package/docs/{types → __old/types}/Misc-Group/nspc.Reference1.md +0 -0
  306. /package/docs/{types → __old/types}/Misc-Group/nspc.Reference2.md +0 -0
  307. /package/docs/{types → __old/types}/Misc-Group/nspc.Reference3.md +0 -0
  308. /package/docs/{types → __old/types}/Misc-Group/nspc.Reference4.md +0 -0
  309. /package/docs/{types → __old/types}/Misc-Group/nspc.Reference5.md +0 -0
  310. /package/docs/{types → __old/types}/Misc-Group/nspc.Reference6.md +0 -0
  311. /package/docs/{types → __old/types}/Misc-Group/nspc.Reference7.md +0 -0
  312. /package/docs/{types → __old/types}/Misc-Group/nspc.SampleClassWithoutModifier.md +0 -0
  313. /package/docs/{types → __old/types}/Misc-Group/nspc.SampleRestResource.md +0 -0
  314. /package/docs/{types → __old/types}/Misc-Group/nspc.SampleRestResourceWithInnerClass.md +0 -0
  315. /package/docs/{types → __old/types}/Misc-Group/nspc.SampleRestResourceWithoutApexDocs.md +0 -0
  316. /package/docs/{types → __old/types}/README.md +0 -0
  317. /package/docs/{types → __old/types}/Sample-Interfaces/nspc.SampleInterface.md +0 -0
@@ -0,0 +1,301 @@
1
+ # Template file
2
+
3
+ # BaseClass Class
4
+ `abstract`
5
+
6
+ ## Namespace
7
+ ns
8
+
9
+ ## Fields
10
+ ### `sampleEnumFromBase`
11
+
12
+ #### Type
13
+ [ns.SampleEnum](../Sample-Enums/ns.SampleEnum.md)
14
+
15
+
16
+ ---
17
+
18
+ # ParentInterface Interface
19
+
20
+ ## Namespace
21
+ ns
22
+
23
+ ## Methods
24
+ ### `sampleParentMethod()`
25
+
26
+ ### Signature
27
+ ```apex
28
+ public void sampleParentMethod()
29
+ ```
30
+
31
+ ### Returns
32
+ **void**
33
+
34
+
35
+ ---
36
+
37
+ # ReferencedEnum Enum
38
+
39
+ ## Namespace
40
+ ns
41
+
42
+ ## Enum Values
43
+
44
+
45
+ ---
46
+
47
+ # SampleClass Class
48
+ `virtual`
49
+
50
+ aliquip ex sunt officia ullamco anim deserunt magna aliquip nisi eiusmod in sit officia veniam ex
51
+
52
+ deserunt ea officia exercitation laboris enim in duis quis enim eiusmod eu amet cupidatat.
53
+
54
+ **Group** SampleGroup
55
+
56
+ ## Namespace
57
+ ns
58
+
59
+ ## Example
60
+ ```apex
61
+ SampleClass sample = new SampleClass();
62
+ sample.doSomething();
63
+ ```
64
+
65
+ **Extends**
66
+ [ns.BaseClass](../Miscellaneous/ns.BaseClass.md)
67
+
68
+ **Implements**
69
+ [ns.SampleInterface](../Miscellaneous/ns.SampleInterface.md),
70
+ [ns.ParentInterface](../Miscellaneous/ns.ParentInterface.md)
71
+
72
+ ## Fields
73
+ ### `name`
74
+
75
+ This is a sample field.
76
+
77
+ #### Type
78
+ String
79
+
80
+ ---
81
+
82
+ ### `sampleEnumFromBase`
83
+
84
+ *Inherited*
85
+
86
+ #### Type
87
+ [ns.SampleEnum](../Sample-Enums/ns.SampleEnum.md)
88
+
89
+ ## Constructors
90
+ ### `SampleClass()`
91
+
92
+ This is a sample constructor.
93
+
94
+ ### Signature
95
+ ```apex
96
+ public SampleClass()
97
+ ```
98
+
99
+ ---
100
+ ### `SampleClass(name)`
101
+
102
+ ### Signature
103
+ ```apex
104
+ public SampleClass(String name)
105
+ ```
106
+
107
+ ### Parameters
108
+ | Name | Type | Description |
109
+ |------|------|-------------|
110
+ | name | String | |
111
+
112
+ ## Methods
113
+ ### `sayHello()`
114
+
115
+ `DEPRECATED`
116
+
117
+ This is a sample method.
118
+
119
+ ### Signature
120
+ ```apex
121
+ public virtual String sayHello()
122
+ ```
123
+
124
+ ### Returns
125
+ **String**
126
+
127
+ A string value.
128
+
129
+ ### Example
130
+ ```apex
131
+ SampleClass sample = new SampleClass();
132
+ sample.doSomething();
133
+ ```
134
+
135
+
136
+ ---
137
+
138
+ # SampleEnum Enum
139
+
140
+ `NAMESPACEACCESSIBLE`
141
+
142
+ This is a sample enum. This references [ns.ReferencedEnum](../Miscellaneous/ns.ReferencedEnum.md) .
143
+
144
+ This description has several lines
145
+
146
+ **Some Custom**
147
+
148
+ **Group** Sample Enums
149
+
150
+ **Author** John Doe
151
+
152
+ **Date** 2022-01-01
153
+
154
+ **See** [ns.ReferencedEnum](../Miscellaneous/ns.ReferencedEnum.md)
155
+
156
+ ## Namespace
157
+ ns
158
+
159
+ ```mermaid
160
+ graph TD
161
+ A[SampleEnum] -->|references| B[ReferencedEnum]
162
+ B -->|referenced by| A
163
+ ```
164
+
165
+ ## Enum Values
166
+ ### VALUE1
167
+ This is value 1
168
+ ### VALUE2
169
+ This is value 2
170
+ ### VALUE3
171
+ This is value 3
172
+
173
+
174
+ ---
175
+
176
+ # SampleException Class
177
+
178
+ ## Namespace
179
+ ns
180
+
181
+ **Extends**
182
+ Exception
183
+
184
+
185
+ ---
186
+
187
+ # SampleInterface Interface
188
+
189
+ `NAMESPACEACCESSIBLE`
190
+
191
+ This is a sample interface
192
+
193
+ **Author** John Doe
194
+
195
+ **Date** 2020-01-01
196
+
197
+ **See** [ns.SampleEnum](../Sample-Enums/ns.SampleEnum.md)
198
+
199
+ **See** [ns.ReferencedEnum](./ns.ReferencedEnum.md)
200
+
201
+ ## Namespace
202
+ ns
203
+
204
+ ```mermaid
205
+ graph TD
206
+ A[SampleInterface] -->|extends| B[ParentInterface]
207
+ B -->|extends| C[GrandParentInterface]
208
+ C -->|extends| D[GreatGrandParentInterface]
209
+ ```
210
+
211
+ ## Example
212
+ ```apex
213
+ SampleInterface sampleInterface = new SampleInterface();
214
+ sampleInterface.sampleMethod();
215
+ ```
216
+
217
+ **Extends**
218
+ [ns.ParentInterface](./ns.ParentInterface.md)
219
+
220
+ ## Methods
221
+ ### `sampleMethod()`
222
+
223
+ `NAMESPACEACCESSIBLE`
224
+
225
+ This is a sample method
226
+
227
+ **Custom Tag**
228
+
229
+ **Another Custom Tag**
230
+
231
+ ### Signature
232
+ ```apex
233
+ public String sampleMethod()
234
+ ```
235
+
236
+ ### Returns
237
+ **String**
238
+
239
+ Some return value
240
+
241
+ ### Throws
242
+ [ns.SampleException](./ns.SampleException.md): This is a sample exception
243
+
244
+ AnotherSampleException: This is another sample exception
245
+
246
+ ```mermaid
247
+ graph TD
248
+ A[SampleInterface] -->|extends| B[ParentInterface]
249
+ B -->|extends| C[GrandParentInterface]
250
+ C -->|extends| D[GreatGrandParentInterface]
251
+ ```
252
+
253
+ ### Example
254
+ ```apex
255
+ SampleInterface sampleInterface = new SampleInterface();
256
+ sampleInterface.sampleMethod();
257
+ ```
258
+
259
+ ---
260
+
261
+ ### `sampleMethodWithParams(param1, param2, theEnum)`
262
+
263
+ `NAMESPACEACCESSIBLE`
264
+ `DEPRECATED`
265
+
266
+ This is a sample method with parameters
267
+
268
+ Sometimes it won't be possible to find a NonExistent link.
269
+
270
+ ### Signature
271
+ ```apex
272
+ public SampleEnum sampleMethodWithParams(String param1, Integer param2, SampleEnum theEnum)
273
+ ```
274
+
275
+ ### Parameters
276
+ | Name | Type | Description |
277
+ |------|------|-------------|
278
+ | param1 | String | This is the first parameter |
279
+ | param2 | Integer | This is the second parameter |
280
+ | theEnum | [ns.SampleEnum](../Sample-Enums/ns.SampleEnum.md) | This is an enum parameter |
281
+
282
+ ### Returns
283
+ **[ns.SampleEnum](../Sample-Enums/ns.SampleEnum.md)**
284
+
285
+ Some return value
286
+
287
+ ---
288
+
289
+ ### `sampleParentMethod()`
290
+
291
+ *Inherited*
292
+
293
+ ### Signature
294
+ ```apex
295
+ public void sampleParentMethod()
296
+ ```
297
+
298
+ ### Returns
299
+ **void**
300
+
301
+
@@ -0,0 +1,5 @@
1
+ {
2
+ "orgName": "cesarparra company",
3
+ "edition": "Developer",
4
+ "features": []
5
+ }
@@ -0,0 +1,3 @@
1
+ public abstract class BaseClass {
2
+ public SampleEnum sampleEnumFromBase;
3
+ }
@@ -0,0 +1,3 @@
1
+ public interface ParentInterface {
2
+ void sampleParentMethod();
3
+ }
@@ -0,0 +1,3 @@
1
+ public enum ReferencedEnum {
2
+
3
+ }
@@ -0,0 +1,35 @@
1
+ /**
2
+ * @description aliquip ex sunt officia ullamco anim deserunt magna aliquip nisi eiusmod in sit officia veniam ex
3
+ * deserunt ea officia exercitation laboris enim in duis quis enim eiusmod eu amet cupidatat.
4
+ * @group SampleGroup
5
+ * @example
6
+ * SampleClass sample = new SampleClass();
7
+ * sample.doSomething();
8
+ */
9
+ public with sharing virtual class SampleClass extends BaseClass implements SampleInterface, ParentInterface {
10
+ /**
11
+ * @description This is a sample field.
12
+ */
13
+ private final String name;
14
+
15
+ /**
16
+ * @description This is a sample constructor.
17
+ */
18
+ public SampleClass() {}
19
+
20
+ public SampleClass(String name) {
21
+ this.name = name;
22
+ }
23
+
24
+ /**
25
+ * @description This is a sample method.
26
+ * @return A string value.
27
+ * @example
28
+ * SampleClass sample = new SampleClass();
29
+ * sample.doSomething();
30
+ */
31
+ @Deprecated
32
+ public virtual String sayHello() {
33
+ return 'Hello';
34
+ }
35
+ }
@@ -0,0 +1,30 @@
1
+ /**
2
+ * @description This is a sample enum. This references {@link ReferencedEnum}.
3
+ *
4
+ * This description has several lines
5
+ * @group Sample Enums
6
+ * @author John Doe
7
+ * @date 2022-01-01
8
+ * @some-custom Test. I can also have a {@link ReferencedEnum} here.
9
+ * And it can be multiline.
10
+ * @see ReferencedEnum
11
+ * @mermaid
12
+ * graph TD
13
+ * A[SampleEnum] -->|references| B[ReferencedEnum]
14
+ * B -->|referenced by| A
15
+ */
16
+ @NamespaceAccessible
17
+ public enum SampleEnum {
18
+ /**
19
+ * @description This is value 1
20
+ */
21
+ VALUE1,
22
+ /**
23
+ * @description This is value 2
24
+ */
25
+ VALUE2,
26
+ /**
27
+ * @description This is value 3
28
+ */
29
+ VALUE3
30
+ }
@@ -0,0 +1 @@
1
+ public class SampleException extends Exception {}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * @description This is a sample interface
3
+ * @author John Doe
4
+ * @date 2020-01-01
5
+ * @see SampleEnum
6
+ * @see ReferencedEnum
7
+ * @mermaid
8
+ * graph TD
9
+ * A[SampleInterface] -->|extends| B[ParentInterface]
10
+ * B -->|extends| C[GrandParentInterface]
11
+ * C -->|extends| D[GreatGrandParentInterface]
12
+ * @example
13
+ * SampleInterface sampleInterface = new SampleInterface();
14
+ * sampleInterface.sampleMethod();
15
+ */
16
+ @NamespaceAccessible
17
+ public interface SampleInterface extends ParentInterface {
18
+ /**
19
+ * @description This is a sample method
20
+ * @return Some return value
21
+ * @throws SampleException This is a sample exception
22
+ * @throws AnotherSampleException This is another sample exception
23
+ * @custom-tag This is a custom tag
24
+ * @another-custom-tag This is another custom tag
25
+ * @mermaid
26
+ * graph TD
27
+ * A[SampleInterface] -->|extends| B[ParentInterface]
28
+ * B -->|extends| C[GrandParentInterface]
29
+ * C -->|extends| D[GreatGrandParentInterface]
30
+ * @example
31
+ * SampleInterface sampleInterface = new SampleInterface();
32
+ * sampleInterface.sampleMethod();
33
+ */
34
+ String sampleMethod();
35
+
36
+ /**
37
+ * @description This is a sample method with parameters
38
+ * Sometimes it won't be possible to find a {@link NonExistent} link.
39
+ * @param param1 This is the first parameter
40
+ * @param param2 This is the second parameter
41
+ * @param theEnum This is an enum parameter
42
+ * @return Some return value
43
+ */
44
+ @Deprecated
45
+ SampleEnum sampleMethodWithParams(String param1, Integer param2, SampleEnum theEnum);
46
+ }