code: @Override
    public boolean intersects(IVersionRange yourRange)
    {
      // If the supplied set is a version set, let it deal with it
      if (yourRange instanceof VersionSet) {
        return yourRange.intersects(this);
      }
      // If the other range is a simple range, then we can just check the extremities
      // to see if they overlap
      else if (yourRange instanceof VersionRange) {
        IVersion useMyVersion = null;
        switch (operator) {
          case ">":
            useMyVersion = version.getNextVersion();
            break;
          case "<":
            useMyVersion = version.getPrevVersion();
            break;
          default:
            useMyVersion = version;
            break;
        }
        if (yourRange.contains(useMyVersion)) {
          return true;
        }
  
        IVersion useYourVersion = null;
        switch (((VersionRange) yourRange).operator) {
          case ">":
            useYourVersion = ((VersionRange) yourRange).version.getNextVersion();
            break;
          case "<":
            useYourVersion = ((VersionRange) yourRange).version.getPrevVersion();
            break;
          default:
            useYourVersion = ((VersionRange) yourRange).version;
            break;
        }
        if (this.contains(useYourVersion)) {
          return true;
        }
  
        // Special case: Versions right next to each other >1.2.6 & <1.2.7
        // There may be micro-versions or snapshot versions between them
        if (this.version.equals(useYourVersion) && ((VersionRange) yourRange).version.equals(useMyVersion)) {
          return true;
        }
      }
      // Logical ranges need to be broken down
      else if (yourRange instanceof AndRange) {
        return yourRange.intersects(this);
      }
      else if (yourRange instanceof OrRange) {
        return yourRange.intersects(this);
      }
      else {
        throw new UnsupportedOperationException();
      }
      return false;
    }
docs: /*
  (non-Javadoc)
  @see net.ossindex.version.IVersionRange#intersects(net.ossindex.version.IVersionRange)