public IntersectionQueryStep(IGraphQueryStep left, IGraphQueryStep right, OperationCancelToken token, bool returnEmptyIfRightEmpty = false, bool returnEmptyIfLeftEmpty = true) { _returnEmptyIfLeftEmpty = returnEmptyIfLeftEmpty; _returnEmptyIfRightEmpty = returnEmptyIfRightEmpty; _unionedAliases = new HashSet <string>(); _unionedAliases.UnionWith(left.GetAllAliases()); _unionedAliases.UnionWith(right.GetAllAliases()); var tmpIntersection = new HashSet <string>(left.GetAllAliases()); tmpIntersection.IntersectWith(right.GetAllAliases()); _intersectedAliases = tmpIntersection.ToList(); _left = left; _right = right; _token = token; }
public EdgeQueryStep(IGraphQueryStep left, IGraphQueryStep right, EdgeQueryStep eqs, OperationCancelToken token) { _left = left; _right = right; _aliases = new HashSet <string>(); _aliases.UnionWith(_left.GetAllAliases()); _aliases.UnionWith(_right.GetAllAliases()); _aliases.Add(eqs._edgePath.Alias.Value); _edgePath = eqs._edgePath; _queryParameters = eqs._queryParameters; _edgesExpression = eqs._edgesExpression; _outputAlias = _right.GetOutputAlias(); _token = token; }
public EdgeQueryStep(IGraphQueryStep left, IGraphQueryStep right, WithEdgesExpression edgesExpression, MatchPath edgePath, BlittableJsonReaderObject queryParameters, OperationCancelToken token) { _left = left; _right = right; _aliases = new HashSet <string>(); _aliases.UnionWith(_left.GetAllAliases()); _aliases.UnionWith(_right.GetAllAliases()); _aliases.Add(edgePath.Alias.Value); _edgePath = edgePath; _queryParameters = queryParameters; _edgesExpression = edgesExpression; _outputAlias = _right.GetOutputAlias(); _token = token; }
public RecursionQueryStep(IGraphQueryStep left, List <SingleEdgeMatcher> steps, RecursiveMatch recursive, RecursiveMatch.RecursiveOptions options, OperationCancelToken token) { _left = left; _steps = steps; _recursive = recursive; _options = options; _stepAliases.Add(left.GetOutputAlias()); foreach (var step in _steps) { if (step.Right == null) { continue; } _stepAliases.Add(step.Right.GetOutputAlias()); } _outputAlias = _stepAliases.Last(); _allLliases.UnionWith(_left.GetAllAliases()); _allLliases.Add(_recursive.Alias.Value); _token = token; }
public void Set(IGraphQueryStep left, IGraphQueryStep right) { _leftAliases = left.GetAllAliases(); _rightAliases = right.GetAllAliases(); }