diff options
Diffstat (limited to 'cheetah/Template.py')
-rw-r--r-- | cheetah/Template.py | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/cheetah/Template.py b/cheetah/Template.py index f4cb4f8..7231db8 100644 --- a/cheetah/Template.py +++ b/cheetah/Template.py @@ -30,6 +30,14 @@ except ImportError: def release(self): pass +filetype = None +try: + # Python3 + import io + filetype = io.IOBase +except ImportError: + filetype = types.FileType + try: x = set() except NameError: @@ -580,7 +588,7 @@ class Template(Servlet): if not isinstance(source, (types.NoneType, basestring)): raise TypeError(errmsg % ('source', 'string or None')) - if not isinstance(file, (types.NoneType, basestring, types.FileType)): + if not isinstance(file, (types.NoneType, basestring, filetype)): raise TypeError(errmsg % ('file', 'string, file-like object, or None')) @@ -1162,7 +1170,7 @@ class Template(Servlet): if not isinstance(source, (types.NoneType, basestring)): raise TypeError(errmsg % ('source', 'string or None')) - if not isinstance(source, (types.NoneType, basestring, types.FileType)): + if not isinstance(source, (types.NoneType, basestring, filetype)): raise TypeError(errmsg % ('file', 'string, file open for reading, or None')) |