You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by se...@apache.org on 2012/03/28 01:50:04 UTC
svn commit: r1306062 - in /commons/proper/csv/trunk/src:
main/java/org/apache/commons/csv/CSVLexer.java
main/java/org/apache/commons/csv/Lexer.java
test/java/org/apache/commons/csv/CSVLexer1.java
Author: sebb
Date: Tue Mar 27 23:50:04 2012
New Revision: 1306062
URL: http://svn.apache.org/viewvc?rev=1306062&view=rev
Log:
CSV-70 Improve readability of CSVLexer
Remove unnecessary parameters
Modified:
commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/CSVLexer.java
commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/Lexer.java
commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/CSVLexer1.java
Modified: commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/CSVLexer.java
URL: http://svn.apache.org/viewvc/commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/CSVLexer.java?rev=1306062&r1=1306061&r2=1306062&view=diff
==============================================================================
--- commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/CSVLexer.java (original)
+++ commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/CSVLexer.java Tue Mar 27 23:50:04 2012
@@ -89,7 +89,7 @@ class CSVLexer extends Lexer {
}
// ok, start of token reached: comment, encapsulated, or token
- if (isCommentStart(c)) {
+ if (isCommentStart(c)) { // TODO should only match at start of line
// ignore everything till end of line and continue (incr linecount)
in.readLine();
tkn = nextToken(tkn.reset());
@@ -102,7 +102,7 @@ class CSVLexer extends Lexer {
tkn.type = EORECORD;
} else if (isEncapsulator(c)) {
// consume encapsulated token
- encapsulatedTokenLexer(tkn, c);
+ encapsulatedTokenLexer(tkn);
} else if (isEndOfFile(c)) {
// end of file return EOF()
//noop: tkn.content.append("");
@@ -150,7 +150,7 @@ class CSVLexer extends Lexer {
tkn.type = TOKEN;
break;
} else if (isEscape(c)) {
- tkn.content.append((char) readEscape(c));
+ tkn.content.append((char) readEscape());
} else {
tkn.content.append((char) c);
}
@@ -174,20 +174,20 @@ class CSVLexer extends Lexer {
* Whitespaces before and after an encapsulated token are ignored.
*
* @param tkn the current token
- * @param c the current character
* @return a valid token object
* @throws IOException on invalid state
*/
- private Token encapsulatedTokenLexer(Token tkn, int c) throws IOException {
+ private Token encapsulatedTokenLexer(Token tkn) throws IOException {
// save current line
int startLineNumber = getLineNumber();
// ignore the given delimiter
// assert c == delimiter;
+ int c;
while (true) {
c = in.read();
if (isEscape(c)) {
- tkn.content.append((char) readEscape(c));
+ tkn.content.append((char) readEscape());
} else if (isEncapsulator(c)) {
if (isEncapsulator(in.lookAhead())) {
// double or escaped encapsulator -> add single encapsulator to token
Modified: commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/Lexer.java
URL: http://svn.apache.org/viewvc/commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/Lexer.java?rev=1306062&r1=1306061&r2=1306062&view=diff
==============================================================================
--- commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/Lexer.java (original)
+++ commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/Lexer.java Tue Mar 27 23:50:04 2012
@@ -60,9 +60,9 @@ abstract class Lexer {
return in.getLineNumber();
}
- int readEscape(int c) throws IOException {
+ int readEscape() throws IOException {
// assume c is the escape char (normally a backslash)
- c = in.read();
+ int c = in.read();
switch (c) {
case 'r':
return '\r';
Modified: commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/CSVLexer1.java
URL: http://svn.apache.org/viewvc/commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/CSVLexer1.java?rev=1306062&r1=1306061&r2=1306062&view=diff
==============================================================================
--- commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/CSVLexer1.java (original)
+++ commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/CSVLexer1.java Tue Mar 27 23:50:04 2012
@@ -159,7 +159,7 @@ class CSVLexer1 extends Lexer {
tkn.isReady = true;
break;
} else if (c == format.getEscape()) {
- tkn.content.append((char) readEscape(c));
+ tkn.content.append((char) readEscape());
} else {
tkn.content.append((char) c);
}
@@ -196,7 +196,7 @@ class CSVLexer1 extends Lexer {
c = in.read();
if (c == format.getEscape()) {
- tkn.content.append((char) readEscape(c));
+ tkn.content.append((char) readEscape());
} else if (c == format.getEncapsulator()) {
if (in.lookAhead() == format.getEncapsulator()) {
// double or escaped encapsulator -> add single encapsulator to token