polyglot.util
Class QuotedStringTokenizer

java.lang.Object
  extended by java.util.StringTokenizer
      extended by polyglot.util.QuotedStringTokenizer
All Implemented Interfaces:
java.util.Enumeration<java.lang.Object>

public class QuotedStringTokenizer
extends java.util.StringTokenizer

A string tokenizer that understands quotes and escape characters.

Author:
Igor Peshansky, IBM Corporation

Field Summary
protected  java.lang.String delim
           
protected  char escape
           
protected  int len
           
protected  int pos
           
protected  java.lang.String quotes
           
protected  boolean returnDelims
           
protected  java.lang.String str
           
 
Constructor Summary
QuotedStringTokenizer(java.lang.String str)
          Constructs a string tokenizer for the specified string.
QuotedStringTokenizer(java.lang.String str, java.lang.String delim)
          Constructs a string tokenizer for the specified string.
QuotedStringTokenizer(java.lang.String str, java.lang.String delim, java.lang.String quotes, char escape, boolean returnDelims)
          Constructs a string tokenizer for the specified string.
 
Method Summary
 int countTokens()
          Calculates the number of times that this tokenizer's nextToken method can be called before it generates an exception.
 boolean hasMoreElements()
          Returns the same value as the hasMoreTokens method.
 boolean hasMoreTokens()
          Tests if there are more tokens available from this tokenizer's string.
 java.lang.Object nextElement()
          Returns the same value as the nextToken method, except that its declared return value is Object rather than String.
 java.lang.String nextToken()
          Returns the next token from this string tokenizer.
 java.lang.String nextToken(java.lang.String delim)
          Returns the next token in this string tokenizer's string.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

str

protected final java.lang.String str

delim

protected java.lang.String delim

quotes

protected final java.lang.String quotes

escape

protected final char escape

returnDelims

protected final boolean returnDelims

pos

protected int pos

len

protected final int len
Constructor Detail

QuotedStringTokenizer

public QuotedStringTokenizer(java.lang.String str)
Constructs a string tokenizer for the specified string. The default delimiters for StringTokenizer are used. "\"\'" are used as quotes, and '\\' is used as the escape character.


QuotedStringTokenizer

public QuotedStringTokenizer(java.lang.String str,
                             java.lang.String delim)
Constructs a string tokenizer for the specified string. "\"\'" are used as quotes, and '\\' is used as the escape character.


QuotedStringTokenizer

public QuotedStringTokenizer(java.lang.String str,
                             java.lang.String delim,
                             java.lang.String quotes,
                             char escape,
                             boolean returnDelims)
Constructs a string tokenizer for the specified string. Quotes cannot be delimiters, and the escape character can be neither a quote nor a delimiter.

Method Detail

hasMoreTokens

public boolean hasMoreTokens()
Tests if there are more tokens available from this tokenizer's string. Pre-condition: not inside a quoted string (token).

Overrides:
hasMoreTokens in class java.util.StringTokenizer

nextToken

public java.lang.String nextToken()
Returns the next token from this string tokenizer.

Overrides:
nextToken in class java.util.StringTokenizer

nextToken

public java.lang.String nextToken(java.lang.String delim)
Returns the next token in this string tokenizer's string.

Overrides:
nextToken in class java.util.StringTokenizer

countTokens

public int countTokens()
Calculates the number of times that this tokenizer's nextToken method can be called before it generates an exception.

Overrides:
countTokens in class java.util.StringTokenizer

hasMoreElements

public boolean hasMoreElements()
Returns the same value as the hasMoreTokens method.

Specified by:
hasMoreElements in interface java.util.Enumeration<java.lang.Object>
Overrides:
hasMoreElements in class java.util.StringTokenizer

nextElement

public java.lang.Object nextElement()
Returns the same value as the nextToken method, except that its declared return value is Object rather than String.

Specified by:
nextElement in interface java.util.Enumeration<java.lang.Object>
Overrides:
nextElement in class java.util.StringTokenizer