@xpack/doxygen2docusaurus 2.0.0 → 2.1.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.
- package/LICENSE +1 -1
- package/README.md +2 -1
- package/bin/doxygen2docusaurus.js +1 -1
- package/dist/cli/main.d.ts +0 -14
- package/dist/cli/main.d.ts.map +1 -1
- package/dist/cli/main.js +0 -34
- package/dist/cli/main.js.map +1 -1
- package/dist/docusaurus/cli-options.d.ts +3 -292
- package/dist/docusaurus/cli-options.d.ts.map +1 -1
- package/dist/docusaurus/cli-options.js +6 -290
- package/dist/docusaurus/cli-options.js.map +1 -1
- package/dist/docusaurus/generator.d.ts +0 -172
- package/dist/docusaurus/generator.d.ts.map +1 -1
- package/dist/docusaurus/generator.js +20 -280
- package/dist/docusaurus/generator.js.map +1 -1
- package/dist/docusaurus/renderers/descriptiontype.d.ts +0 -417
- package/dist/docusaurus/renderers/descriptiontype.d.ts.map +1 -1
- package/dist/docusaurus/renderers/descriptiontype.js +11 -555
- package/dist/docusaurus/renderers/descriptiontype.js.map +1 -1
- package/dist/docusaurus/renderers/docinternalstype.d.ts +0 -132
- package/dist/docusaurus/renderers/docinternalstype.d.ts.map +1 -1
- package/dist/docusaurus/renderers/docinternalstype.js +0 -156
- package/dist/docusaurus/renderers/docinternalstype.js.map +1 -1
- package/dist/docusaurus/renderers/doclisttype.d.ts +0 -22
- package/dist/docusaurus/renderers/doclisttype.d.ts.map +1 -1
- package/dist/docusaurus/renderers/doclisttype.js +0 -42
- package/dist/docusaurus/renderers/doclisttype.js.map +1 -1
- package/dist/docusaurus/renderers/doctabletype.d.ts +0 -88
- package/dist/docusaurus/renderers/doctabletype.d.ts.map +1 -1
- package/dist/docusaurus/renderers/doctabletype.js +1 -113
- package/dist/docusaurus/renderers/doctabletype.js.map +1 -1
- package/dist/docusaurus/renderers/doctitletype.d.ts +0 -22
- package/dist/docusaurus/renderers/doctitletype.d.ts.map +1 -1
- package/dist/docusaurus/renderers/doctitletype.js +0 -42
- package/dist/docusaurus/renderers/doctitletype.js.map +1 -1
- package/dist/docusaurus/renderers/docvariablelisttype.d.ts +0 -44
- package/dist/docusaurus/renderers/docvariablelisttype.d.ts.map +1 -1
- package/dist/docusaurus/renderers/docvariablelisttype.js +1 -69
- package/dist/docusaurus/renderers/docvariablelisttype.js.map +1 -1
- package/dist/docusaurus/renderers/docxrefsecttype.d.ts +0 -22
- package/dist/docusaurus/renderers/docxrefsecttype.d.ts.map +1 -1
- package/dist/docusaurus/renderers/docxrefsecttype.js +0 -38
- package/dist/docusaurus/renderers/docxrefsecttype.js.map +1 -1
- package/dist/docusaurus/renderers/element-renderer-base.d.ts +0 -74
- package/dist/docusaurus/renderers/element-renderer-base.d.ts.map +1 -1
- package/dist/docusaurus/renderers/element-renderer-base.js +0 -64
- package/dist/docusaurus/renderers/element-renderer-base.js.map +1 -1
- package/dist/docusaurus/renderers/inctype.d.ts +0 -23
- package/dist/docusaurus/renderers/inctype.d.ts.map +1 -1
- package/dist/docusaurus/renderers/inctype.js +0 -41
- package/dist/docusaurus/renderers/inctype.js.map +1 -1
- package/dist/docusaurus/renderers/linkedtexttype.d.ts +0 -22
- package/dist/docusaurus/renderers/linkedtexttype.d.ts.map +1 -1
- package/dist/docusaurus/renderers/linkedtexttype.js +0 -45
- package/dist/docusaurus/renderers/linkedtexttype.js.map +1 -1
- package/dist/docusaurus/renderers/listingtype.d.ts +0 -52
- package/dist/docusaurus/renderers/listingtype.d.ts.map +1 -1
- package/dist/docusaurus/renderers/listingtype.js +1 -88
- package/dist/docusaurus/renderers/listingtype.js.map +1 -1
- package/dist/docusaurus/renderers/paramtype.d.ts +0 -22
- package/dist/docusaurus/renderers/paramtype.d.ts.map +1 -1
- package/dist/docusaurus/renderers/paramtype.js +2 -51
- package/dist/docusaurus/renderers/paramtype.js.map +1 -1
- package/dist/docusaurus/renderers/referencetype.d.ts +0 -23
- package/dist/docusaurus/renderers/referencetype.d.ts.map +1 -1
- package/dist/docusaurus/renderers/referencetype.js +0 -38
- package/dist/docusaurus/renderers/referencetype.js.map +1 -1
- package/dist/docusaurus/renderers/reftexttype.d.ts +0 -22
- package/dist/docusaurus/renderers/reftexttype.d.ts.map +1 -1
- package/dist/docusaurus/renderers/reftexttype.js +0 -38
- package/dist/docusaurus/renderers/reftexttype.js.map +1 -1
- package/dist/docusaurus/renderers/reftype.d.ts +0 -22
- package/dist/docusaurus/renderers/reftype.d.ts.map +1 -1
- package/dist/docusaurus/renderers/reftype.js +0 -38
- package/dist/docusaurus/renderers/reftype.js.map +1 -1
- package/dist/docusaurus/renderers/renderers.d.ts +0 -151
- package/dist/docusaurus/renderers/renderers.d.ts.map +1 -1
- package/dist/docusaurus/renderers/renderers.js +4 -184
- package/dist/docusaurus/renderers/renderers.js.map +1 -1
- package/dist/docusaurus/renderers/substringtype.d.ts +0 -22
- package/dist/docusaurus/renderers/substringtype.d.ts.map +1 -1
- package/dist/docusaurus/renderers/substringtype.js +0 -39
- package/dist/docusaurus/renderers/substringtype.js.map +1 -1
- package/dist/docusaurus/renderers/tableofcontentstype.d.ts +0 -22
- package/dist/docusaurus/renderers/tableofcontentstype.d.ts.map +1 -1
- package/dist/docusaurus/renderers/tableofcontentstype.js +0 -39
- package/dist/docusaurus/renderers/tableofcontentstype.js.map +1 -1
- package/dist/docusaurus/types.d.ts +0 -110
- package/dist/docusaurus/types.d.ts.map +1 -1
- package/dist/docusaurus/types.js +0 -11
- package/dist/docusaurus/types.js.map +1 -1
- package/dist/docusaurus/utils.d.ts +0 -214
- package/dist/docusaurus/utils.d.ts.map +1 -1
- package/dist/docusaurus/utils.js +0 -296
- package/dist/docusaurus/utils.js.map +1 -1
- package/dist/docusaurus/view-model/classes-vm.d.ts +0 -137
- package/dist/docusaurus/view-model/classes-vm.d.ts.map +1 -1
- package/dist/docusaurus/view-model/classes-vm.js +9 -225
- package/dist/docusaurus/view-model/classes-vm.js.map +1 -1
- package/dist/docusaurus/view-model/collection-base.d.ts +0 -120
- package/dist/docusaurus/view-model/collection-base.d.ts.map +1 -1
- package/dist/docusaurus/view-model/collection-base.js +11 -101
- package/dist/docusaurus/view-model/collection-base.js.map +1 -1
- package/dist/docusaurus/view-model/compound-base-vm.d.ts +2 -147
- package/dist/docusaurus/view-model/compound-base-vm.d.ts.map +1 -1
- package/dist/docusaurus/view-model/compound-base-vm.js +47 -225
- package/dist/docusaurus/view-model/compound-base-vm.js.map +1 -1
- package/dist/docusaurus/view-model/concepts-vm.d.ts +26 -0
- package/dist/docusaurus/view-model/concepts-vm.d.ts.map +1 -0
- package/dist/docusaurus/view-model/concepts-vm.js +329 -0
- package/dist/docusaurus/view-model/concepts-vm.js.map +1 -0
- package/dist/docusaurus/view-model/description-anchors.d.ts +0 -58
- package/dist/docusaurus/view-model/description-anchors.d.ts.map +1 -1
- package/dist/docusaurus/view-model/description-anchors.js +0 -71
- package/dist/docusaurus/view-model/description-anchors.js.map +1 -1
- package/dist/docusaurus/view-model/files-and-folders-vm.d.ts +0 -247
- package/dist/docusaurus/view-model/files-and-folders-vm.d.ts.map +1 -1
- package/dist/docusaurus/view-model/files-and-folders-vm.js +61 -353
- package/dist/docusaurus/view-model/files-and-folders-vm.js.map +1 -1
- package/dist/docusaurus/view-model/groups-vm.d.ts +0 -148
- package/dist/docusaurus/view-model/groups-vm.d.ts.map +1 -1
- package/dist/docusaurus/view-model/groups-vm.js +2 -223
- package/dist/docusaurus/view-model/groups-vm.js.map +1 -1
- package/dist/docusaurus/view-model/members-vm.d.ts +0 -552
- package/dist/docusaurus/view-model/members-vm.d.ts.map +1 -1
- package/dist/docusaurus/view-model/members-vm.js +17 -702
- package/dist/docusaurus/view-model/members-vm.js.map +1 -1
- package/dist/docusaurus/view-model/namespaces-vm.d.ts +4 -199
- package/dist/docusaurus/view-model/namespaces-vm.d.ts.map +1 -1
- package/dist/docusaurus/view-model/namespaces-vm.js +79 -284
- package/dist/docusaurus/view-model/namespaces-vm.js.map +1 -1
- package/dist/docusaurus/view-model/options.d.ts +0 -43
- package/dist/docusaurus/view-model/options.d.ts.map +1 -1
- package/dist/docusaurus/view-model/options.js +0 -57
- package/dist/docusaurus/view-model/options.js.map +1 -1
- package/dist/docusaurus/view-model/pages-vm.d.ts +0 -115
- package/dist/docusaurus/view-model/pages-vm.d.ts.map +1 -1
- package/dist/docusaurus/view-model/pages-vm.js +0 -162
- package/dist/docusaurus/view-model/pages-vm.js.map +1 -1
- package/dist/docusaurus/view-model/tree-entries-vm.d.ts +8 -142
- package/dist/docusaurus/view-model/tree-entries-vm.d.ts.map +1 -1
- package/dist/docusaurus/view-model/tree-entries-vm.js +54 -174
- package/dist/docusaurus/view-model/tree-entries-vm.js.map +1 -1
- package/dist/docusaurus/view-model/view-model.d.ts +0 -125
- package/dist/docusaurus/view-model/view-model.d.ts.map +1 -1
- package/dist/docusaurus/view-model/view-model.js +20 -182
- package/dist/docusaurus/view-model/view-model.js.map +1 -1
- package/dist/docusaurus/workspace.d.ts +1 -126
- package/dist/docusaurus/workspace.d.ts.map +1 -1
- package/dist/docusaurus/workspace.js +8 -221
- package/dist/docusaurus/workspace.js.map +1 -1
- package/dist/doxygen/data-model/compounds/compounddef-dm.d.ts +5 -492
- package/dist/doxygen/data-model/compounds/compounddef-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/compounddef-dm.js +23 -672
- package/dist/doxygen/data-model/compounds/compounddef-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/compoundreftype-dm.d.ts +0 -129
- package/dist/doxygen/data-model/compounds/compoundreftype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/compoundreftype-dm.js +1 -145
- package/dist/doxygen/data-model/compounds/compoundreftype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/descriptiontype-dm.d.ts +104 -2848
- package/dist/doxygen/data-model/compounds/descriptiontype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/descriptiontype-dm.js +73 -3975
- package/dist/doxygen/data-model/compounds/descriptiontype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.d.ts +0 -165
- package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.js +0 -229
- package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/doxygentype-dm.d.ts +0 -70
- package/dist/doxygen/data-model/compounds/doxygentype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/doxygentype-dm.js +0 -105
- package/dist/doxygen/data-model/compounds/doxygentype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/enumvaluetype-dm.d.ts +0 -84
- package/dist/doxygen/data-model/compounds/enumvaluetype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/enumvaluetype-dm.js +1 -122
- package/dist/doxygen/data-model/compounds/enumvaluetype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/inctype-dm.d.ts +0 -116
- package/dist/doxygen/data-model/compounds/inctype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/inctype-dm.js +3 -155
- package/dist/doxygen/data-model/compounds/inctype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/linkedtexttype-dm.d.ts +3 -138
- package/dist/doxygen/data-model/compounds/linkedtexttype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/linkedtexttype-dm.js +5 -180
- package/dist/doxygen/data-model/compounds/linkedtexttype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.d.ts +0 -76
- package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.js +0 -107
- package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/locationtype-dm.d.ts +0 -162
- package/dist/doxygen/data-model/compounds/locationtype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/locationtype-dm.js +4 -203
- package/dist/doxygen/data-model/compounds/locationtype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/memberdeftype-dm.d.ts +2 -443
- package/dist/doxygen/data-model/compounds/memberdeftype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/memberdeftype-dm.js +19 -475
- package/dist/doxygen/data-model/compounds/memberdeftype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/memberreftype-dm.d.ts +0 -141
- package/dist/doxygen/data-model/compounds/memberreftype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/memberreftype-dm.js +0 -176
- package/dist/doxygen/data-model/compounds/memberreftype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/membertype-dm.d.ts +0 -101
- package/dist/doxygen/data-model/compounds/membertype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/membertype-dm.js +0 -115
- package/dist/doxygen/data-model/compounds/membertype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/paramtype-dm.d.ts +0 -164
- package/dist/doxygen/data-model/compounds/paramtype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/paramtype-dm.js +0 -208
- package/dist/doxygen/data-model/compounds/paramtype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/referencetype-dm.d.ts +0 -139
- package/dist/doxygen/data-model/compounds/referencetype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/referencetype-dm.js +2 -175
- package/dist/doxygen/data-model/compounds/referencetype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/reftexttype-dm.d.ts +0 -120
- package/dist/doxygen/data-model/compounds/reftexttype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/reftexttype-dm.js +2 -141
- package/dist/doxygen/data-model/compounds/reftexttype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/reftype-dm.d.ts +0 -268
- package/dist/doxygen/data-model/compounds/reftype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/reftype-dm.js +4 -326
- package/dist/doxygen/data-model/compounds/reftype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/reimplementtype-dm.d.ts +0 -105
- package/dist/doxygen/data-model/compounds/reimplementtype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/reimplementtype-dm.js +1 -139
- package/dist/doxygen/data-model/compounds/reimplementtype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/sectiondeftype-dm.d.ts +0 -168
- package/dist/doxygen/data-model/compounds/sectiondeftype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/sectiondeftype-dm.js +0 -209
- package/dist/doxygen/data-model/compounds/sectiondeftype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.d.ts +0 -267
- package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.js +0 -354
- package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.js.map +1 -1
- package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.d.ts +0 -66
- package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.js +0 -97
- package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.js.map +1 -1
- package/dist/doxygen/data-model/data-model.d.ts +0 -149
- package/dist/doxygen/data-model/data-model.d.ts.map +1 -1
- package/dist/doxygen/data-model/data-model.js +4 -197
- package/dist/doxygen/data-model/data-model.js.map +1 -1
- package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.d.ts +0 -115
- package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.js +4 -129
- package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.js.map +1 -1
- package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.d.ts +0 -87
- package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.js +0 -118
- package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.js.map +1 -1
- package/dist/doxygen/data-model/doxygen-xml-parser.d.ts +0 -253
- package/dist/doxygen/data-model/doxygen-xml-parser.d.ts.map +1 -1
- package/dist/doxygen/data-model/doxygen-xml-parser.js +0 -291
- package/dist/doxygen/data-model/doxygen-xml-parser.js.map +1 -1
- package/dist/doxygen/data-model/index/indexcompoundtype-dm.d.ts +0 -98
- package/dist/doxygen/data-model/index/indexcompoundtype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/index/indexcompoundtype-dm.js +2 -122
- package/dist/doxygen/data-model/index/indexcompoundtype-dm.js.map +1 -1
- package/dist/doxygen/data-model/index/indexdoxygentype-dm.d.ts +0 -82
- package/dist/doxygen/data-model/index/indexdoxygentype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/index/indexdoxygentype-dm.js +0 -114
- package/dist/doxygen/data-model/index/indexdoxygentype-dm.js.map +1 -1
- package/dist/doxygen/data-model/index/indexmembertype-dm.d.ts +0 -85
- package/dist/doxygen/data-model/index/indexmembertype-dm.d.ts.map +1 -1
- package/dist/doxygen/data-model/index/indexmembertype-dm.js +1 -107
- package/dist/doxygen/data-model/index/indexmembertype-dm.js.map +1 -1
- package/dist/doxygen/data-model/types.d.ts +0 -104
- package/dist/doxygen/data-model/types.d.ts.map +1 -1
- package/dist/doxygen/data-model/types.js +0 -52
- package/dist/doxygen/data-model/types.js.map +1 -1
- package/dist/index.d.ts +4 -16
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -42
- package/dist/index.js.map +1 -1
- package/package.json +45 -51
- package/src/cli/main.ts +122 -0
- package/src/docusaurus/cli-options.ts +560 -0
- package/src/docusaurus/generator.ts +788 -0
- package/src/docusaurus/renderers/descriptiontype.ts +1299 -0
- package/src/docusaurus/renderers/docinternalstype.ts +354 -0
- package/src/docusaurus/renderers/doclisttype.ts +134 -0
- package/src/docusaurus/renderers/doctabletype.ts +220 -0
- package/src/docusaurus/renderers/doctitletype.ts +77 -0
- package/src/docusaurus/renderers/docvariablelisttype.ts +123 -0
- package/src/docusaurus/renderers/docxrefsecttype.ts +84 -0
- package/src/docusaurus/renderers/element-renderer-base.ts +112 -0
- package/src/docusaurus/renderers/inctype.ts +75 -0
- package/src/docusaurus/renderers/linkedtexttype.ts +64 -0
- package/src/docusaurus/renderers/listingtype.ts +235 -0
- package/src/docusaurus/renderers/paramtype.ts +116 -0
- package/src/docusaurus/renderers/referencetype.ts +83 -0
- package/src/docusaurus/renderers/reftexttype.ts +81 -0
- package/src/docusaurus/renderers/reftype.ts +77 -0
- package/src/docusaurus/renderers/renderers.ts +756 -0
- package/src/docusaurus/renderers/substringtype.ts +53 -0
- package/src/docusaurus/renderers/tableofcontentstype.ts +74 -0
- package/src/docusaurus/types.ts +187 -0
- package/src/docusaurus/utils.ts +409 -0
- package/src/docusaurus/view-model/README.md +12 -0
- package/src/docusaurus/view-model/classes-vm.ts +1088 -0
- package/src/docusaurus/view-model/collection-base.ts +352 -0
- package/src/docusaurus/view-model/compound-base-vm.ts +1340 -0
- package/src/docusaurus/view-model/concepts-vm.ts +719 -0
- package/src/docusaurus/view-model/description-anchors.ts +107 -0
- package/src/docusaurus/view-model/files-and-folders-vm.ts +1293 -0
- package/src/docusaurus/view-model/groups-vm.ts +548 -0
- package/src/docusaurus/view-model/members-vm.ts +1943 -0
- package/src/docusaurus/view-model/namespaces-vm.ts +1018 -0
- package/src/docusaurus/view-model/options.ts +95 -0
- package/src/docusaurus/view-model/pages-vm.ts +342 -0
- package/src/docusaurus/view-model/tree-entries-vm.ts +376 -0
- package/src/docusaurus/view-model/view-model.ts +513 -0
- package/src/docusaurus/workspace.ts +588 -0
- package/src/doxygen/data-model/README.md +13 -0
- package/src/doxygen/data-model/compounds/compounddef-dm.ts +1156 -0
- package/src/doxygen/data-model/compounds/compoundreftype-dm.ts +266 -0
- package/src/doxygen/data-model/compounds/descriptiontype-dm.ts +10107 -0
- package/src/doxygen/data-model/compounds/docvarlistentrytype-dm.ts +354 -0
- package/src/doxygen/data-model/compounds/doxygentype-dm.ts +187 -0
- package/src/doxygen/data-model/compounds/enumvaluetype-dm.ts +218 -0
- package/src/doxygen/data-model/compounds/inctype-dm.ts +217 -0
- package/src/doxygen/data-model/compounds/linkedtexttype-dm.ts +288 -0
- package/src/doxygen/data-model/compounds/listofallmemberstype-dm.ts +160 -0
- package/src/doxygen/data-model/compounds/locationtype-dm.ts +284 -0
- package/src/doxygen/data-model/compounds/memberdeftype-dm.ts +874 -0
- package/src/doxygen/data-model/compounds/memberreftype-dm.ts +270 -0
- package/src/doxygen/data-model/compounds/membertype-dm.ts +239 -0
- package/src/doxygen/data-model/compounds/paramtype-dm.ts +302 -0
- package/src/doxygen/data-model/compounds/referencetype-dm.ts +248 -0
- package/src/doxygen/data-model/compounds/reftexttype-dm.ts +234 -0
- package/src/doxygen/data-model/compounds/reftype-dm.ts +430 -0
- package/src/doxygen/data-model/compounds/reimplementtype-dm.ts +201 -0
- package/src/doxygen/data-model/compounds/sectiondeftype-dm.ts +330 -0
- package/src/doxygen/data-model/compounds/tableofcontentstype-dm.ts +563 -0
- package/src/doxygen/data-model/compounds/templateparamlisttype-dm.ts +150 -0
- package/src/doxygen/data-model/data-model.ts +377 -0
- package/src/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.ts +271 -0
- package/src/doxygen/data-model/doxyfile/doxyfiletype-dm.ts +200 -0
- package/src/doxygen/data-model/doxygen-xml-parser.ts +522 -0
- package/src/doxygen/data-model/index/indexcompoundtype-dm.ts +256 -0
- package/src/doxygen/data-model/index/indexdoxygentype-dm.ts +196 -0
- package/src/doxygen/data-model/index/indexmembertype-dm.ts +230 -0
- package/src/doxygen/data-model/types.ts +175 -0
- package/src/doxygen/data-model/xsds/README.md +6 -0
- package/src/doxygen/data-model/xsds/compound.xsd +1699 -0
- package/src/doxygen/data-model/xsds/doxyfile.xsd +355 -0
- package/src/doxygen/data-model/xsds/index.xsd +72 -0
- package/src/doxygen/data-model/xsds/xml.xsd +23 -0
- package/src/index.ts +261 -0
- package/src/tsconfig.json +10 -0
- package/dist/doxygen2docusaurus.d.ts +0 -4774
- package/dist/tsconfig.tsbuildinfo +0 -1
- package/dist/tsdoc-metadata.json +0 -11
|
@@ -0,0 +1,302 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* This file is part of the xPack project (http://xpack.github.io).
|
|
3
|
+
* Copyright (c) 2025-2026 Liviu Ionescu. All rights reserved.
|
|
4
|
+
*
|
|
5
|
+
* Permission to use, copy, modify, and/or distribute this software
|
|
6
|
+
* for any purpose is hereby granted, under the terms of the MIT license.
|
|
7
|
+
*
|
|
8
|
+
* If a copy of the license was not distributed with this file, it can
|
|
9
|
+
* be obtained from https://opensource.org/licenses/MIT.
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
// ----------------------------------------------------------------------------
|
|
13
|
+
|
|
14
|
+
import assert from 'node:assert'
|
|
15
|
+
import * as util from 'node:util'
|
|
16
|
+
|
|
17
|
+
import { DoxygenXmlParser } from '../doxygen-xml-parser.js'
|
|
18
|
+
import { BriefDescriptionDataModel } from './descriptiontype-dm.js'
|
|
19
|
+
import {
|
|
20
|
+
DefValDataModel,
|
|
21
|
+
TypeDataModel,
|
|
22
|
+
TypeConstraintDataModel,
|
|
23
|
+
} from './linkedtexttype-dm.js'
|
|
24
|
+
import { AbstractDataModelBase } from '../types.js'
|
|
25
|
+
|
|
26
|
+
// ----------------------------------------------------------------------------
|
|
27
|
+
|
|
28
|
+
// <xsd:complexType name="paramType">
|
|
29
|
+
// <xsd:sequence>
|
|
30
|
+
// <xsd:element name="attributes" type="xsd:string" minOccurs="0" />
|
|
31
|
+
// <xsd:element name="type" type="linkedTextType" minOccurs="0" />
|
|
32
|
+
// <xsd:element name="declname" type="xsd:string" minOccurs="0" />
|
|
33
|
+
// <xsd:element name="defname" type="xsd:string" minOccurs="0" />
|
|
34
|
+
// <xsd:element name="array" type="xsd:string" minOccurs="0" />
|
|
35
|
+
// <xsd:element name="defval" type="linkedTextType" minOccurs="0" />
|
|
36
|
+
// <xsd:element name="typeconstraint" type="linkedTextType" minOccurs="0" />
|
|
37
|
+
// <xsd:element name="briefdescription" type="descriptionType" minOccurs="0" />
|
|
38
|
+
// </xsd:sequence>
|
|
39
|
+
// </xsd:complexType>
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Abstract base class for parameter data models within documentation.
|
|
43
|
+
*
|
|
44
|
+
* @remarks
|
|
45
|
+
* Represents comprehensive parameter information as defined by the paramType
|
|
46
|
+
* XML Schema, handling function and method parameter definitions including
|
|
47
|
+
* type information, naming variations, default values, and constraints.
|
|
48
|
+
* This class processes the complete range of parameter metadata required
|
|
49
|
+
* for accurate function signature documentation.
|
|
50
|
+
*
|
|
51
|
+
* The implementation manages optional parameter elements including
|
|
52
|
+
* attributes, type specifications with linked text support, declaration
|
|
53
|
+
* and definition names, array specifications, default values, type
|
|
54
|
+
* constraints, and brief descriptions. All elements are optional,
|
|
55
|
+
* reflecting the flexible nature of parameter documentation within
|
|
56
|
+
* different programming contexts.
|
|
57
|
+
*
|
|
58
|
+
* @public
|
|
59
|
+
*/
|
|
60
|
+
export abstract class AbstractParamType extends AbstractDataModelBase {
|
|
61
|
+
/**
|
|
62
|
+
* Parameter attributes specification string.
|
|
63
|
+
*
|
|
64
|
+
* @remarks
|
|
65
|
+
* Contains language-specific parameter attributes such as qualifiers,
|
|
66
|
+
* modifiers, or annotations that apply to the parameter declaration.
|
|
67
|
+
* This information provides additional context about parameter
|
|
68
|
+
* behaviour and constraints within the function signature.
|
|
69
|
+
*
|
|
70
|
+
* @public
|
|
71
|
+
*/
|
|
72
|
+
attributes?: string | undefined
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Type information for the parameter with linked text support.
|
|
76
|
+
*
|
|
77
|
+
* @remarks
|
|
78
|
+
* Provides comprehensive type data including cross-references and
|
|
79
|
+
* embedded links to type definitions. This enables rich type
|
|
80
|
+
* presentation with navigation capabilities to related type
|
|
81
|
+
* documentation within the system.
|
|
82
|
+
*
|
|
83
|
+
* @public
|
|
84
|
+
*/
|
|
85
|
+
type?: TypeDataModel | undefined
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* The declared parameter name as it appears in the declaration.
|
|
89
|
+
*
|
|
90
|
+
* @remarks
|
|
91
|
+
* Contains the parameter name as specified in the function or method
|
|
92
|
+
* declaration, representing the formal parameter identifier used
|
|
93
|
+
* within the function signature for identification purposes.
|
|
94
|
+
*
|
|
95
|
+
* @public
|
|
96
|
+
*/
|
|
97
|
+
declname?: string | undefined
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* The defined parameter name as it appears in the definition.
|
|
101
|
+
*
|
|
102
|
+
* @remarks
|
|
103
|
+
* Contains the parameter name as used in the function or method
|
|
104
|
+
* definition, which may differ from the declaration name in contexts
|
|
105
|
+
* where declarations and definitions are separate (such as header
|
|
106
|
+
* and implementation files).
|
|
107
|
+
*
|
|
108
|
+
* @public
|
|
109
|
+
*/
|
|
110
|
+
defname?: string | undefined
|
|
111
|
+
|
|
112
|
+
/**
|
|
113
|
+
* Array specification information for array parameters.
|
|
114
|
+
*
|
|
115
|
+
* @remarks
|
|
116
|
+
* Contains array dimension information and specifications when the
|
|
117
|
+
* parameter represents an array type. This includes array bounds,
|
|
118
|
+
* size specifications, and dimensional characteristics essential
|
|
119
|
+
* for accurate parameter documentation.
|
|
120
|
+
*
|
|
121
|
+
* @public
|
|
122
|
+
*/
|
|
123
|
+
array?: string | undefined
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Default value specification with linked text support.
|
|
127
|
+
*
|
|
128
|
+
* @remarks
|
|
129
|
+
* Provides the parameter's default value information including
|
|
130
|
+
* cross-references to related elements when the default value
|
|
131
|
+
* contains references to other documented entities. This enables
|
|
132
|
+
* comprehensive default value presentation with navigation
|
|
133
|
+
* capabilities.
|
|
134
|
+
*
|
|
135
|
+
* @public
|
|
136
|
+
*/
|
|
137
|
+
defval?: DefValDataModel | undefined
|
|
138
|
+
|
|
139
|
+
/**
|
|
140
|
+
* Type constraint information for template parameters.
|
|
141
|
+
*
|
|
142
|
+
* @remarks
|
|
143
|
+
* Contains constraint specifications for template or generic
|
|
144
|
+
* parameters, including concept requirements, type bounds, and
|
|
145
|
+
* constraint expressions. This information is essential for
|
|
146
|
+
* documenting modern C++ concepts and generic programming
|
|
147
|
+
* constraints.
|
|
148
|
+
*
|
|
149
|
+
* @public
|
|
150
|
+
*/
|
|
151
|
+
typeconstraint?: TypeConstraintDataModel | undefined
|
|
152
|
+
|
|
153
|
+
/**
|
|
154
|
+
* Brief description documentation for the parameter.
|
|
155
|
+
*
|
|
156
|
+
* @remarks
|
|
157
|
+
* Provides concise parameter documentation including purpose,
|
|
158
|
+
* usage notes, and essential parameter information. This
|
|
159
|
+
* description enhances parameter understanding within function
|
|
160
|
+
* documentation and API reference materials.
|
|
161
|
+
*
|
|
162
|
+
* @public
|
|
163
|
+
*/
|
|
164
|
+
briefdescription?: BriefDescriptionDataModel | undefined
|
|
165
|
+
|
|
166
|
+
/**
|
|
167
|
+
* Constructs a new parameter data model from XML element data.
|
|
168
|
+
*
|
|
169
|
+
* @param xml - The XML parser instance for processing element data
|
|
170
|
+
* @param element - The XML element containing parameter information
|
|
171
|
+
* @param elementName - The name of the XML element being processed
|
|
172
|
+
*
|
|
173
|
+
* @remarks
|
|
174
|
+
* Processes the XML element representing parameter information and
|
|
175
|
+
* extracts all available parameter metadata including attributes,
|
|
176
|
+
* type specifications, naming variations, default values, constraints,
|
|
177
|
+
* and descriptions. The constructor handles the paramType schema
|
|
178
|
+
* requirements where all elements are optional, reflecting the
|
|
179
|
+
* flexible nature of parameter documentation.
|
|
180
|
+
*
|
|
181
|
+
* The implementation processes various parameter representations
|
|
182
|
+
* including simple parameters, array parameters, template parameters
|
|
183
|
+
* with constraints, and parameters with default values. It ensures
|
|
184
|
+
* proper extraction of linked text elements that contain embedded
|
|
185
|
+
* cross-references to related documentation entities.
|
|
186
|
+
*
|
|
187
|
+
* @public
|
|
188
|
+
*/
|
|
189
|
+
constructor(xml: DoxygenXmlParser, element: object, elementName: string) {
|
|
190
|
+
super(elementName)
|
|
191
|
+
|
|
192
|
+
// console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
|
|
193
|
+
|
|
194
|
+
// ------------------------------------------------------------------------
|
|
195
|
+
// Process elements.
|
|
196
|
+
|
|
197
|
+
const innerElements = xml.getInnerElements(element, elementName)
|
|
198
|
+
// May be empty.
|
|
199
|
+
// assert(innerElements.length > 0)
|
|
200
|
+
|
|
201
|
+
for (const innerElement of innerElements) {
|
|
202
|
+
// console.log(util.inspect(paramElement))
|
|
203
|
+
if (xml.hasInnerText(innerElement)) {
|
|
204
|
+
// Ignore texts.
|
|
205
|
+
} else if (xml.hasInnerElement(innerElement, 'attributes')) {
|
|
206
|
+
const attributesElements = xml.getInnerElements(
|
|
207
|
+
innerElement,
|
|
208
|
+
'attributes'
|
|
209
|
+
)
|
|
210
|
+
// console.log(util.inspect(defvalElements))
|
|
211
|
+
assert(attributesElements.length === 1)
|
|
212
|
+
this.attributes = xml.getInnerText(attributesElements[0])
|
|
213
|
+
} else if (xml.hasInnerElement(innerElement, 'type')) {
|
|
214
|
+
this.type = new TypeDataModel(xml, innerElement)
|
|
215
|
+
} else if (xml.hasInnerElement(innerElement, 'declname')) {
|
|
216
|
+
const declnameElements = xml.getInnerElements(innerElement, 'declname')
|
|
217
|
+
// console.log(util.inspect(defvalElements))
|
|
218
|
+
assert(declnameElements.length === 1)
|
|
219
|
+
this.declname = xml.getInnerText(declnameElements[0])
|
|
220
|
+
} else if (xml.hasInnerElement(innerElement, 'defname')) {
|
|
221
|
+
const defnameElements = xml.getInnerElements(innerElement, 'defname')
|
|
222
|
+
// console.log(util.inspect(defvalElements))
|
|
223
|
+
assert(defnameElements.length === 1)
|
|
224
|
+
this.declname = xml.getInnerText(defnameElements[0])
|
|
225
|
+
} else if (xml.hasInnerElement(innerElement, 'array')) {
|
|
226
|
+
const arrayElements = xml.getInnerElements(innerElement, 'array')
|
|
227
|
+
// console.log(util.inspect(defvalElements))
|
|
228
|
+
assert(arrayElements.length === 1)
|
|
229
|
+
this.array = xml.getInnerText(arrayElements[0])
|
|
230
|
+
} else if (xml.hasInnerElement(innerElement, 'defval')) {
|
|
231
|
+
this.defval = new DefValDataModel(xml, innerElement)
|
|
232
|
+
} else if (xml.hasInnerElement(innerElement, 'typeconstraint')) {
|
|
233
|
+
this.typeconstraint = new TypeConstraintDataModel(xml, innerElement)
|
|
234
|
+
} else if (xml.hasInnerElement(innerElement, 'briefdescription')) {
|
|
235
|
+
// TODO
|
|
236
|
+
} else {
|
|
237
|
+
console.error(util.inspect(innerElement))
|
|
238
|
+
console.error(
|
|
239
|
+
`${elementName} element:`,
|
|
240
|
+
Object.keys(innerElement),
|
|
241
|
+
'not implemented yet in',
|
|
242
|
+
this.constructor.name
|
|
243
|
+
)
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
// ------------------------------------------------------------------------
|
|
248
|
+
// Process attributes.
|
|
249
|
+
|
|
250
|
+
assert(!xml.hasAttributes(element))
|
|
251
|
+
|
|
252
|
+
// ------------------------------------------------------------------------
|
|
253
|
+
|
|
254
|
+
// console.log(util.inspect(this, { compact: false, depth: 999 }))
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
// ----------------------------------------------------------------------------
|
|
259
|
+
|
|
260
|
+
// <xsd:element name="param" type="paramType" minOccurs="0" maxOccurs="unbounded" />
|
|
261
|
+
|
|
262
|
+
/**
|
|
263
|
+
* Concrete implementation for parameter elements within function documentation.
|
|
264
|
+
*
|
|
265
|
+
* @remarks
|
|
266
|
+
* Provides specific handling for param XML elements that contain
|
|
267
|
+
* comprehensive parameter information within function and method
|
|
268
|
+
* documentation. This implementation extends the abstract base class
|
|
269
|
+
* functionality to process parameter elements with the specific
|
|
270
|
+
* element name 'param'.
|
|
271
|
+
*
|
|
272
|
+
* The class ensures proper instantiation of parameter data models
|
|
273
|
+
* whilst maintaining all the detailed parameter metadata required
|
|
274
|
+
* for accurate function signature documentation including type
|
|
275
|
+
* information, naming variations, default values, constraints,
|
|
276
|
+
* and descriptive information.
|
|
277
|
+
*
|
|
278
|
+
* @public
|
|
279
|
+
*/
|
|
280
|
+
export class ParamDataModel extends AbstractParamType {
|
|
281
|
+
/**
|
|
282
|
+
* Constructs a new parameter data model instance.
|
|
283
|
+
*
|
|
284
|
+
* @param xml - The XML parser instance for processing elements
|
|
285
|
+
* @param element - The source XML element containing parameter data
|
|
286
|
+
*
|
|
287
|
+
* @remarks
|
|
288
|
+
* Initialises the data model with the specific element name 'param'
|
|
289
|
+
* and delegates processing to the abstract base class implementation.
|
|
290
|
+
* This ensures consistent handling of parameter information whilst
|
|
291
|
+
* maintaining proper element identification for function signature
|
|
292
|
+
* documentation and API reference generation.
|
|
293
|
+
*
|
|
294
|
+
* @public
|
|
295
|
+
*/
|
|
296
|
+
constructor(xml: DoxygenXmlParser, element: object) {
|
|
297
|
+
// console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
|
|
298
|
+
super(xml, element, 'param')
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
// ----------------------------------------------------------------------------
|
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* This file is part of the xPack project (http://xpack.github.io).
|
|
3
|
+
* Copyright (c) 2025-2026 Liviu Ionescu. All rights reserved.
|
|
4
|
+
*
|
|
5
|
+
* Permission to use, copy, modify, and/or distribute this software
|
|
6
|
+
* for any purpose is hereby granted, under the terms of the MIT license.
|
|
7
|
+
*
|
|
8
|
+
* If a copy of the license was not distributed with this file, it can
|
|
9
|
+
* be obtained from https://opensource.org/licenses/MIT.
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
// ----------------------------------------------------------------------------
|
|
13
|
+
|
|
14
|
+
import assert from 'node:assert'
|
|
15
|
+
import util from 'node:util'
|
|
16
|
+
|
|
17
|
+
import { DoxygenXmlParser } from '../doxygen-xml-parser.js'
|
|
18
|
+
import { AbstractDataModelBase } from '../types.js'
|
|
19
|
+
|
|
20
|
+
// ----------------------------------------------------------------------------
|
|
21
|
+
|
|
22
|
+
// <xsd:complexType name="referenceType" mixed="true">
|
|
23
|
+
// <xsd:attribute name="refid" type="xsd:string" />
|
|
24
|
+
// <xsd:attribute name="compoundref" type="xsd:string" use="optional" />
|
|
25
|
+
// <xsd:attribute name="startline" type="xsd:integer" />
|
|
26
|
+
// <xsd:attribute name="endline" type="xsd:integer" />
|
|
27
|
+
// </xsd:complexType>
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Abstract base class for reference type data models.
|
|
31
|
+
*
|
|
32
|
+
* @remarks
|
|
33
|
+
* Represents the foundational structure for reference relationship elements
|
|
34
|
+
* within Doxygen XML documentation, corresponding to the referenceType
|
|
35
|
+
* complex type in the XML schema. This class manages bidirectional reference
|
|
36
|
+
* relationships between documented entities, capturing both the descriptive
|
|
37
|
+
* text and precise location information including line number ranges. The
|
|
38
|
+
* reference system enables comprehensive dependency tracking and cross-
|
|
39
|
+
* referencing capabilities, essential for understanding code relationships
|
|
40
|
+
* and generating accurate documentation navigation structures.
|
|
41
|
+
*
|
|
42
|
+
* @public
|
|
43
|
+
*/
|
|
44
|
+
export abstract class AbstractReferenceType extends AbstractDataModelBase {
|
|
45
|
+
/**
|
|
46
|
+
* The descriptive text content for this reference relationship.
|
|
47
|
+
*
|
|
48
|
+
* @remarks
|
|
49
|
+
* Contains the textual description of the reference relationship, typically
|
|
50
|
+
* including the name or signature of the referenced entity. This text
|
|
51
|
+
* provides human-readable context about the relationship and is used for
|
|
52
|
+
* display purposes within the generated documentation. Note that this
|
|
53
|
+
* property is not explicitly defined in the XML schema DTD but appears
|
|
54
|
+
* in practice within reference elements.
|
|
55
|
+
*/
|
|
56
|
+
// WARNING: not in DTD?
|
|
57
|
+
text = ''
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* The unique reference identifier for the referenced entity.
|
|
61
|
+
*
|
|
62
|
+
* @remarks
|
|
63
|
+
* Mandatory attribute that provides a unique identifier for the entity
|
|
64
|
+
* being referenced. This identifier enables precise linking and cross-
|
|
65
|
+
* referencing between documentation elements, allowing navigation to the
|
|
66
|
+
* detailed documentation of the referenced item within the documentation
|
|
67
|
+
* structure.
|
|
68
|
+
*/
|
|
69
|
+
refid = ''
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* The starting line number where the reference occurs.
|
|
73
|
+
*
|
|
74
|
+
* @remarks
|
|
75
|
+
* Specifies the line number in the source code where the reference
|
|
76
|
+
* relationship begins. This location information enables precise source
|
|
77
|
+
* code navigation and helps establish the exact context of the reference
|
|
78
|
+
* within the original source files. Note that this attribute may be missing
|
|
79
|
+
* in some reference elements despite being defined as mandatory in the
|
|
80
|
+
* XML schema.
|
|
81
|
+
*/
|
|
82
|
+
// WARNING: may be missing
|
|
83
|
+
startline: number | undefined
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* The ending line number where the reference concludes.
|
|
87
|
+
*
|
|
88
|
+
* @remarks
|
|
89
|
+
* Specifies the line number in the source code where the reference
|
|
90
|
+
* relationship ends. Combined with the starting line, this provides a
|
|
91
|
+
* complete range for the reference occurrence, enabling precise source
|
|
92
|
+
* code highlighting and navigation capabilities. Note that this attribute
|
|
93
|
+
* may be missing in some reference elements despite being defined as
|
|
94
|
+
* mandatory in the XML schema.
|
|
95
|
+
*/
|
|
96
|
+
// WARNING: may be missing
|
|
97
|
+
endline: number | undefined
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* The compound reference identifier for the containing entity.
|
|
101
|
+
*
|
|
102
|
+
* @remarks
|
|
103
|
+
* Optional attribute that provides the identifier of the compound entity
|
|
104
|
+
* (such as a class or namespace) that contains the referenced item. This
|
|
105
|
+
* additional context enables more precise navigation and helps establish
|
|
106
|
+
* the hierarchical relationship between the referencing and referenced
|
|
107
|
+
* entities within the documentation structure.
|
|
108
|
+
*/
|
|
109
|
+
compoundref?: string | undefined
|
|
110
|
+
|
|
111
|
+
/**
|
|
112
|
+
* Constructs a new abstract reference type from XML data.
|
|
113
|
+
*
|
|
114
|
+
* @param xml - The Doxygen XML parser instance
|
|
115
|
+
* @param element - The XML element containing reference relationship data
|
|
116
|
+
* @param elementName - The expected XML element name
|
|
117
|
+
*
|
|
118
|
+
* @remarks
|
|
119
|
+
* Parses the provided XML element to construct a complete reference
|
|
120
|
+
* relationship data model. The parsing process extracts the textual content
|
|
121
|
+
* from the element and processes all defined attributes including the
|
|
122
|
+
* mandatory refid attribute, line number information, and optional compound
|
|
123
|
+
* reference data. Validation ensures that the reference identifier is
|
|
124
|
+
* present, maintaining the integrity of the reference relationship
|
|
125
|
+
* documentation.
|
|
126
|
+
*/
|
|
127
|
+
constructor(xml: DoxygenXmlParser, element: object, elementName: string) {
|
|
128
|
+
super(elementName)
|
|
129
|
+
|
|
130
|
+
// console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
|
|
131
|
+
|
|
132
|
+
// ------------------------------------------------------------------------
|
|
133
|
+
// Process elements.
|
|
134
|
+
|
|
135
|
+
assert(xml.isInnerElementText(element, elementName))
|
|
136
|
+
this.text = xml.getInnerElementText(element, elementName)
|
|
137
|
+
|
|
138
|
+
assert(this.text.length > 0)
|
|
139
|
+
|
|
140
|
+
// ------------------------------------------------------------------------
|
|
141
|
+
// Process attributes.
|
|
142
|
+
|
|
143
|
+
assert(xml.hasAttributes(element))
|
|
144
|
+
|
|
145
|
+
const attributesNames = xml.getAttributesNames(element)
|
|
146
|
+
for (const attributeName of attributesNames) {
|
|
147
|
+
if (attributeName === '@_refid') {
|
|
148
|
+
this.refid = xml.getAttributeStringValue(element, '@_refid')
|
|
149
|
+
} else if (attributeName === '@_startline') {
|
|
150
|
+
this.startline = xml.getAttributeNumberValue(element, '@_startline')
|
|
151
|
+
} else if (attributeName === '@_endline') {
|
|
152
|
+
this.endline = xml.getAttributeNumberValue(element, '@_endline')
|
|
153
|
+
} else if (attributeName === '@_compoundref') {
|
|
154
|
+
this.compoundref = xml.getAttributeStringValue(element, '@_compoundref')
|
|
155
|
+
} else {
|
|
156
|
+
console.error(util.inspect(element, { compact: false, depth: 999 }))
|
|
157
|
+
console.error(
|
|
158
|
+
`${elementName} attribute:`,
|
|
159
|
+
attributeName,
|
|
160
|
+
'not implemented yet in',
|
|
161
|
+
this.constructor.name
|
|
162
|
+
)
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
assert(this.refid.length > 0)
|
|
167
|
+
|
|
168
|
+
// ------------------------------------------------------------------------
|
|
169
|
+
|
|
170
|
+
// console.log(util.inspect(this, { compact: false, depth: 999 }))
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
// ----------------------------------------------------------------------------
|
|
175
|
+
|
|
176
|
+
// <xsd:element name="references" type="referenceType" minOccurs="0" maxOccurs="unbounded" />
|
|
177
|
+
// <xsd:element name="referencedby" type="referenceType" minOccurs="0" maxOccurs="unbounded" />
|
|
178
|
+
|
|
179
|
+
/**
|
|
180
|
+
* Data model for reference relationship elements.
|
|
181
|
+
*
|
|
182
|
+
* @remarks
|
|
183
|
+
* Represents a forward reference relationship within Doxygen XML
|
|
184
|
+
* documentation, corresponding to the references XML element. This class
|
|
185
|
+
* manages relationships where the current entity references or depends upon
|
|
186
|
+
* another documented entity. The relationship captures both the descriptive
|
|
187
|
+
* information and precise location data, enabling comprehensive dependency
|
|
188
|
+
* tracking and navigation capabilities. Forward references help document
|
|
189
|
+
* how entities use or depend on other components within the codebase.
|
|
190
|
+
*
|
|
191
|
+
* @public
|
|
192
|
+
*/
|
|
193
|
+
export class ReferenceDataModel extends AbstractReferenceType {
|
|
194
|
+
/**
|
|
195
|
+
* Constructs a new reference relationship data model from XML.
|
|
196
|
+
*
|
|
197
|
+
* @param xml - The Doxygen XML parser instance
|
|
198
|
+
* @param element - The XML element containing reference relationship data
|
|
199
|
+
*
|
|
200
|
+
* @remarks
|
|
201
|
+
* Creates a complete forward reference relationship data model by parsing
|
|
202
|
+
* the provided XML element. This constructor delegates to the parent class
|
|
203
|
+
* to handle all standard parsing operations for the references element type,
|
|
204
|
+
* establishing the forward dependency relationship between the current
|
|
205
|
+
* entity and the referenced component.
|
|
206
|
+
*/
|
|
207
|
+
constructor(xml: DoxygenXmlParser, element: object) {
|
|
208
|
+
// console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
|
|
209
|
+
super(xml, element, 'references')
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
/**
|
|
214
|
+
* Data model for referenced-by relationship elements.
|
|
215
|
+
*
|
|
216
|
+
* @remarks
|
|
217
|
+
* Represents a reverse reference relationship within Doxygen XML
|
|
218
|
+
* documentation, corresponding to the referencedby XML element. This class
|
|
219
|
+
* manages relationships where the current entity is referenced or used by
|
|
220
|
+
* another documented entity. The relationship provides bidirectional
|
|
221
|
+
* dependency information, enabling comprehensive understanding of how
|
|
222
|
+
* entities are utilised throughout the codebase. Referenced-by relationships
|
|
223
|
+
* are essential for impact analysis and understanding the scope of changes
|
|
224
|
+
* when modifying documented components.
|
|
225
|
+
*
|
|
226
|
+
* @public
|
|
227
|
+
*/
|
|
228
|
+
export class ReferencedByDataModel extends AbstractReferenceType {
|
|
229
|
+
/**
|
|
230
|
+
* Constructs a new referenced-by relationship data model from XML.
|
|
231
|
+
*
|
|
232
|
+
* @param xml - The Doxygen XML parser instance
|
|
233
|
+
* @param element - The XML element containing referenced-by relationship data
|
|
234
|
+
*
|
|
235
|
+
* @remarks
|
|
236
|
+
* Creates a complete reverse reference relationship data model by parsing
|
|
237
|
+
* the provided XML element. This constructor delegates to the parent class
|
|
238
|
+
* to handle all standard parsing operations for the referencedby element
|
|
239
|
+
* type, establishing the reverse dependency relationship indicating how
|
|
240
|
+
* other entities utilise the current component.
|
|
241
|
+
*/
|
|
242
|
+
constructor(xml: DoxygenXmlParser, element: object) {
|
|
243
|
+
// console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
|
|
244
|
+
super(xml, element, 'referencedby')
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
// ----------------------------------------------------------------------------
|