summaryrefslogtreecommitdiffstats
path: root/third_party/python/jinxed/jinxed/_util.py
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/python/jinxed/jinxed/_util.py')
-rw-r--r--third_party/python/jinxed/jinxed/_util.py52
1 files changed, 52 insertions, 0 deletions
diff --git a/third_party/python/jinxed/jinxed/_util.py b/third_party/python/jinxed/jinxed/_util.py
new file mode 100644
index 0000000000..7d9dd2e255
--- /dev/null
+++ b/third_party/python/jinxed/jinxed/_util.py
@@ -0,0 +1,52 @@
+# -*- coding: utf-8 -*-
+# Copyright 2019 - 2021 Avram Lubkin, All Rights Reserved
+
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+"""
+Utility objects
+"""
+
+import os
+import platform
+import sys
+
+if sys.version_info[:2] < (3, 3): # pragma: no branch
+ import mock # pragma: no cover # pylint: disable=import-error, unused-import
+else:
+ from unittest import mock # noqa: F401 # pylint: disable=unused-import
+
+if sys.version_info[0] < 3: # pragma: no branch
+ BASESTRING = basestring # pragma: no cover # noqa: F821 # pylint: disable=undefined-variable
+else:
+ BASESTRING = str
+
+IS_WINDOWS = platform.system() == 'Windows'
+
+
+class error(Exception): # pylint: disable=invalid-name
+ """
+ Generic class for Jinxed errors
+ """
+
+
+def get_term(*args, **kwargs): # pylint: disable=unused-argument
+ """
+ A lightweight stand-in for win32.get_term() for non-Windows platforms
+ Returns value of TERM environment variable or 'unknown'
+ """
+
+ return os.environ.get('TERM', 'unknown')
+
+
+def raise_from_none(exc): # pragma: no cover
+ """
+ Convenience function to raise from None in a Python 2/3 compatible manner
+ """
+ raise exc
+
+
+if sys.version_info[0] >= 3: # pragma: no branch
+ exec('def raise_from_none(exc):\n raise exc from None') # pylint: disable=exec-used