android/guava/src/com/google/common/io/CharSource.java
public static CharSource wrap(CharSequence charSequence) {
    return charSequence instanceof String
        ? new StringCharSource((String) charSequence)
        : new CharSequenceCharSource(charSequence);
  }
public static CharSource wrap(CharSequence charSequence) {
    return charSequence instanceof String
        ? new StringCharSource((String) charSequence)
        : new CharSequenceCharSource(charSequence);
  }
Returns a view of the given character sequence as a {@link CharSource}. The behavior of the
returned {@code CharSource} and any {@code Reader} instances created by it is unspecified if
the {@code charSequence} is mutated while it is being read, so don't do that.

@since 15.0 (since 14.0 as {@code CharStreams.asCharSource(String)})