def make_update_state_code(self, prefix, state, op, value): opcls = {L.SetAdd: L.Add, L.SetRemove: L.Sub}[op.__class__] by = {'count': L.Num(1), 'sum': L.Name(value)}[self.kind] return (L.Assign(state, L.BinOp(L.Name(state), opcls(), by)), )
def visit_WithoutMember(self, node): node = self.generic_visit(node) new_iter = L.BinOp(node.cl.iter, L.Sub(), L.Set([node.value])) return L.Member(node.cl.target, new_iter)