summaryrefslogtreecommitdiff
path: root/pies.py
diff options
context:
space:
mode:
Diffstat (limited to 'pies.py')
-rw-r--r--pies.py79
1 files changed, 79 insertions, 0 deletions
diff --git a/pies.py b/pies.py
new file mode 100644
index 0000000..0e44e40
--- /dev/null
+++ b/pies.py
@@ -0,0 +1,79 @@
+"""
+ pies.py
+
+ Adds necessary hooks to allow Python code to run on multiple major versions of Python at once
+ (currently 2.6 - 3.x)
+
+ Usage:
+ Anywhere you want to gain support for multiple versions of Python simply add the following line
+ from pies import *
+
+ Copyright (C) 2013 Timothy Edmund Crosley
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License
+ as published by the Free Software Foundation; either version 2
+ of the License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+"""
+
+import sys
+
+__version__ = "1.0.0"
+
+if sys.version > '3':
+ import urllib
+ from urllib import parse
+
+ from collections import OrderedDict
+
+ long = int
+ unicode = str
+
+ def u(string):
+ return string
+
+ def iteritems(collection):
+ return collection.items()
+
+ def itervalues(collection):
+ return collection.values()
+
+ def iterkeys(collection):
+ return collection.keys()
+
+ def xrange(*args):
+ return range(*args)
+
+ urllib.quote = parse.quote
+ urllib.quote_plus = parse.quote_plus
+ urllib.unquote = parse.unquote
+ urllib.unquote_plus = parse.unquote_plus
+ urllib.urlencode = parse.urlencode
+else:
+ try:
+ from collections import OrderedDict
+ except ImportError:
+ from ordereddict import OrderedDict
+
+ import codecs
+
+ def u(string):
+ return codecs.unicode_escape_decode(string)[0]
+
+ def iteritems(collection):
+ return collection.iteritems()
+
+ def itervalues(collection):
+ return collection.itervalues()
+
+ def iterkeys(collection):
+ return collection.iterkeys()