def check(me, sz): return me.min <= sz <= me.max and sz%me.mod == 0
def best(me, sz):
if sz < me.min: raise ValueError('key too small')
- elif sz > me.max: return me.max
+ elif me.max is not None and sz > me.max: return me.max
else: return sz - sz%me.mod
def pad(me, sz):
- if sz > me.max: raise ValueError('key too large')
+ if me.max is not None and sz > me.max: raise ValueError('key too large')
elif sz < me.min: return me.min
else: sz += me.mod - 1; return sz - sz%me.mod
_augment(KeySZRange, _tmp)