Skip to content

MixEnum

Bases: Enum

Source code in src/ichingpy/enum/mixed_enum.py
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
class MixEnum(Enum):
    def __new__(cls, value: int, label: str):
        """Create a new Enum member.

        Args:
            value (int): The integer value of the Enum member.
            label (str): The string label for the Enum member.

        Returns:
            obj: A new instance of the SimpleEnum.
        """
        obj = object.__new__(cls)
        obj._value_ = value
        obj.label = label
        return obj

    @property
    def label(self) -> str:
        """str: Represents the string label of the Enum member."""
        return self._label

    @label.setter
    def label(self, value: str) -> None:
        """Sets the label of the Enum member.

        Args:
            value (str): The string to set as the label of the Enum member.
        """
        self._label = value

    def __int__(self) -> int:
        """Convert the Enum to an integer.

        Returns:
            int: The integer value of the Enum.
        """
        return self.value

label property writable

str: Represents the string label of the Enum member.

__int__()

Convert the Enum to an integer.

Returns:

Name Type Description
int int

The integer value of the Enum.

Source code in src/ichingpy/enum/mixed_enum.py
34
35
36
37
38
39
40
def __int__(self) -> int:
    """Convert the Enum to an integer.

    Returns:
        int: The integer value of the Enum.
    """
    return self.value

__new__(value, label)

Create a new Enum member.

Parameters:

Name Type Description Default
value int

The integer value of the Enum member.

required
label str

The string label for the Enum member.

required

Returns:

Name Type Description
obj

A new instance of the SimpleEnum.

Source code in src/ichingpy/enum/mixed_enum.py
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
def __new__(cls, value: int, label: str):
    """Create a new Enum member.

    Args:
        value (int): The integer value of the Enum member.
        label (str): The string label for the Enum member.

    Returns:
        obj: A new instance of the SimpleEnum.
    """
    obj = object.__new__(cls)
    obj._value_ = value
    obj.label = label
    return obj