Я использую функциональную библиотеку ( Gremlin ) для запроса базы данных графа. Вызывая это выглядит так:
g.V().has(...).out(...).hasLabel(...).in(...).next();
Некоторые из моих функциональных цепочек очень длинные, и я хотел бы иметь возможность повторно использовать их в СУХОХ целях. Например:
const postProjection = () => (
project("id", "title")
.by(__.id())
.by("title")
)
g.V().hasLabel("post").postProjection().next()
Я знаю, что это не работает, но это концепция. Я хочу инкапсулировать часть этой цепочки в функцию, которую я могу (как-то) внедрить в различные другие цепочки функций из этой библиотеки, где это необходимо. Динамически создавая эти вызовы с повторно используемыми сегментами, я мог бы значительно сократить количество повторений.
Возможно ли это сделать?