def METHOD_NAME(self, arguments, kw: KeywordDoc):
    spec = kw.args
    setters = {
        ArgInfo.POSITIONAL_ONLY: spec.positional_only.append,
        ArgInfo.POSITIONAL_ONLY_MARKER: lambda value: None,
        ArgInfo.POSITIONAL_OR_NAMED: spec.positional_or_named.append,
        ArgInfo.VAR_POSITIONAL: lambda value: setattr(spec, 'var_positional', value),
        ArgInfo.NAMED_ONLY_MARKER: lambda value: None,
        ArgInfo.NAMED_ONLY: spec.named_only.append,
        ArgInfo.VAR_NAMED: lambda value: setattr(spec, 'var_named', value),
    }
    for arg in arguments:
        name = arg['name']
        setters[arg['kind']](name)
        default = arg.get('defaultValue')
        if default is not None:
            spec.defaults[name] = default
        if arg.get('type'):
            type_docs = {}
            type_info = self._parse_modern_type_info(arg['type'], type_docs)
        else:    # Compatibility with RF < 6.1.
            type_docs = arg.get('typedocs', {})
            type_info = tuple(arg['types'])
        if type_info:
            if not spec.types:
                spec.types = {}
            spec.types[name] = type_info
        kw.type_docs[name] = type_docs