1
0
mirror of https://github.com/deadc0de6/dotdrop.git synced 2026-02-05 01:34:42 +00:00
Files
dotdrop/dotdrop/linktypes.py
deadc0de6 5b9d248219 linting
2022-08-25 23:21:11 +02:00

36 lines
802 B
Python

"""
author: deadc0de6 (https://github.com/deadc0de6)
Copyright (c) 2020, deadc0de6
represents a type of link in dotdrop
"""
# https://github.com/PyCQA/pylint/issues/2062
# pylint: disable=E1101
from enum import IntEnum
class LinkTypes(IntEnum):
"""a type of link"""
NOLINK = 0
LINK = 1
LINK_CHILDREN = 2
ABSOLUTE = 3
RELATIVE = 4
@classmethod
def get(cls, key, default=None):
"""get the linktype"""
try:
return key if isinstance(key, cls) else cls[key.upper()]
except KeyError as exc:
if default:
return default
err = f'bad {cls.__name__} value: "{key}"'
raise ValueError(err) from exc
def __str__(self):
"""linktype to string"""
return self.name.lower()