Skip to content
  • Michael Hanselmann's avatar
    workerpool: Change signature of AddTask function to not use *args · b2e8a4d9
    Michael Hanselmann authored
    
    
    By changing it to a normal parameter, which must be a sequence, we can
    start using keyword parameters.
    
    Before this patch all arguments to “AddTask(self, *args)” were passed as
    arguments to the worker's “RunTask” method. Priorities, which should be
    optional and will be implemented in a future patch, must be passed as a keyword
    parameter. This means “*args” can no longer be used as one can't combine *args
    and keyword parameters in a clean way:
    
    >>> def f(name=None, *args):
    ...   print "%r, %r" % (args, name)
    ...
    >>> f("p1", "p2", "p3", name="thename")
    Traceback (most recent call last):
     File "<stdin>", line 1, in <module>
     TypeError: f() got multiple values for keyword argument 'name'
    
    Signed-off-by: default avatarMichael Hanselmann <hansmi@google.com>
    Reviewed-by: default avatarIustin Pop <iustin@google.com>
    b2e8a4d9