Gremlin 控制台是否显示了特定对象的所有可用方法?

Have Gremlin-console show all the methods available for a specific object?

在 gremlin-console 中,有没有办法显示特定对象的所有可用方法?

例如,在 gremlin-console 中,如果我键入 g.V().hasLabel("person") 并且我想查看我可以 chain/call 为 g.V().hasLabel("person") 返回的对象使用哪些方法。你是怎么做到的?

答案是使用<Tab>键。

gremlin> "test".c
capitalize()           center(                charAt(                chars()                codePointAt(           codePointBefore(       codePointCount(        codePoints()           collectReplacements(   compareTo(             
compareToIgnoreCase(   concat(                contains(              contentEquals(         count(

但是,我发现它不适用于 g.V().o 之类的东西,我希望它能显示 out()。显然,groovy shell(这是 Gremlin 控制台所基于的)似乎不想在流利的 API 上执行 auto-complete。它似乎只适用于您调用该方法的第一个对象:

gremlin> g.
E(                        V(                        addV(                     addV()                    close()                   inject(                   tx()                      withBindings(             withBulk(                 
withComputer(             withComputer()            withPath()                withRemote(               withSack(                 withSideEffect(           withStrategies(           withoutStrategies(        anonymousTraversalClass   
bytecode                  graph                     strategies                
gremlin> x = g.V();[]
gremlin> x.o
option(     optional(   or(         order(      order()     otherV()    out(        outE(       outV()      
gremlin> x.o

真糟糕...这不是真正的 TinkerPop 问题 - 我们依赖 groovysh 来实现该功能。我不认为我们在那里能做的不多....

当然,您使用的是 DSE Graph,这意味着您可以访问 DataStax Studio,它不仅具有您正在寻找的 auto-complete,还具有模式支持(以及更多!)。我建议你改用那个。