From 792a335a3572828a71cc34f85e4fb2741c909e77 Mon Sep 17 00:00:00 2001 From: cecilkorik Date: Mon, 19 Oct 2020 21:01:05 -0600 Subject: [PATCH] unicode improvements --- buildnum | 4 ---- cecil/core/__init__.py | 31 +++++++++++++++++++++++++++++++ cecil/core/inifile.py | 2 +- 3 files changed, 32 insertions(+), 5 deletions(-) delete mode 100644 buildnum diff --git a/buildnum b/buildnum deleted file mode 100644 index 295c01a..0000000 --- a/buildnum +++ /dev/null @@ -1,4 +0,0 @@ -(S'1.0.0-build' -p1 -I10 -t. \ No newline at end of file diff --git a/cecil/core/__init__.py b/cecil/core/__init__.py index 0f31680..39c9586 100644 --- a/cecil/core/__init__.py +++ b/cecil/core/__init__.py @@ -6,3 +6,34 @@ Core modules from Cecil's library __all__ = ["objproxy", "config"] import objproxy, config + +def ascii(s): + if isinstance(s, unicode): + return s.encode(b'ascii') + else: + return str(s) + +def utf8(s): + if isinstance(s, unicode): + return s.encode(b'utf-8') + else: + return str(s) + +def from_ascii(s): + if isinstance(s, unicode): + return s + else: + return s.decode(b'ascii') + +def from_latin1(s): + if isinstance(s, unicode): + return s + else: + return s.decode(b'latin-1') + +def from_utf8(s): + if isinstance(s, unicode): + return s + else: + return s.decode(b'utf-8') + diff --git a/cecil/core/inifile.py b/cecil/core/inifile.py index f435052..777d199 100644 --- a/cecil/core/inifile.py +++ b/cecil/core/inifile.py @@ -204,7 +204,7 @@ class inifile(dict): def __getitem__(self, key): - if type(key) != str: + if not isinstance(key, basestring): raise TypeError, "Ini files can only contain string keys" if self.cur_section != None: