Source code for searx.result_types.keyvalue

# SPDX-License-Identifier: AGPL-3.0-or-later
"""
Typification of the *keyvalue* results.  Results of this type are rendered in
the :origin:`keyvalue.html <searx/templates/simple/result_templates/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


[docs] 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)