'Serialize a mapping of arguments using this L{Command}\'s
argument schema.
@param objects: a dict with keys similar to the names specified in
self.arguments, having values of the types that the Argument objects in
self.arguments can parse.
@param proto: an L{AMP}.
@return: An instance of this L{Command}\'s C{commandType}.'

def makeArguments(cls, objects, proto):

    allowedNames = set()
    for (argName, ignored) in cls.arguments:
        allowedNames.add(_wireNameToPythonIdentifier(argName))
    for intendedArg in objects:
        if (intendedArg not in allowedNames):
            raise InvalidSignature(('%s    is    not    a    valid    argument' % (intendedArg,)))
    return _objectsToStrings(objects, cls.arguments, cls.commandType(), proto)
