public PropertyGraphModel Transform(PropertyGraphModel graph) { var result = graph; if (WhereClause != null) { result = WhereClause.Transform(result); } if (CalculateClause != null) { result = CalculateClause.Transform(result); } if (SelectPropsClause != null) { result = SelectPropsClause.Transform(result); } if (GroupByClause != null) { result = GroupByClause.Transform(result); } if (LayoutClause != null) { result = LayoutClause.Transform(result); } result.ClearIfEmpty(); return(result); }
private CalculateClause ParseCalculateClause(ParseTreeNode node) { if (node.ChildNodes.Count == 0) { return(null); } var result = new CalculateClause() { Metrics = ParseMetricList(node.ChildNodes[1]) }; return(result); }