code: public static int indexOf(final CharSequence seq, final CharSequence searchSeq) {
          if (seq == null || searchSeq == null) {
              return INDEX_NOT_FOUND;
          }
          return CharSequenceUtils.indexOf(seq, searchSeq, 0);
      }
docs: <p>Finds the first index within a CharSequence, handling {@code null}.
  This method uses {@link String#indexOf(String, int)} if possible.</p>
  
  <p>A {@code null} CharSequence will return {@code -1}.</p>
  
  <pre>
  StringUtils.indexOf(null, *)          = -1
  StringUtils.indexOf(*, null)          = -1
  StringUtils.indexOf("", "")           = 0
  StringUtils.indexOf("", *)            = -1 (except when * = "")
  StringUtils.indexOf("aabaabaa", "a")  = 0
  StringUtils.indexOf("aabaabaa", "b")  = 2
  StringUtils.indexOf("aabaabaa", "ab") = 1
  StringUtils.indexOf("aabaabaa", "")   = 0
  </pre>
  
  @param seq  the CharSequence to check, may be null
  @param searchSeq  the CharSequence to find, may be null
  @return the first index of the search CharSequence,
  -1 if no match or {@code null} string input
  @since 2.0
  @since 3.0 Changed signature from indexOf(String, String) to indexOf(CharSequence, CharSequence)