2015-05-09 22:53:31 +00:00
|
|
|
def attrgetter(attr):
|
|
|
|
assert "." not in attr
|
2021-05-27 05:50:04 +00:00
|
|
|
|
2015-05-09 22:53:31 +00:00
|
|
|
def _attrgetter(obj):
|
|
|
|
return getattr(obj, attr)
|
2021-05-27 05:50:04 +00:00
|
|
|
|
2015-05-09 22:53:31 +00:00
|
|
|
return _attrgetter
|
2017-09-28 16:33:16 +00:00
|
|
|
|
|
|
|
|
|
|
|
def lt(a, b):
|
|
|
|
return a < b
|
|
|
|
|
2021-05-27 05:50:04 +00:00
|
|
|
|
2017-09-28 16:33:16 +00:00
|
|
|
def le(a, b):
|
|
|
|
return a <= b
|
|
|
|
|
2021-05-27 05:50:04 +00:00
|
|
|
|
2017-09-28 16:33:16 +00:00
|
|
|
def gt(a, b):
|
|
|
|
return a > b
|
|
|
|
|
2021-05-27 05:50:04 +00:00
|
|
|
|
2017-09-28 16:33:16 +00:00
|
|
|
def ge(a, b):
|
|
|
|
return a >= b
|
|
|
|
|
2021-05-27 05:50:04 +00:00
|
|
|
|
2017-09-28 16:33:16 +00:00
|
|
|
def eq(a, b):
|
|
|
|
return a == b
|
|
|
|
|
2021-05-27 05:50:04 +00:00
|
|
|
|
2017-09-28 16:33:16 +00:00
|
|
|
def ne(a, b):
|
|
|
|
return a != b
|
|
|
|
|
2021-05-27 05:50:04 +00:00
|
|
|
|
2017-09-28 16:33:16 +00:00
|
|
|
def mod(a, b):
|
|
|
|
return a % b
|
|
|
|
|
2021-05-27 05:50:04 +00:00
|
|
|
|
2017-09-28 16:33:16 +00:00
|
|
|
def truediv(a, b):
|
|
|
|
return a / b
|
|
|
|
|
2021-05-27 05:50:04 +00:00
|
|
|
|
2017-09-28 16:33:16 +00:00
|
|
|
def floordiv(a, b):
|
|
|
|
return a // b
|