Python sphinx.addnodes.desc_parameter() Examples
The following are 10
code examples of sphinx.addnodes.desc_parameter().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
sphinx.addnodes
, or try the search function
.
Example #1
Source File: rpc.py From king-phisher with BSD 3-Clause "New" or "Revised" License | 6 votes |
def handle_signature(self, sig, signode): m = re.match(r'([a-zA-Z0-9_/\(\):]+)\(([a-zA-Z0-9,\'"_= ]*)\)', sig) if not m: signode += addnodes.desc_name(sig, sig) return sig uri_path, args = m.groups() signode += addnodes.desc_name(uri_path, uri_path) plist = DescRPCArgumentList() args = args.split(',') for pos, arg in enumerate(args): arg = arg.strip() if pos < len(args) - 1: arg += ',' x = DescRPCArgument() x += addnodes.desc_parameter(arg, arg) plist += x signode += plist return uri_path
Example #2
Source File: graphql.py From king-phisher with BSD 3-Clause "New" or "Revised" License | 6 votes |
def handle_signature(self, sig, signode): match = re.match(r'(?P<name>[a-zA-Z0-9]+)(\((?P<arguments>[a-z_0-9]+(, +[a-z_0-9]+)*)\))?', sig) field_name = match.group('name') if 'gql:object' in self.env.ref_context: full_name = self.env.ref_context['gql:object'] + '.' + field_name else: full_name = field_name signode += addnodes.desc_name(field_name, field_name) arguments = match.group('arguments') if arguments: plist = DescGraphQLFieldArgumentList() arguments = arguments.split(',') for pos, arg in enumerate(arguments): arg = arg.strip() if pos < len(arguments) - 1: arg += ',' x = DescGraphQLFieldArgument() x += addnodes.desc_parameter(arg, arg) plist += x signode += plist return full_name
Example #3
Source File: database.py From king-phisher with BSD 3-Clause "New" or "Revised" License | 6 votes |
def handle_signature(self, sig, signode): match = re.match(r'(?P<name>[a-z0-9_]+)(\((?P<arguments>[a-z_0-9]+(, +[a-z_0-9]+)*)\))?', sig) field_name = match.group('name') if 'db:table' in self.env.ref_context: full_name = self.env.ref_context['db:table'] + '.' + field_name else: full_name = field_name signode += addnodes.desc_name(field_name, field_name) arguments = match.group('arguments') if arguments: plist = DescDatabaseFieldArgumentList() arguments = arguments.split(',') for pos, arg in enumerate(arguments): arg = arg.strip() if pos < len(arguments) - 1: arg += ',' x = DescDatabaseFieldArgument() x += addnodes.desc_parameter(arg, arg) plist += x signode += plist return full_name
Example #4
Source File: protobufdomain.py From ga4gh-schemas with Apache License 2.0 | 6 votes |
def handle_signature(self,sig,signode): sig = sig.strip() type_name, name, arglist = protobuf_sig_regex.match(sig).groups() if self.prefix: signode += addnodes.desc_annotation(self.prefix+' ', self.prefix+' ') if type_name: signode += addnodes.desc_type(type_name, type_name) if name: signode += addnodes.desc_name(name,name) if arglist: paramlist = addnodes.desc_parameterlist() for arg in arglist.split(','): argtype, argname = arg.split(None,1) param = addnodes.desc_parameter(noemph=True) param += nodes.Text(argtype,argtype) param += nodes.emphasis(' '+argname,' '+argname) paramlist += param signode += paramlist return name
Example #5
Source File: httpdomain.py From nltk-server with MIT License | 5 votes |
def handle_signature(self, sig, signode): method = self.method.upper() + ' ' signode += addnodes.desc_name(method, method) offset = 0 path = None for match in http_sig_param_re.finditer(sig): path = sig[offset:match.start()] signode += addnodes.desc_name(path, path) params = addnodes.desc_parameterlist() typ = match.group('type') if typ: typ += ': ' params += addnodes.desc_annotation(typ, typ) name = match.group('name') params += addnodes.desc_parameter(name, name) signode += params offset = match.end() if offset < len(sig): path = sig[offset:len(sig)] signode += addnodes.desc_name(path, path) assert path is not None, 'no matches for sig: %s' % sig fullname = self.method.upper() + ' ' + path signode['method'] = self.method signode['path'] = sig signode['fullname'] = fullname return (fullname, self.method, sig)
Example #6
Source File: httpdomain.py From couchdb-documentation with Apache License 2.0 | 5 votes |
def handle_signature(self, sig, signode): method = self.method.upper() + " " signode += addnodes.desc_name(method, method) offset = 0 path = None for match in http_sig_param_re.finditer(sig): path = sig[offset : match.start()] signode += addnodes.desc_name(path, path) params = addnodes.desc_parameterlist() typ = match.group("type") if typ: typ += ": " params += addnodes.desc_annotation(typ, typ) name = match.group("name") params += addnodes.desc_parameter(name, name) signode += params offset = match.end() if offset < len(sig): path = sig[offset : len(sig)] signode += addnodes.desc_name(path, path) if path is None: assert False, "no matches for sig: %s" % sig fullname = self.method.upper() + " " + path signode["method"] = self.method signode["path"] = sig signode["fullname"] = fullname return (fullname, self.method, sig)
Example #7
Source File: csharp.py From sphinx-csharp with MIT License | 5 votes |
def append_parameters(self, node, params): pnodes = addnodes.desc_parameterlist() for param in params: pnode = addnodes.desc_parameter('', '', noemph=True) self.append_modifiers(pnode, param.modifiers) self.append_type(pnode, param.typ) pnode += nodes.Text(u' ') pnode += nodes.emphasis(param.name, param.name) if param.default is not None: default = u' = ' + param.default pnode += nodes.emphasis(default, default) pnodes += pnode node += pnodes
Example #8
Source File: djangodocs.py From django-cas-server with GNU General Public License v3.0 | 5 votes |
def visit_desc_parameterlist(self, node): self.body.append('(') # by default sphinx puts <big> around the "(" self.first_param = 1 self.optional_param_level = 0 self.param_separator = node.child_text_separator self.required_params_left = sum([isinstance(c, addnodes.desc_parameter) for c in node.children])
Example #9
Source File: autoprocess.py From resolwe with Apache License 2.0 | 4 votes |
def make_process_header(self, slug, typ, version, source_uri, description, inputs): """Generate a process definition header. :param str slug: process' slug :param str typ: process' type :param str version: process' version :param str source_uri: url to the process definition :param str description: process' description :param dict inputs: process' inputs """ node = addnodes.desc() signode = addnodes.desc_signature(slug, "") node.append(signode) node["objtype"] = node["desctype"] = typ signode += addnodes.desc_annotation(typ, typ, classes=["process-type"]) signode += addnodes.desc_addname("", "") signode += addnodes.desc_name(slug + " ", slug + " ") paramlist = addnodes.desc_parameterlist() for field_schema, _, _ in iterate_schema({}, inputs, ""): field_type = field_schema["type"] field_name = field_schema["name"] field_default = field_schema.get("default", None) field_default = "" if field_default is None else "={}".format(field_default) param = addnodes.desc_parameter("", "", noemph=True) param += nodes.emphasis(field_type, field_type, classes=["process-type"]) # separate by non-breaking space in the output param += nodes.strong(text="\xa0\xa0" + field_name) paramlist += param signode += paramlist signode += nodes.reference( "", nodes.Text("[Source: v{}]".format(version)), refuri=source_uri, classes=["viewcode-link"], ) desc = nodes.paragraph() desc += nodes.Text(description, description) return [node, desc]
Example #10
Source File: pbDomain.py From opbasm with MIT License | 4 votes |
def _parse_arglist(signode, arglist): """"Parse" a list of arguments separated by commas. Arguments can have "optional" annotations given by enclosing them in brackets. Currently, this will split at any comma, even if it's inside a string literal (e.g. default argument value). """ paramlist = addnodes.desc_parameterlist() stack = [paramlist] try: for argument in arglist.split(','): argument = argument.strip() ends_open = ends_close = 0 while argument.startswith('['): stack.append(addnodes.desc_optional()) stack[-2] += stack[-1] argument = argument[1:].strip() while argument.startswith(']'): stack.pop() argument = argument[1:].strip() while argument.endswith(']') and not argument.endswith('[]'): ends_close += 1 argument = argument[:-1].strip() while argument.endswith('['): ends_open += 1 argument = argument[:-1].strip() if argument: stack[-1] += addnodes.desc_parameter(argument, argument) while ends_open: stack.append(addnodes.desc_optional()) stack[-2] += stack[-1] ends_open -= 1 while ends_close: stack.pop() ends_close -= 1 if len(stack) != 1: raise IndexError except IndexError: # if there are too few or too many elements on the stack, just give up # and treat the whole argument list as one argument, discarding the # already partially populated paramlist node signode += addnodes.desc_parameterlist() signode[-1] += addnodes.desc_parameter(arglist, arglist) else: signode += paramlist