public boolean addStrictCompare(String keyProperty,ExprIdentNode keyPropNode,ExprIdentNode indexPropertyIdent){
  QueryGraphValueDesc value=findIdentEntry(indexPropertyIdent);
  if (value != null && value.getEntry() instanceof QueryGraphValueEntryHashKeyedExpr) {
    QueryGraphValueEntryHashKeyedExpr expr=(QueryGraphValueEntryHashKeyedExpr)value.getEntry();
    if (expr.isConstant()) {
      return false;
    }
  }
  if (value != null && value.getEntry() instanceof QueryGraphValueEntryHashKeyedProp) {
    return false;
  }
  items.add(new QueryGraphValueDesc(new ExprNode[]{indexPropertyIdent},new QueryGraphValueEntryHashKeyedProp(keyPropNode,keyProperty)));
  return true;
}

public boolean addStrictCompare ( String keyProperty , ExprIdentNode keyPropNode , ExprIdentNode indexPropertyIdent ) { QueryGraphValueDesc value = findIdentEntry ( indexPropertyIdent ) ; if ( value != null && value . getEntry ( ) instanceof QueryGraphValueEntryHashKeyedExpr ) { QueryGraphValueEntryHashKeyedExpr expr = ( QueryGraphValueEntryHashKeyedExpr ) value . getEntry ( ) ; if ( expr . isConstant ( ) ) { return false ; } } if ( value != null && value . getEntry ( ) instanceof QueryGraphValueEntryHashKeyedProp ) { return false ; } items . add ( new QueryGraphValueDesc ( new ExprNode [ ] { indexPropertyIdent } , new QueryGraphValueEntryHashKeyedProp ( keyPropNode , keyProperty ) ) ) ; return true ; }
add key and index property .
