summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xhwdb/parse_hwdb.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/hwdb/parse_hwdb.py b/hwdb/parse_hwdb.py
index 2540c8c2f6..5d4c5ea64d 100755
--- a/hwdb/parse_hwdb.py
+++ b/hwdb/parse_hwdb.py
@@ -49,6 +49,12 @@ except ImportError:
ecodes = None
print('WARNING: evdev is not available')
+try:
+ from functools import lru_cache
+except ImportError:
+ # don't do caching on old python
+ lru_cache = lambda: (lambda f: f)
+
EOL = LineEnd().suppress()
EMPTYLINE = LineStart() + LineEnd()
COMMENTLINE = pythonStyleComment + EOL
@@ -62,7 +68,7 @@ TYPES = {'mouse': ('usb', 'bluetooth', 'ps2', '*'),
'keyboard': ('name', ),
}
-@functools.lru_cache()
+@lru_cache()
def hwdb_grammar():
ParserElement.setDefaultWhitespaceChars('')
@@ -83,7 +89,7 @@ def hwdb_grammar():
return grammar
-@functools.lru_cache()
+@lru_cache()
def property_grammar():
ParserElement.setDefaultWhitespaceChars(' ')