The HashIndexOp now offers means to compute distinct projections over a set of variable (see ticket
BLZG-1163). This is exposed via method AST2BOpUtility.addHashIndexOp(). Currently, this method is used for SPARQL 1.1 subqueries (AST2BOpUtility.addSparql11Subquery) as well as for join groups (AST2BOpUtility.addSubgroup).
However, there are some more positions in the code where we calculate hash indices and where the built-in projection capabilites might be useful. Consider the following methods:
Decide whether it makes sense to pass in projection variables in these positions. Even if not, it might be desirable to call method addHashIndexOp() (or a slightly modified version thererof) instead of the duplicated code blocks for hash index construction).