| 2812 | """ |
| 2813 | |
| 2814 | def __init__(self, connector, num_children, negated): |
| 2815 | self.connector = connector |
| 2816 | self.negated = negated |
| 2817 | if self.negated: |
| 2818 | if connector == AND: |
| 2819 | self.effective_connector = OR |
| 2820 | else: |
| 2821 | self.effective_connector = AND |
| 2822 | else: |
| 2823 | self.effective_connector = self.connector |
| 2824 | self.num_children = num_children |
| 2825 | # Maps of table alias to how many times it is seen as required for |
| 2826 | # inner and/or outer joins. |
| 2827 | self.votes = Counter() |
| 2828 | |
| 2829 | def __repr__(self): |
| 2830 | return ( |