summaryrefslogtreecommitdiff
path: root/scripts/lib/kdoc/kdoc_item.py
diff options
context:
space:
mode:
authorJonathan Corbet <corbet@lwn.net>2025-07-01 15:31:11 -0600
committerJonathan Corbet <corbet@lwn.net>2025-07-02 14:14:24 -0600
commit60016e0116b8d33f95e797b011799e717766ec13 (patch)
treea7ad710621d0c76d463d128e7f58e93e9d9e465a /scripts/lib/kdoc/kdoc_item.py
parentd1af2889682e83acc791e2a2191687958b548da1 (diff)
docs: kdoc; Add a rudimentary class to represent output items
This class is intended to replace the unstructured dict used to accumulate an entry to pass to an output module. For now, it remains unstructured, but it works well enough that the output classes don't notice the difference. Reviewed-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Diffstat (limited to 'scripts/lib/kdoc/kdoc_item.py')
-rw-r--r--scripts/lib/kdoc/kdoc_item.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/scripts/lib/kdoc/kdoc_item.py b/scripts/lib/kdoc/kdoc_item.py
new file mode 100644
index 000000000000..add2cc772fec
--- /dev/null
+++ b/scripts/lib/kdoc/kdoc_item.py
@@ -0,0 +1,26 @@
+# SPDX-License-Identifier: GPL-2.0
+#
+# A class that will, eventually, encapsulate all of the parsed data that we
+# then pass into the output modules.
+#
+
+class KdocItem:
+ def __init__(self, name, type, start_line, **other_stuff):
+ self.name = name
+ self.type = type
+ self.declaration_start_line = start_line
+ #
+ # Just save everything else into our own dict so that the output
+ # side can grab it directly as before. As we move things into more
+ # structured data, this will, hopefully, fade away.
+ #
+ self.other_stuff = other_stuff
+
+ def get(self, key, default = None):
+ ret = self.other_stuff.get(key, default)
+ if ret == default:
+ return self.__dict__.get(key, default)
+ return ret
+
+ def __getitem__(self, key):
+ return self.get(key)