aboutsummaryrefslogtreecommitdiff
path: root/Lib/fontTools/merge/options.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/fontTools/merge/options.py')
-rw-r--r--Lib/fontTools/merge/options.py85
1 files changed, 0 insertions, 85 deletions
diff --git a/Lib/fontTools/merge/options.py b/Lib/fontTools/merge/options.py
deleted file mode 100644
index 02dcf4b7..00000000
--- a/Lib/fontTools/merge/options.py
+++ /dev/null
@@ -1,85 +0,0 @@
-# Copyright 2013 Google, Inc. All Rights Reserved.
-#
-# Google Author(s): Behdad Esfahbod, Roozbeh Pournader
-
-
-class Options(object):
-
- class UnknownOptionError(Exception):
- pass
-
- def __init__(self, **kwargs):
-
- self.verbose = False
- self.timing = False
- self.drop_tables = []
-
- self.set(**kwargs)
-
- def set(self, **kwargs):
- for k,v in kwargs.items():
- if not hasattr(self, k):
- raise self.UnknownOptionError("Unknown option '%s'" % k)
- setattr(self, k, v)
-
- def parse_opts(self, argv, ignore_unknown=[]):
- ret = []
- opts = {}
- for a in argv:
- orig_a = a
- if not a.startswith('--'):
- ret.append(a)
- continue
- a = a[2:]
- i = a.find('=')
- op = '='
- if i == -1:
- if a.startswith("no-"):
- k = a[3:]
- v = False
- else:
- k = a
- v = True
- else:
- k = a[:i]
- if k[-1] in "-+":
- op = k[-1]+'=' # Ops is '-=' or '+=' now.
- k = k[:-1]
- v = a[i+1:]
- ok = k
- k = k.replace('-', '_')
- if not hasattr(self, k):
- if ignore_unknown is True or ok in ignore_unknown:
- ret.append(orig_a)
- continue
- else:
- raise self.UnknownOptionError("Unknown option '%s'" % a)
-
- ov = getattr(self, k)
- if isinstance(ov, bool):
- v = bool(v)
- elif isinstance(ov, int):
- v = int(v)
- elif isinstance(ov, list):
- vv = v.split(',')
- if vv == ['']:
- vv = []
- vv = [int(x, 0) if len(x) and x[0] in "0123456789" else x for x in vv]
- if op == '=':
- v = vv
- elif op == '+=':
- v = ov
- v.extend(vv)
- elif op == '-=':
- v = ov
- for x in vv:
- if x in v:
- v.remove(x)
- else:
- assert 0
-
- opts[k] = v
- self.set(**opts)
-
- return ret
-