Skip to content

Attach the doxygen module group (@ingroup) to the catalog#21

Open
estebanzimanyi wants to merge 2 commits into
MobilityDB:masterfrom
estebanzimanyi:feat/catalog-doxygen-groups
Open

Attach the doxygen module group (@ingroup) to the catalog#21
estebanzimanyi wants to merge 2 commits into
MobilityDB:masterfrom
estebanzimanyi:feat/catalog-doxygen-groups

Conversation

@estebanzimanyi

@estebanzimanyi estebanzimanyi commented Jun 13, 2026

Copy link
Copy Markdown
Member

Stacks on #18 (the @sqlfn map introduces the MDB_SRC_ROOT-overridable source root this PR's @ingroup extraction reuses). Review/merge #18 first; this PR's diff then reduces to the doxygroup commit only.

Stacked on #18 (reuses the @sqlfn pass's vendored-source wiring) — review #18 first; the doxygroup commit is the top commit here.

Parse the @ingroup meos_<group> tag from each MEOS-C function's source comment (meos/src) and attach it as a group field on every catalog function. Those groups are the structure of the MEOS reference manual / doxygen XML (meos_setspan_accessor, meos_temporal_comp_ever, meos_geo_constructor, …), so every catalog-driven binding can organize its generated surface the same way the manual does — a function is found in the same place across all tools.

The meos_internal_* groups are carried through too, so a binding can filter the non-user-facing surface. Result at the latest pin: 2155 user-facing functions across 175 groups (561 internal). Mirrors the @sqlfn extractor's doxygen-block parsing.

Follow each function's @csqlfn -> wrapper @sqlfn -> SQL name chain and
attach the resulting SQL name to the catalog. The vendored-source root is
overridable via MDB_SRC_ROOT so the @sqlfn (and @InGroup) extraction can be
pointed at the same pinned MobilityDB checkout as the headers, keeping the
generated catalog reproducibly equivalent to that pin.
Parse the @InGroup meos_<group> tag from each MEOS-C function's source comment
(meos/src) and attach it as a 'group' field on every catalog function. Those
groups are the structure of the MEOS reference manual / doxygen XML
(meos_setspan_accessor, meos_temporal_comp_ever, meos_geo_constructor, ...), so
every catalog-driven binding can organize its generated surface the same way the
manual does — a function is found in the same place across all tools. The
meos_internal_* groups are carried through too, so a binding can filter the
non-user-facing surface. 2155 user-facing functions across 175 groups.
@estebanzimanyi estebanzimanyi force-pushed the feat/catalog-doxygen-groups branch from ef269a7 to a9ee3ca Compare June 13, 2026 23:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant