borland Packages  Class Hierarchy  jb.util Package 

FastStringBuffer component

java.lang.Object
   +----com.borland.jb.util.FastStringBuffer

About the FastStringBuffer component

Variables  Constructors  Properties  Methods  
Use the FastStringBuffer component to replace use of the StringBuffer class in those instances when a buffer is not shared. It removes some of the complications of synchronization and sharing.

Warning: Because none of the FastStringBuffer methods are synchronized, these methods should not be used for objects which may be accessed simultaneously. FastStingBuffer is intended for rapid processing on local objects.


FastStringBuffer variables

Variables implemented in this class

FastStringBuffer constructors

FastStringBuffer properties

*Read-only properties **Write-only properties

Properties implemented in this class

Properties implemented in java.lang.Object

FastStringBuffer methods

Methods implemented in this class

Methods implemented in java.lang.Object


FastStringBuffer variables

NOT_A_CHAR

  public static final int NOT_A_CHAR = 0
The given character is invalid.

NOTACHAR

  public static final int NOTACHAR = 0
A fetch has run out of bounds.

FastStringBuffer constructors

FastStringBuffer()

  public FastStringBuffer()
Constructs a FastStringBuffer object with a default length of 16 characters (char[16]). The offset and count are initialized to 0.

FastStringBuffer(char, int)

  public FastStringBuffer(char c, int nChars)
Constructs FastStringBuffer using the given number of repetitions and the given character. The initial capacity of the buffer is equal to the number of repetitions.

Parameters:

c
The character to construct FastStringBuffer with.
nChars
The number of repetitions.

FastStringBuffer(char[])

  public FastStringBuffer(char[] cArray)
Constructs FastStringBuffer with the given character. The initial capacity of the buffer is equal to the given character plus 16.

Parameters:

cArray
The character to construct FastStringBuffer with.

FastStringBuffer(char[], int, int)

  public FastStringBuffer(char[] cArray, int offset, int len)
Constructs FastStringBuffer from the given character with the specified number of characters. The initial capacity of the buffer is equal to the specified number of characters plus 16.

Parameters:

cArraay
The character to construct FastStringBuffer with.
offset
The location of FastStringBuffer.
len
The length of the buffer.

FastStringBuffer(int)

  public FastStringBuffer(int length)
Constructs an empty FastStringBuffer of the given length.

Parameters:

length
The initial capacity.

FastStringBuffer(java.lang.String)

  public FastStringBuffer(String str)
Constructs a new FastStringBuffer from the given string. The initial contents of the buffer are a copy of str. The initial capacity of the buffer is equal to the length of the string plus 16.

Parameters:

str
The string to create FastStringBuffer from.

FastStringBuffer properties

length

 public int getLength()
 public void setLength(int newLength)
Number of characters in the FastStringBuffer.

offset

 public int getOffset()
 public void setOffset(int offset)
Current position in FastStringBuffer. See nextChar() for more information.

value

 public char[] getValue()
Returns the char[] storage used by FastStringBuffer.

FastStringBuffer methods

append(char)

  public FastStringBuffer append(char c)
Appends the string representation of the specified character to FastStringBuffer. The length of the buffer is increased by 1.

Parameters:

c
The character to append.

append(char, int)

  public FastStringBuffer append(char c, int appendCount)
Appends the given number of repetitions of the given character to FastStringBuffer. The length of the buffer is increased by appendCount.

Parameters:

c
The character to append.
appendCount
The number of times to append the character.

append(char[])

  public FastStringBuffer append(char[] str)
Appends the string representation of the specified string to FastStringBuffer. The length of the buffer is increased by the number of characters in the string.

Parameters:

str
The string to append.

append(char[], int, int)

  public FastStringBuffer append(char[] str, int offset, int len)
Appends the string representation of the specified string at the given offset for the given count. FastStringBuffer is increased by the length of the string.

Parameters:

str
The string to append.
offset
The offset at which to append the string.
len
The length of the string.

append(com.borland.jb.util.FastStringBuffer)

  public FastStringBuffer append(FastStringBuffer fsb)
Apends one FastStringBuffer to another one. The original FastStringBuffer is increased by the length of the new buffer.

Parameters:

fsb
The buffer to append.

append(java.lang.Object)

  public FastStringBuffer append(Object obj)
Appends the given object to FastStringBuffer.

Parameters:

obj
The object to append.

append(java.lang.String)

  public FastStringBuffer append(String str)
Appends the string representation of the specified string to FastStringBuffer.

Parameters:

str
The string to append.

capacity()

  public int capacity()
Returns the current capacity of FastStringBuffer.

charAt(int)

  public char charAt(int index)
Returns the character at the given position.

Parameters:

index
The index position to examine. Must be greater than or equal to 0, and less than the length of FastStringBuffer.

charFromString(java.lang.String)

  public static char charFromString(String s)
Returns the first "logical" char value from the given String. This means that it handles backslashes, Unicode escape sequences, and so on.

charToUnicodeEscape(char)

  public static String charToUnicodeEscape(char ch)
