void LogicalGraphCreator::createLogicalGraph(HqlExprArray & exprs) { graph.setown(createPTree("graph")); // beginSubGraph(NULL, false); ForEachItemIn(i, exprs) createRootGraphActivity(&exprs.item(i)); // endSubGraph(); wu->createGraph("Logical", NULL, GraphTypeEcl, graph.getClear(), 0); }
void LogicalGraphCreator::createLogicalGraph(HqlExprArray & exprs) { graph.setown(createPTree("graph")); // beginSubGraph(NULL, false); ForEachItemIn(i, exprs) createRootGraphActivity(&exprs.item(i)); // endSubGraph(); Owned<IWUGraph> wug = wu->updateGraph("Logical"); wug->setXGMMLTree(graph.getClear()); wug->setType(GraphTypeEcl); }
void LogicalGraphCreator::createRootGraphActivity(IHqlExpression * expr) { switch (expr->getOperator()) { case no_comma: case no_compound: case no_sortlist: { ForEachChild(i, expr) createRootGraphActivity(expr->queryChild(i)); return; } default: beginSubGraph(NULL, false); createGraphActivity(expr); endSubGraph(false); } }