| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- # 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.
- #
- """
- Data class to store a kernel-doc Item.
- """
- class KdocItem:
- """
- A class that will, eventually, encapsulate all of the parsed data that we
- then pass into the output modules.
- """
- def __init__(self, name, fname, type, start_line, **other_stuff):
- self.name = name
- self.fname = fname
- self.type = type
- self.declaration_start_line = start_line
- self.sections = {}
- self.sections_start_lines = {}
- self.parameterlist = []
- self.parameterdesc_start_lines = []
- self.parameterdescs = {}
- self.parametertypes = {}
- #
- # 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):
- """
- Get a value from optional keys.
- """
- return self.other_stuff.get(key, default)
- def __getitem__(self, key):
- return self.get(key)
- #
- # Tracking of section and parameter information.
- #
- def set_sections(self, sections, start_lines):
- """
- Set sections and start lines.
- """
- self.sections = sections
- self.section_start_lines = start_lines
- def set_params(self, names, descs, types, starts):
- """
- Set parameter list: names, descriptions, types and start lines.
- """
- self.parameterlist = names
- self.parameterdescs = descs
- self.parametertypes = types
- self.parameterdesc_start_lines = starts
|