xref: /petsc/lib/petsc/bin/maint/generators/prettyprint.py (revision d9acb416d05abeed0a33bde3a81aeb2ea0364f6a)
1#!/usr/bin/env python3
2# $Id: adprocess.py,v 1.12 2001/08/24 18:26:15 bsmith Exp $
3#
4# change python to whatever is needed on your system to invoke python
5#
6#  Reads classes.data and prints the information out nicely
7#
8#  Crude as all hack!
9#
10#  Calling sequence:
11#      prettyprint.py
12##
13from __future__ import print_function
14import os
15import re
16import sys
17from string import *
18import pickle
19
20# list of classes found
21classes = {}
22enums = {}
23
24
25def main(args):
26  file = open('classes.data')
27  enums   = pickle.load(file)
28  senums  = pickle.load(file)
29  structs = pickle.load(file)
30  aliases = pickle.load(file)
31  classes = pickle.load(file)
32
33  print("----- Aliases --------")
34  for i in aliases:
35    print(i+" = "+aliases[i])
36  print(" ")
37  print("----- Enums --------")
38  for i in enums:
39    print(i)
40    for j in enums[i]:
41      print("  "+j)
42  print(" ")
43  print("----- string enums --------")
44  for i in senums:
45    print(i+" = "+"char*")
46    for j in senums[i]:
47      print("  "+j+" = "+senums[i][j])
48  print(" ")
49  print("----- structs --------")
50  for i in structs:
51    print(i)
52    for j in structs[i]:
53      print("  "+j)
54  print(" ")
55  print("----- Classes --------")
56  for i in classes:
57    print(i)
58    for j in classes[i]:
59      print("  "+j+"()")
60      for k in classes[i][j]:
61        print("    "+k)
62
63
64
65#
66# The classes in this file can also be used in other python-programs by using 'import'
67#
68if __name__ ==  '__main__':
69  main(sys.argv[1:])
70
71