public ExpandClauseParser( Func <string, IList <QueueItem> > tokenFunc, string query, GraphSchema graph, IAcceptAdditions select, IAcceptAdditions filter, IReadOnlyDictionary <Regex, Func <IList <QueueItem>, ITuple <QueueItem, int> > > groupingTerms) : base(tokenFunc, query, groupingTerms) { Graph = graph; _SelectAdd = select; _FilterAdd = filter; Result = new List <SchemaPath>(); }
public TraverseExpandQueueItem(GraphSchema graph, Action <QueueItem> selectAdd, Action <QueueItem> filterAdd) { this.graph = graph; SelectAddFunc = selectAdd; FilterAddFunc = filterAdd; }
internal static IEnumerable <SchemaPath> ExpandPropertyToEdgeList(QueueItem expandItem, GraphSchema graph) { var traverse = new TraverseExpandQueueItem(graph, ignored => { }, ignored => { }); var result = traverse.Traverse(graph.VertexContainingType(typeof(TRootQueryType)), expandItem).ToList(); return(result); }