com.ibm.icu.lang
Class UScriptRun

java.lang.Object
  extended by com.ibm.icu.lang.UScriptRun

Deprecated. This API is ICU internal only.

public final class UScriptRun
extends Object

UScriptRun is used to find runs of characters in the same script, as defined in the UScript class. It implements a simple iterator over an array of characters. The iterator will assign COMMON and INHERITED characters to the same script as the preceeding characters. If the COMMON and INHERITED characters are first, they will be assigned to the same script as the following characters. The iterator will try to match paired punctuation. If it sees an opening punctuation character, it will remember the script that was assigned to that character, and assign the same script to the matching closing punctuation. No attempt is made to combine related scripts into a single run. In particular, Hiragana, Katakana, and Han characters will appear in separate runs. Here is an example of how to iterate over script runs:

 void printScriptRuns(char[] text)
 {
     UScriptRun scriptRun = new UScriptRun(text);

     while (scriptRun.next()) {
         int start  = scriptRun.getScriptStart();
         int limit  = scriptRun.getScriptLimit();
         int script = scriptRun.getScriptCode();

         System.out.println("Script \"" + UScript.getName(script) + "\" from " +
                            start + " to " + limit + ".");
     }
  }
 

Status:
Internal. This API is ICU internal only.

Constructor Summary
UScriptRun()
          Deprecated. This API is ICU internal only.
UScriptRun(char[] chars)
          Deprecated. This API is ICU internal only.
UScriptRun(char[] chars, int start, int count)
          Deprecated. This API is ICU internal only.
UScriptRun(String text)
          Deprecated. This API is ICU internal only.
UScriptRun(String text, int start, int count)
          Deprecated. This API is ICU internal only.
 
Method Summary
 int getScriptCode()
          Deprecated. This API is ICU internal only.
 int getScriptLimit()
          Deprecated. This API is ICU internal only.
 int getScriptStart()
          Deprecated. This API is ICU internal only.
 boolean next()
          Deprecated. This API is ICU internal only.
 void reset()
          Deprecated. This API is ICU internal only.
 void reset(char[] chars)
          Deprecated. This API is ICU internal only.
 void reset(char[] chars, int start, int count)
          Deprecated. This API is ICU internal only.
 void reset(int start, int count)
          Deprecated. This API is ICU internal only.
 void reset(String str)
          Deprecated. This API is ICU internal only.
 void reset(String str, int start, int count)
          Deprecated. This API is ICU internal only.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

UScriptRun

public UScriptRun()
Deprecated. This API is ICU internal only.

Construct an empty UScriptRun object. The next() method will return false the first time it is called.

Status:
Internal. This API is ICU internal only.

UScriptRun

public UScriptRun(String text)
Deprecated. This API is ICU internal only.

Construct a UScriptRun object which iterates over the characters in the given string.

Parameters:
text - the string of characters over which to iterate.
Status:
Internal. This API is ICU internal only.

UScriptRun

public UScriptRun(String text,
                  int start,
                  int count)
Deprecated. This API is ICU internal only.

Construct a UScriptRun object which iterates over a subrange of the characetrs in the given string.

Parameters:
text - the string of characters over which to iterate.
start - the index of the first character over which to iterate
count - the number of characters over which to iterate
Status:
Internal. This API is ICU internal only.

UScriptRun

public UScriptRun(char[] chars)
Deprecated. This API is ICU internal only.

Construct a UScriptRun object which iterates over the given characetrs.

Parameters:
chars - the array of characters over which to iterate.
Status:
Internal. This API is ICU internal only.

UScriptRun

public UScriptRun(char[] chars,
                  int start,
                  int count)
Deprecated. This API is ICU internal only.

Construct a UScriptRun object which iterates over a subrange of the given characetrs.

Parameters:
chars - the array of characters over which to iterate.
start - the index of the first character over which to iterate
count - the number of characters over which to iterate
Status:
Internal. This API is ICU internal only.
Method Detail

reset

public final void reset()
Deprecated. This API is ICU internal only.

Reset the iterator to the start of the text.

Status:
Internal. This API is ICU internal only.

reset

public final void reset(int start,
                        int count)
                 throws IllegalArgumentException
Deprecated. This API is ICU internal only.

Reset the iterator to iterate over the given range of the text. Throws IllegalArgumentException if the range is outside of the bounds of the character array.

Parameters:
start - the index of the new first character over which to iterate
count - the new number of characters over which to iterate.
Throws:
IllegalArgumentException
Status:
Internal. This API is ICU internal only.

reset

public final void reset(char[] chars,
                        int start,
                        int count)
Deprecated. This API is ICU internal only.

Reset the iterator to iterate over count characters in chars starting at start. This allows clients to reuse an iterator.

Parameters:
chars - the new array of characters over which to iterate.
start - the index of the first character over which to iterate.
count - the number of characters over which to iterate.
Status:
Internal. This API is ICU internal only.

reset

public final void reset(char[] chars)
Deprecated. This API is ICU internal only.

Reset the iterator to iterate over the characters in chars. This allows clients to reuse an iterator.

Parameters:
chars - the new array of characters over which to iterate.
Status:
Internal. This API is ICU internal only.

reset

public final void reset(String str,
                        int start,
                        int count)
Deprecated. This API is ICU internal only.

Reset the iterator to iterate over count characters in text starting at start. This allows clients to reuse an iterator.

Parameters:
str - the new string of characters over which to iterate.
start - the index of the first character over which to iterate.
count - the nuber of characters over which to iterate.
Status:
Internal. This API is ICU internal only.

reset

public final void reset(String str)
Deprecated. This API is ICU internal only.

Reset the iterator to iterate over the characters in text. This allows clients to reuse an iterator.

Parameters:
str - the new string of characters over which to iterate.
Status:
Internal. This API is ICU internal only.

getScriptStart

public final int getScriptStart()
Deprecated. This API is ICU internal only.

Get the starting index of the current script run.

Returns:
the index of the first character in the current script run.
Status:
Internal. This API is ICU internal only.

getScriptLimit

public final int getScriptLimit()
Deprecated. This API is ICU internal only.

Get the index of the first character after the current script run.

Returns:
the index of the first character after the current script run.
Status:
Internal. This API is ICU internal only.

getScriptCode

public final int getScriptCode()
Deprecated. This API is ICU internal only.

Get the script code for the script of the current script run.

Returns:
the script code for the script of the current script run.
See Also:
UScript
Status:
Internal. This API is ICU internal only.

next

public final boolean next()
Deprecated. This API is ICU internal only.

Find the next script run. Returns false if there isn't another run, returns true if there is.

Returns:
false if there isn't another run, true if there is.
Status:
Internal. This API is ICU internal only.


Copyright (c) 2009 IBM Corporation and others.