# SPDX-License-Identifier: AGPL-3.0-or-later """ Typification of the *keyvalue* results. Results of this type are rendered in the :origin:`keyvalue.html ` template. ---- .. autoclass:: KeyValue :members: :show-inheritance: """ # pylint: disable=too-few-public-methods from __future__ import annotations __all__ = ["KeyValue"] import typing from collections import OrderedDict from ._base import MainResult class KeyValue(MainResult, kw_only=True): """Simple table view which maps *key* names (first col) to *values* (second col).""" template: str = "keyvalue.html" kvmap: dict[str, typing.Any] | OrderedDict[str, typing.Any] """Dictionary with keys and values. To sort keys, use :py:obj:`OrderedDict`.""" caption: str = "" """Optional caption for this result.""" key_title: str = "" """Optional title for the *key column*.""" value_title: str = "" """Optional title for the *value column*.""" def __hash__(self) -> int: """The KeyValues objects are checked for object identity, even if all fields of two results have the same values, they are different from each other. """ return id(self)