Returns a String containing a Unicode escape sequence representing the given character. For example, charToUnicodeEscape('1') returns new String("\\u0031").

Parameters:

ch
The character to be converted to a Unicode escape sequence.

currentChar()

  public char currentChar()
Returns the character at offset. Note that this method starts at the current offest.

This method returns NOTACHAR if empty.

empty()

  public void empty()
Nulls the FastStringBuffer.

expandDelimiters(java.lang.String, java.lang.String)

  public static FastStringBuffer expandDelimiters(String sourceString, String delimiters)
Creates a copy of the given FastStringBuffer, but translates any characters in the specified delimiter set into Unicode "escape" sequences. This allows the new FastStringBuffer to use the normal StringTokenizer for parsing. This method returns a new FastStringBuffer containing all the characters of the source String, but with all delimiters expanded to Unicode escape sequences.

Parameters:

sourceString
The String to be scanned and converted (this String itself is not altered).
delimiters
A String consisting of the delimiters you don't want to see in the output StringBuffer, for example,
 new String("\t\r\n,")
Wherever these occur in the sourceString, they are converted to a Unicode escape sequence.

firstChar()

  public char firstChar()
Sets offset() to 0 and returns to the first character in the buffer. This method is used for loops with lastChar().

getChars(int, int, char[], int)

  public void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
Copies characters from FastStringBuffer into the destination character array.

The first character to be copied is at srcBegin. The last character to be copied is at srcEnd-1; making the total number of characters to be copied srcEnd - srcBegin. The characters are copied into the subarray of dst starting at dstBegin and ending at index:

dstbegin + (srcEnd-srcBegin) - 1
This method throws a StringIndexOutOfBoundsException if:

Parameters:

srcBegin
The index of the first character in the string to copy.
srcEnd
The index after the last character in the string to copy.
dst
The destination array.
dstBegin
The start offset in the destination array.

indexOf(com.borland.jb.util.FastStringBuffer, int)

  public int indexOf(FastStringBuffer subStr, int fromIndex)
Returns the index within FastStringBuffer of the first occurrence of subStr, starting at the specified index.

There is no restriction on the value of fromIndex:

Parameters:

subString
The substring to search for.
fromIndex
The index to start the search from.

IndexOfSubString(com.borland.jb.util.FastStringBuffer, int)

  public int IndexOfSubString(FastStringBuffer subStr, int fromIndex)
Finds the index in the given FastStringBuffer where the specified sub-string begins. Returns -1 if the string is not found.

Parameters:

subStr
The string to look for.
fromIndex
The index to start the search from.

insert(int, boolean)

  public FastStringBuffer insert(int offset, boolean b)
Inserts the string representation of the given boolean into FastStringBuffer at the given offset position.

The length of the buffer is increased by the length of b.

Parameters:

offset
The position at which to insert the boolean.
b
The boolean value to insert.

insert(int, char)

  public FastStringBuffer insert(int offset, char c)
Inserts the string representation of the given character into FastStringBuffer at the given position.

The length of the buffer is increased by 1.

Parameters:

offset
The position at which to insert the character.
c
The character to insert.

insert(int, char[])

  public FastStringBuffer insert(int offset, char[] str)
Inserts the string representation of the specified character string into FastStringBuffer at the given offset position.

The length of the buffer increases by the length of the string.

Parameters:

offset
The position at which to insert the character string.
str
The character string to insert.

insert(int, java.lang.Object)

  public FastStringBuffer insert(int offset, Object obj)
Inserts the string representation of the given object into FastStringBuffer at the given offset position.

The length of the buffer increases by the length of the object.

Parameters:

offset
The position at which to insert the object.
obj
The object to insert.

insert(int, java.lang.String)

  public FastStringBuffer insert(int offset, String str)
Inserts the string representation of the given string into FastStringBuffer at the given offset position.

The length of the buffer increases by the length of the string.

Parameters:

offset
The position at which to insert the string.
str
The string to insert.

lastChar()

  public char lastChar()
Moves the offset() to the last character in FastStringBuffer and returns that character. Meant to be used as lastChar()/priorChar() loop. This method returns NOTACHAR if empty.

lastIndexOf(com.borland.jb.util.FastStringBuffer, int)

  public int lastIndexOf(FastStringBuffer subStr, int fromIndex)
Returns the index within FastStringBuffer of the last occurrence of subStr. The returned index indicates the start of the substring, and it must be equal to or less than fromIndex.

There is no restriction on the value of fromIndex:

Parameters:

subStr
The string to look for.
fromIndex
The index to start the search from.

length()

  public int length()
Returns the number of actual characters in FastStringBuffer.

makeroom(int)

  public void makeroom(int minimumCapacity)
Increases the size of the FastStringBuffer so that it will hold at least the given number of characters.

Parameters:

minimumCapacity
The minimum number of characters in the buffer.

nextChar()

  public char nextChar()
Moves the offset() to the next sequential character in FastStringBuffer and returns that character.

normalizeDelimiters(java.lang.String)

  public FastStringBuffer normalizeDelimiters(String delimiters)
