package//
// This software is now distributed according to
// the Lesser Gnu Public License. Please see
// http://www.gnu.org/copyleft/lesser.txt for
// the details.
// -- Happy Computing!
//
com.stevesoft.ewe_pat;
/** Package pat can search anything that implements this
interface. Package pat assumes the following:
<ul>
<li>The StringLike object will not change. Calls to
charAt(int) will not vary with time.
<li>The length of the object being searched is known
before the search begins and does not vary with time.
</ul>
Note that searching String is probably faster than searching
other objects, so searching String is still preferred if
possible.
*/
public interface StringLike {
public char charAt(int i);
public String toString();
public int length();
public String substring(int i1,int i2);
/** Obtain the underlying object, be it a String, char[],
RandomAccessFile, whatever. */
public Object unwrap();
/** By default, the result is put in a String or char[]
when a replace is done. If you wish to save the result
in some other StringBufferLike then you can do this
by implementing this method, or over-riding it's behavior
from an existing class. */
public BasicStringBufferLike newStringBufferLike();
public int indexOf(char c);
}