@Override public Set<IVariable<?>> getRequiredBound(StaticAnalysis sa) { return getConsumedVars(); }
@Override public Set<IVariable<?>> getRequiredBound(StaticAnalysis sa) { return getConsumedVars(); }
/** * Helper method to determine the set of filters that will be fully bound * assuming the specified set of variables is bound. */ private final List<FilterNode> getBoundFilters( final JoinGroupNode group, final Set<IVariable<?>> knownBound) { final List<FilterNode> filters = new LinkedList<FilterNode>(); for (IQueryNode node : group) { if (!(node instanceof FilterNode)) continue; final FilterNode filter = (FilterNode) node; final Set<IVariable<?>> filterVars = filter.getConsumedVars(); boolean allBound = true; for (IVariable<?> v : filterVars) { allBound &= knownBound.contains(v); } if (allBound) { filters.add(filter); } } return filters; }
/** * Helper method to determine the set of filters that will be fully bound * assuming the specified set of variables is bound. */ private final List<FilterNode> getBoundFilters( final JoinGroupNode group, final Set<IVariable<?>> knownBound) { final List<FilterNode> filters = new LinkedList<FilterNode>(); for (IQueryNode node : group) { if (!(node instanceof FilterNode)) continue; final FilterNode filter = (FilterNode) node; final Set<IVariable<?>> filterVars = filter.getConsumedVars(); boolean allBound = true; for (IVariable<?> v : filterVars) { allBound &= knownBound.contains(v); } if (allBound) { filters.add(filter); } } return filters; }