code: private static OIndexSearchResult createIndexedProperty(final OSQLFilterCondition iCondition, final Object iItem) {
      if (iItem == null || !(iItem instanceof OSQLFilterItemField))
        return null;
  
      if (iCondition.getLeft() instanceof OSQLFilterItemField && iCondition.getRight() instanceof OSQLFilterItemField)
        return null;
  
      final OSQLFilterItemField item = (OSQLFilterItemField) iItem;
  
      if (item.hasChainOperators() && !item.isFieldChain())
        return null;
  
      final Object origValue = iCondition.getLeft() == iItem ? iCondition.getRight() : iCondition.getLeft();
  
      if (iCondition.getOperator() instanceof OQueryOperatorBetween || iCondition.getOperator() instanceof OQueryOperatorIn) {
        return new OIndexSearchResult(iCondition.getOperator(), item.getFieldChain(), origValue);
      }
  
      final Object value = OSQLHelper.getValue(origValue);
  
      if (value == null)
        return null;
  
      return new OIndexSearchResult(iCondition.getOperator(), item.getFieldChain(), value);
    }
docs: Add SQL filter field to the search candidate list.
  
  @param iCondition
  Condition item
  @param iItem
  Value to search
  @return true if the property was indexed and found, otherwise false