Revision 12637df5 autotools/docpp

b/autotools/docpp
30 30
from ganeti.build import sphinx_ext
31 31

  
32 32

  
33
_QUERY_FIELDS_RE = re.compile(r"^@QUERY_FIELDS_(?P<kind>[A-Z]+)@$")
33
_DOC_RE = re.compile(r"^@(?P<class>[A-Z_]+)_(?P<kind>[A-Z]+)@$")
34

  
35
_DOC_CLASSES_DATA = {
36
  "QUERY_FIELDS": (query.ALL_FIELDS, sphinx_ext.BuildQueryFields),
37
  }
34 38

  
35 39

  
36 40
def main():
37 41
  for line in fileinput.input():
38
    m = _QUERY_FIELDS_RE.match(line)
42
    m = _DOC_RE.match(line)
39 43
    if m:
40
      fields = query.ALL_FIELDS[m.group("kind").lower()]
41
      for i in sphinx_ext.BuildQueryFields(fields):
44
      fields_dict, builder = _DOC_CLASSES_DATA[m.group("class")]
45
      fields = fields_dict[m.group("kind").lower()]
46
      for i in builder(fields):
42 47
        print i
43 48
    else:
44 49
      print line,

Also available in: Unified diff