Extract the MEOS-C → MobilityDB-C → SQL name chain from @csqlfn/@sqlfn/@sqlop tags#17
Open
estebanzimanyi wants to merge 1 commit into
Open
Extract the MEOS-C → MobilityDB-C → SQL name chain from @csqlfn/@sqlfn/@sqlop tags#17estebanzimanyi wants to merge 1 commit into
estebanzimanyi wants to merge 1 commit into
Conversation
…worklist parser/sqlnames.py derives each function's three names from the @csqlfn / @sqlfn / @sqlop Doxygen tags (MEOS-C library fn -> PG wrapper -> SQL name + operator), block-paired so the tag binds to the function it documents. Resolves the chain for 1589 functions. HANDOFF_sqlname_chain.md reports, for the MobilityDB/MEOS session, the @csqlfn irregularity it surfaces: 31 core Datum-generic functions carry a redundant @csqlfn that the binding-callable *_meos.c typed wrappers already hold (safe to de-tag), plus 4 that need a typed wrapper first. Rule: @csqlfn belongs only on binding-callable functions, never the core Datum-generic.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds
parser/sqlnames.py, which derives every function's three names — MEOS-C library (tdistance_tnumber_number) → MobilityDB-C wrapper (Tdistance_tnumber_number) → SQL (tDistance+ operator<->) — from the@csqlfn/@sqlfn/@sqlopDoxygen tags, and attachesmobilitydb/sql/sqlopto each IDL function inrun.py. Resolves the chain for 1589 functions.This makes the canonical SQL name of every MEOS function machine-derivable from one source of truth, so bindings translate names from the catalog instead of hand-maintaining per-binding name maps (the ecosystem naming policy).
How it works
*_meos.c(tdistance_tint_int,tdistance_tfloat_float, …) — not the core Datum-generic; both typed variants correctly resolve to the same SQL name.setup.pynow sparse-checks-outmeos/src+mobilitydb/src(where the tags live).Surfaced irregularity (see
HANDOFF_sqlname_chain.md)The extractor measures one irregularity class: 35 core Datum-generics carry a redundant
@csqlfnthe*_meos.cwrappers already hold. 31 are safe to de-tag; 4 need a typed wrapper first. The fix lands in MobilityDB source (handed off to that work). Verification gate: the "Datum-param functions carrying a SQL name" count should fall 35 → 4 → 0.Tests
tests/test_sqlnames.py(3) — typed-wrappers-resolve / Datum-generic-does-not, IDL merge, missing-sources no-op. Full suite green (17).