diff options
Diffstat (limited to 'venv/lib/python3.11/site-packages/litestar/utils/empty.py')
-rw-r--r-- | venv/lib/python3.11/site-packages/litestar/utils/empty.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/venv/lib/python3.11/site-packages/litestar/utils/empty.py b/venv/lib/python3.11/site-packages/litestar/utils/empty.py new file mode 100644 index 0000000..cdde871 --- /dev/null +++ b/venv/lib/python3.11/site-packages/litestar/utils/empty.py @@ -0,0 +1,26 @@ +from __future__ import annotations + +from typing import TYPE_CHECKING, TypeVar + +from litestar.types.empty import Empty + +if TYPE_CHECKING: + from litestar.types.empty import EmptyType + +ValueT = TypeVar("ValueT") +DefaultT = TypeVar("DefaultT") + + +def value_or_default(value: ValueT | EmptyType, default: DefaultT) -> ValueT | DefaultT: + """Return `value` handling the case where it is empty. + + If `value` is `Empty`, `default` is returned. + + Args: + value: The value to check. + default: The default value to return if `value` is `Empty`. + + Returns: + The value or default value. + """ + return default if value is Empty else value |