Turns any Unicode escape sequences that would result in one of the given delimiter characters into the displayable form of that delimiter. This method is the opposite of expandDelimiters.

Note: Do NOT pass any non-displayable delimiters into this method, for example, '\r'.

Parameters:

delimeters
The Unicode escape sequences.

offset()

  public int offset()
Internal current position in FastStringBuffer used by the following methods:

parseBackSlash()

  public char parseBackSlash()
Given a FastStringBuffer where charAt(), nextChar() or priorChar() have just returned the backslash character (in other words, where value[offset] == '\\'), this routine parses the rest as a single character backslash value (for example, "?") and advances the offset. It returns that character and leaves the FastStringBuffer pointing at the next character after the value.

parseLiteral()

  public FastStringBuffer parseLiteral()
Given a String which needs to be parsed as a literal String (including backslash characters), and assuming that value[offset] is currently pointing at the starting delimiter of this String, this routine buffers everything up to (but not including) another delimiter like the first. It advances the offset past that delimiter so that subsequent string processing can continue. It returns a new FastStringBuffer containing the literal.

parseLiteral(char, boolean)

  public FastStringBuffer parseLiteral(char delimiter, boolean allowDouble)
Given a string which needs to be parsed as a literal string (including backslash characters), and assuming value[offset] is currently pointing at the starting delimiter of this string, this routine buffers everything up to (but not including) another delimiter like the first. It advances the offset past that delimiter so subsequent string processing can continue. It returns a new FastStringBuffer containing the literal.

Parameters:

delimiter
The char value which marks the end of the literal.
allowDouble
A value of true indicates that two delimiters specified in a row evaluate to a single occurance of that literal in the string (and that it is not a delimiter).

peekNextChar()

  public char peekNextChar()
Peeks at the next character without advancing any pointers. Used in a firstChar()/nextChar() type loop.

priorChar()

  public char priorChar()
Moves the offset() to the previous sequential character in FastStringBuffer and returns that character. Meant to be used as lastChar()/priorChar() loop. This method returns NOTACHAR if empty.

removeChar()

  public void removeChar()
Removes the "current" character from the buffer, where "current" is defined by 'offset'. It is intended to be used in a firstChar()/nextChar() loop. It adjusts 'offset' so that the next nextChar() method call functions properly.

removeCharAt(int)

  public void removeCharAt(int index)
Removes the character from the buffer at index. It adjusts index so a nextChar() loop finds the character immediately following the one removed.

Parameters:

index
The location from which to remove the character.

removeChars(int)

  public void removeChars(int removeCount)
Removes the specified number of characters from the current position (where "current" is defined as value[offset]). It adjusts 'offset' so that the next nextChar() method call encounters the next character in the buffer.

Parameters:

removeCount
The number of characters to remove.

removeCharsAt(int, int)

  public void removeCharsAt(int index, int removeCount)
Removes the specified number of characters from the buffer at the specified buffer at index. It adjusts index so a nextChar() loop finds the character immediately following the one removed.

Parameters:

index
The location from which to remove the character.
removeCount
The number of characters to remove.

replaceCharAt(int, char)

  public void replaceCharAt(int index, char c)
Replaces the character at the given position with the given character.

Parameters:

index
The location at which to replace the character.
c
The character to replace the current character with.

setCharAt(int, char)

  public void setCharAt(int index, char ch)
Sets the character at the given index position to the given character.

Parameters:

index
The location at which to set the character. Must be greater than or equal to 0, and less than the length of FastStringBuffer.
c
The character to set the specified location to.

sourceToText(java.lang.String)

  public static FastStringBuffer sourceToText(String source)
Translates a String which is compatible with source code (including leading and trailing quote, expands backslash charaters, and so on) into its actual String representation. For example, the literal "\n" becomes the real linefeed character.

Parameters:

source
The String to translate.

stringFromChar(char)

  public static String stringFromChar(char c)
Returns a String which best represents the given character. This means that it expands it into a Unicode escape sequence if needed. This method is the opposite of charFromString().

Parameters:

c
The character to expand.

substring(int, int)

  public FastStringBuffer substring(int startPos, int endPos)
Returns a new string that is a substring of this string. The substring begins at the specified startPos and extends to the character at endPos - 1. Thus the length of the substring is startPos - endPos.

Parameters:

startPos
The beginning index, inclusive.
endPos
The ending index, exclusive.

textToSource(java.lang.String, boolean)

  public static FastStringBuffer textToSource(String text, boolean hasEscapes)
Converts a String into a form that compiles, translating special characters into their backslash-combination equivalents, and adding leading and trailing quotes.

textToSource(java.lang.String, boolean, java.lang.String)

  public static FastStringBuffer textToSource(String text, boolean hasEscapes, String indentString)
Converts a String into a form that compiles, translating special characters into their backslash-combination equivalents, and adding leading and trailing quotes. Adds the specified number of indent spaces to the beginning of the string.

toString()

  public String toString()
Converts FastStringBuffer to a string.

Overrides: java.lang.Object.toString()

value()

  public char[] value()
Returns the internal character string used by FastStringBuffer.