def _cumulative_to_window(translator, expr, window): win = W.cumulative_window() win = win.group_by(window._group_by).order_by(window._order_by) op = expr.op() klass = _cumulative_to_reduction[type(op)] new_op = klass(*op.args) new_expr = expr._factory(new_op, name=expr._name) if type(new_op) in translator._rewrites: new_expr = translator._rewrites[type(new_op)](new_expr) return L.windowize_function(new_expr, win)
def _cumulative_to_window(translator, expr, window): win = W.cumulative_window() win = win.group_by(window._group_by).order_by(window._order_by) op = expr.op() klass = _cumulative_to_reduction[type(op)] new_op = klass(*op.args) new_expr = expr._factory(new_op, name=expr._name) if type(new_op) in translator._rewrites: new_expr = translator._rewrites[type(new_op)](new_expr) return L.windowize_function(new_expr, win)