Index: source/test/intltest/tokiter.cpp |
diff --git a/source/test/intltest/tokiter.cpp b/source/test/intltest/tokiter.cpp |
deleted file mode 100644 |
index 809e03602f3c2dfd91fe844f3e53b2aa46a4ad1d..0000000000000000000000000000000000000000 |
--- a/source/test/intltest/tokiter.cpp |
+++ /dev/null |
@@ -1,108 +0,0 @@ |
-/* |
-********************************************************************** |
-* Copyright (c) 2004-2011, International Business Machines |
-* Corporation and others. All Rights Reserved. |
-********************************************************************** |
-* Author: Alan Liu |
-* Created: March 22 2004 |
-* Since: ICU 3.0 |
-********************************************************************** |
-*/ |
-#include "tokiter.h" |
-#include "textfile.h" |
-#include "patternprops.h" |
-#include "util.h" |
-#include "uprops.h" |
- |
-TokenIterator::TokenIterator(TextFile* r) { |
- reader = r; |
- done = haveLine = FALSE; |
- pos = lastpos = -1; |
-} |
- |
-TokenIterator::~TokenIterator() { |
-} |
- |
-UBool TokenIterator::next(UnicodeString& token, UErrorCode& ec) { |
- if (done || U_FAILURE(ec)) { |
- return FALSE; |
- } |
- token.truncate(0); |
- for (;;) { |
- if (!haveLine) { |
- if (!reader->readLineSkippingComments(line, ec)) { |
- done = TRUE; |
- return FALSE; |
- } |
- haveLine = TRUE; |
- pos = 0; |
- } |
- lastpos = pos; |
- if (!nextToken(token, ec)) { |
- haveLine = FALSE; |
- if (U_FAILURE(ec)) return FALSE; |
- continue; |
- } |
- return TRUE; |
- } |
-} |
- |
-int32_t TokenIterator::getLineNumber() const { |
- return reader->getLineNumber(); |
-} |
- |
-/** |
- * Read the next token from 'this->line' and append it to 'token'. |
- * Tokens are separated by Pattern_White_Space. Tokens may also be |
- * delimited by double or single quotes. The closing quote must match |
- * the opening quote. If a '#' is encountered, the rest of the line |
- * is ignored, unless it is backslash-escaped or within quotes. |
- * @param token the token is appended to this StringBuffer |
- * @param ec input-output error code |
- * @return TRUE if a valid token is found, or FALSE if the end |
- * of the line is reached or an error occurs |
- */ |
-UBool TokenIterator::nextToken(UnicodeString& token, UErrorCode& ec) { |
- ICU_Utility::skipWhitespace(line, pos, TRUE); |
- if (pos == line.length()) { |
- return FALSE; |
- } |
- UChar c = line.charAt(pos++); |
- UChar quote = 0; |
- switch (c) { |
- case 34/*'"'*/: |
- case 39/*'\\'*/: |
- quote = c; |
- break; |
- case 35/*'#'*/: |
- return FALSE; |
- default: |
- token.append(c); |
- break; |
- } |
- while (pos < line.length()) { |
- c = line.charAt(pos); // 16-bit ok |
- if (c == 92/*'\\'*/) { |
- UChar32 c32 = line.unescapeAt(pos); |
- if (c32 < 0) { |
- ec = U_MALFORMED_UNICODE_ESCAPE; |
- return FALSE; |
- } |
- token.append(c32); |
- } else if ((quote != 0 && c == quote) || |
- (quote == 0 && PatternProps::isWhiteSpace(c))) { |
- ++pos; |
- return TRUE; |
- } else if (quote == 0 && c == '#') { |
- return TRUE; // do NOT increment |
- } else { |
- token.append(c); |
- ++pos; |
- } |
- } |
- if (quote != 0) { |
- ec = U_UNTERMINATED_QUOTE; |
- return FALSE; |
- } |
- return TRUE; |
-} |