~mmach/netext73/mesa-haswell

« back to all changes in this revision

Viewing changes to docs/_exts/formatting.py

  • Committer: mmach
  • Date: 2022-09-22 19:56:13 UTC
  • Revision ID: netbit73@gmail.com-20220922195613-wtik9mmy20tmor0i
2022-09-22 21:17:09

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# formatting.py
2
 
# Sphinx extension providing formatting for Gallium-specific data
3
 
# (c) Corbin Simpson 2010
4
 
# Public domain to the extent permitted; contact author for special licensing
5
 
 
6
 
import docutils.nodes
7
 
import sphinx.addnodes
8
 
 
9
 
def parse_envvar(env, sig, signode):
10
 
    envvar, t, default = sig.split(" ", 2)
11
 
    envvar = envvar.strip().upper()
12
 
    t = "Type: %s" % t.strip(" <>").lower()
13
 
    default = "Default: %s" % default.strip(" ()")
14
 
    signode += sphinx.addnodes.desc_name(envvar, envvar)
15
 
    signode += docutils.nodes.Text(' ')
16
 
    signode += sphinx.addnodes.desc_type(t, t)
17
 
    signode += docutils.nodes.Text(', ')
18
 
    signode += sphinx.addnodes.desc_annotation(default, default)
19
 
    return envvar
20
 
 
21
 
def parse_opcode(env, sig, signode):
22
 
    opcode, desc = sig.split("-", 1)
23
 
    opcode = opcode.strip().upper()
24
 
    desc = " (%s)" % desc.strip()
25
 
    signode += sphinx.addnodes.desc_name(opcode, opcode)
26
 
    signode += sphinx.addnodes.desc_annotation(desc, desc)
27
 
    return opcode
28
 
 
29
 
def setup(app):
30
 
    app.add_object_type("envvar", "envvar", "%s (environment variable)",
31
 
        parse_envvar)
32
 
    app.add_object_type("opcode", "opcode", "%s (TGSI opcode)",
33
 
        parse_opcode)