summaryrefslogtreecommitdiff
path: root/venv/lib/python3.11/site-packages/litestar/utils/empty.py
diff options
context:
space:
mode:
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.py26
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