Skip to main content

DocEnum

ClassDataClassSource

DocEnum(
name: str,
descr: str,
init_func: DocFunction = _default_init(),
init_func_specified: bool = True,
methods: list[DocFunction] = [],
properties: list[DocProp] = [],
operators: list[DocOpTemplate] = [],
abstract_attrs: DocClassAbstractAttrs | None = None,
slang: str = "",
lineno: int = 0,
type: Literal["enum"] = "enum",
enum_items: list[DocEnumItem] = []
)

The docstring and basic information of an enum class.

This serializable data type contains the parsed docstrings of the enum class. It is a specialized class. When rendering the documentation, the initialization function is replaced by the enum item details.

Fields​

NameTypeRequired
Description
namestrThe name of the class.
descrstrThe description body of the class.
init_funcDocFunctionThe initialization function of the class.
init_func_specifiedboolA flag. When it is on, it means that the initialization function has been defined by user.
methodslist[DocFunction]The list of methods of this class.
propertieslist[DocProp]The list of properties of this class.
operatorslist[DocOpTemplate]The list of operators of this class.
abstract_attrsDocClassAbstractAttrs | NoneAdditional abstract attributes. Will present only when the class is abstract. For the protocols, this value will be always None.
slangstrThe internal code identifying this class.
linenointThe line number where the class is defined. If the number is unknown, this value will be 0.
typeLiteral["enum"]The identifier of this documentation item.
enum_itemslist[DocEnumItem]The items of the enum class.

Methods​

as_md_text​

v_1: str = self.as_md_text(renderer: ProtocolComponent)

Render as Markdown text.

Requires​

NameTypeRequired
Description
rendererProtocolComponentThe renderer providing component rendering.

Returns​

NameType
Description
v_1strThe Markdown text rendered from the enum object.

table_enums​

v_1: str = self.table_enums(
has_type: bool = True, has_value: bool = True, has_doc: bool = False
)

Format the enum items as a table.

Requires​

NameTypeRequired
Description
has_typeboolA flag. If specified, will display the enum item type.
has_valueboolA flag. If specified, will display the value of the enum item.
has_docboolA flag. If specified, will display the docstring of the enum item.

Returns​

NameType
Description
v_1strThe Markdown table of the enum items.

Properties​

str_v2​

str_v2: str = self.str_v2

Render as V2 string.

The v2 string is in the following format:

ClassName.ITEM1 = value1
ClassName.ITEM2 = value2
...

which is more compact than the default string.