diff configmix/compat.py @ 16:f85dc4677c01

Implemented the real configuration dictionary with attribute access or variable substitution
author Franz Glasner <hg@dom66.de>
date Thu, 10 Mar 2016 09:39:35 +0100
parents 0b1292e920af
children aa8345dae995
line wrap: on
line diff
--- a/configmix/compat.py	Wed Mar 09 15:35:46 2016 +0100
+++ b/configmix/compat.py	Thu Mar 10 09:39:35 2016 +0100
@@ -11,7 +11,8 @@
 
 __all__ = ["PY2",
            "text_to_native_os_str",
-           "native_os_str_to_text"]
+           "native_os_str_to_text",
+           "u"]
 
 
 PY2 = sys.version_info[0] <= 2
@@ -31,6 +32,13 @@
     def native_os_str_to_text(s, encoding=None):
         return s.decode(encoding or _OS_ENCODING)
 
+
+    def u(s, encoding="utf-8"):
+        if isinstance(s, unicode):
+            return s
+        else:
+            return s.decode(encoding)
+
 else:
 
     def text_to_native_os_str(s, encoding=None):
@@ -39,3 +47,9 @@
 
     def native_os_str_to_text(s, encoding=None):
         return s
+
+    def u(s, encoding="utf-8"):
+        if isinstance(s, str):
+            return s
+        else:
+            return s.decode(encoding)