Gremlin 中的按位运算符

Bitwise operators in Gremlin

Gremlin 是否支持 where()(如 property & flag > 0)中的按位运算符?也许像 where(bitIsSet('property', 2)).

apache docs 中找不到任何相关信息,但至少感觉这个基本操作不会在 Gremlin 中实现很奇怪。

否 - 在 Gremlin 中没有类似按位运算符的步骤。如果你的图表支持这样的事情,你当然可以使用 lambda(尽管 CosmosDB 不支持):

gremlin> g.inject([a:-1,b:-1]).filter{(it.get().a & it.get().b) > 0}
gremlin> g.inject([a:00111100,b:00001101]).filter{(it.get().a & it.get().b) > 0}
==>[a:37440,b:577]

it feels at least strange that this basic operation would not be implemented in Gremlin.

是的 - 我想这很简单,但我认为自项目开始以来我从未听说过有人要求该功能。 Gremlin 还缺少一些其他重要的运算符,例如基本的字符串连接和日期运算 - 肯定需要这些运算符。