void Visitor_DoMakeWalker::Visit_Expr_Rel_Union(const ZRef<RelationalAlgebra::Expr_Rel_Union>& iExpr) { if (ZRef<Walker> op0 = this->Do(iExpr->GetOp0())) { if (ZRef<Walker> op1 = this->Do(iExpr->GetOp1())) this->pSetResult(new Walker_Union(op0, op1)); else this->pSetResult(op0); } else if (ZRef<Walker> op1 = this->Do(iExpr->GetOp1())) this->pSetResult(op1); }
void Visitor_DoMakeWalker::Visit_Expr_Rel_Product(const ZRef<RelationalAlgebra::Expr_Rel_Product>& iExpr) { if (ZRef<Walker> op0 = this->Do(iExpr->GetOp0())) { if (ZRef<Walker> op1 = this->Do(iExpr->GetOp1())) this->pSetResult(new Walker_Product(op0, op1)); } }
void Visitor_DoMakeWalker::Visit_Expr_Rel_Embed(const ZRef<RelationalAlgebra::Expr_Rel_Embed>& iExpr) { if (ZRef<Walker> op0 = this->Do(iExpr->GetOp0())) { if (ZRef<Walker> op1 = this->Do(iExpr->GetOp1())) this->pSetResult(new Walker_Embed(op0, iExpr->GetColName(), op1)); } }
void ZVisitor_Expr_Bool_ToStrim::Visit_Expr_Bool_Or(const ZRef<ZExpr_Bool_Or>& iRep) { this->pStrimW() << "("; this->pToStrim(iRep->GetOp0()); this->pStrimW() << " | "; this->pToStrim(iRep->GetOp1()); this->pStrimW() << ")"; }
void Visitor_Expr_Bool_Do_Eval::Visit_Expr_Bool_Or(const ZRef<Expr_Bool_Or>& iRep) { this->pSetResult(this->Do(iRep->GetOp0()) || this->Do(iRep->GetOp1())); }
void ZVisitor_Expr_Bool_Do_Eval::Visit_Expr_Bool_And(const ZRef<ZExpr_Bool_And>& iRep) { this->pSetResult(this->Do(iRep->GetOp0()) && this->Do(iRep->GetOp1())); }