aboutsummaryrefslogtreecommitdiff
path: root/docs/extensions/exception_hierarchy.py
diff options
context:
space:
mode:
authorRapptz <[email protected]>2019-03-12 01:07:47 -0400
committerRapptz <[email protected]>2019-03-12 01:15:24 -0400
commit13b23963ec626f549852a71180d9ee193e73e611 (patch)
treebbbc1b2d0916a284319b2efa38259ed3c0d22a5f /docs/extensions/exception_hierarchy.py
parentRevert default parameter use_cached of Attachment.save back to False. (diff)
downloaddiscord.py-13b23963ec626f549852a71180d9ee193e73e611.tar.xz
discord.py-13b23963ec626f549852a71180d9ee193e73e611.zip
Add exception hierarchy to the documentation.
Diffstat (limited to 'docs/extensions/exception_hierarchy.py')
-rw-r--r--docs/extensions/exception_hierarchy.py27
1 files changed, 27 insertions, 0 deletions
diff --git a/docs/extensions/exception_hierarchy.py b/docs/extensions/exception_hierarchy.py
new file mode 100644
index 00000000..cc69a7ce
--- /dev/null
+++ b/docs/extensions/exception_hierarchy.py
@@ -0,0 +1,27 @@
+from docutils.parsers.rst import Directive
+from docutils.parsers.rst import states, directives
+from docutils.parsers.rst.roles import set_classes
+from docutils import nodes
+from sphinx.locale import _
+
+class exception_hierarchy(nodes.General, nodes.Element):
+ pass
+
+def visit_exception_hierarchy_node(self, node):
+ self.body.append(self.starttag(node, 'div', CLASS='exception-hierarchy-content'))
+
+def depart_exception_hierarchy_node(self, node):
+ self.body.append('</div>\n')
+
+class ExceptionHierarchyDirective(Directive):
+ has_content = True
+
+ def run(self):
+ self.assert_has_content()
+ node = exception_hierarchy('\n'.join(self.content))
+ self.state.nested_parse(self.content, self.content_offset, node)
+ return [node]
+
+def setup(app):
+ app.add_node(exception_hierarchy, html=(visit_exception_hierarchy_node, depart_exception_hierarchy_node))
+ app.add_directive('exception_hierarchy', ExceptionHierarchyDirective)