""" Author: Michel Peltriaux Organization: Struktur- und Genehmigungsdirektion Nord, Rhineland-Palatinate, Germany Contact: michel.peltriaux@sgdnord.rlp.de Created on: 17.11.20 """ from enum import Enum class BaseEnum(Enum): """ Provides basic functionality for Enums """ @classmethod def as_choices(cls, drop_empty_choice: bool = False): empty_choice = [] if drop_empty_choice else [(None, "---")] choices = empty_choice + [(enum.value, enum.name) for enum in cls] return choices