def curry(*args)
      if curry_args.empty? && args.first.is_a?(Graph::InputEvaluator)
        Lazy[self].new(self, *args)
      else
        self.class.build(relation, { **options, curry_args: args })
      end
    end
def curry(*args)
      if curry_args.empty? && args.first.is_a?(Graph::InputEvaluator)
        Lazy[self].new(self, *args)
      else
        self.class.build(relation, { **options, curry_args: args })
      end
    end
Curry this command with provided args

 Curried command can be called without args. If argument is a graph input processor,
 lazy command will be returned, which is used for handling nested input hashes.

 @return [Command, Lazy]

 @api public