|
|
@ -628,11 +628,12 @@ class join(ast_node):
|
|
|
|
|
|
|
|
|
|
|
|
def strip_joint_cols(self, cols : Set[ColRef]):
|
|
|
|
def strip_joint_cols(self, cols : Set[ColRef]):
|
|
|
|
stripped = type(cols)(cols)
|
|
|
|
stripped = type(cols)(cols)
|
|
|
|
for c in stripped:
|
|
|
|
for c in cols:
|
|
|
|
jc = self.get_joint_cols([c])
|
|
|
|
if c in stripped:
|
|
|
|
for j in jc:
|
|
|
|
jc = self.get_joint_cols([c])
|
|
|
|
if j != c and j in stripped:
|
|
|
|
for j in jc:
|
|
|
|
stripped.remove(j)
|
|
|
|
if j != c and j in stripped:
|
|
|
|
|
|
|
|
stripped.remove(j)
|
|
|
|
return stripped
|
|
|
|
return stripped
|
|
|
|
|
|
|
|
|
|
|
|
def init(self, _):
|
|
|
|
def init(self, _):
|
|
|
|