public override Condition HandleOperation(
            Neo4JFilterVisitorContext context,
            IFilterOperationField field,
            IValueNode value,
            object?parsedValue)
        {
            if (parsedValue is not string str)
            {
                throw new InvalidOperationException();
            }

            return(context
                   .GetNode()
                   .Property(context.GetNeo4JFilterScope().GetPath())
                   .EndsWith(Cypher.LiteralOf(str)));
        }
        /// <inheritdoc />
        public override Condition HandleOperation(
            Neo4JFilterVisitorContext context,
            IFilterOperationField field,
            IValueNode value,
            object?parsedValue)
        {
            if (parsedValue is null)
            {
                throw new InvalidOperationException();
            }

            return(context
                   .GetNode()
                   .Property(context.GetNeo4JFilterScope().GetPath())
                   .GreaterThanOEqualTo(Cypher.LiteralOf(parsedValue))
                   .Not());
        }