diff Sphinx/source/plugins/python/inspect-api.py @ 703:a589668768d7

moving python samples in separate files (2)
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 11 Jun 2021 10:07:12 +0200
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Sphinx/source/plugins/python/inspect-api.py	Fri Jun 11 10:07:12 2021 +0200
@@ -0,0 +1,20 @@
+import inspect
+import numbers
+import orthanc
+
+# Loop over the members of the "orthanc" module
+for (name, obj) in inspect.getmembers(orthanc):
+    if inspect.isroutine(obj):
+        print('Function %s():\n  Documentation: %s\n' % (name, inspect.getdoc(obj)))
+
+    elif inspect.isclass(obj):
+        print('Class %s:\n  Documentation: %s' % (name, inspect.getdoc(obj)))
+
+        # Loop over the members of the class
+        for (subname, subobj) in inspect.getmembers(obj):
+            if isinstance(subobj, numbers.Number):
+                print('  - Enumeration value %s: %s' % (subname, subobj))
+            elif (not subname.startswith('_') and
+                  inspect.ismethoddescriptor(subobj)):
+                print('  - Method %s(): %s' % (subname, inspect.getdoc(subobj)))
+        print('')