Thank you, pieter.

I suppose you will not mind if I quote your response below.
>Hi,
> Your proposal is very close to how we are using the CallStep in Sqlg.
> The CallStep itself is always just a placeholder and is replaced in the 
> strategies and the CallStep.serviceName is the marker. Here is the current 
> code in the strategy which replaces the CallStep.
>   private void handleCallStep(ListIterator<Step<?, ?>> stepIterator, 
> CallStep<?, ?> callStep, MutableInt pathCount) {
>        String serviceName = callStep.getServiceName();
>        switch (serviceName) {
>            case SqlgPGRoutingFactory.NAME:
>                handlePgRouting(serviceName, callStep, pathCount);
 >            break;
 >           case SqlgPGVectorFactory.NAME:
>                handlePGVector(serviceName, callStep, pathCount);
 >              break;
 >           case SqlgFunctionFactory.NAME:
>              handleFunction(serviceName, callStep, pathCount);
>              break;
>            default:
>
>                throw new IllegalStateException("Unknown serviceName: " + 
> serviceName);
>        }
>    }
> I think your approach is very much the same as this so I am onboard with your 
> proposal.
> I certianly felt that the grammar should also be generated from the 
> @GremlinDsl, but alas having no experience with ANTLR I parked that for when 
> I have more time to investigate. For now back to groovy was the quick fix.

My intention right now is to collect all feedback that I can from the
dev list and create a PR for TP that any vendor can check and provide
feedback on, alongside the TP team itself, of course.
I look forward to seeing you involved and probably even using our fork
for testing your extensions.

On Thu, Aug 28, 2025 at 8:00 AM pieter <[email protected]> wrote:

Reply via email to