def process(self, value, state):
        if self.nargs > 1:
            holes = sum(1 for x in value if x is None)
            if holes == len(value):
                value = None
            elif holes != 0:
                raise BadArgumentUsage('argument %s takes %d values'
                                       % (self.dest, self.nargs))
        state.opts[self.dest] = value
        state.order.append(self.obj)
dataset/ETHPy150Open pallets/click/click/parser.py/Argument.process/original