public class com.opencsv.RFC4180Parser extends com.opencsv.AbstractCSVParser
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.opencsv.RFC4180Parser
super_class: com.opencsv.AbstractCSVParser
{
private static final java.util.regex.Pattern SPECIAL_REGEX_CHARS;
descriptor: Ljava/util/regex/Pattern;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final java.lang.String separatorAsString;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String quoteCharString;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc "[{}()\\[\\].+*?^$\\\\|]"
invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
putstatic com.opencsv.RFC4180Parser.SPECIAL_REGEX_CHARS:Ljava/util/regex/Pattern;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
bipush 34
bipush 44
getstatic com.opencsv.enums.CSVReaderNullFieldIndicator.NEITHER:Lcom/opencsv/enums/CSVReaderNullFieldIndicator;
invokespecial com.opencsv.RFC4180Parser.<init>:(CCLcom/opencsv/enums/CSVReaderNullFieldIndicator;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/opencsv/RFC4180Parser;
void <init>(char, char, com.opencsv.enums.CSVReaderNullFieldIndicator);
descriptor: (CCLcom/opencsv/enums/CSVReaderNullFieldIndicator;)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 2
iload 1
aload 3
invokespecial com.opencsv.AbstractCSVParser.<init>:(CCLcom/opencsv/enums/CSVReaderNullFieldIndicator;)V
1: aload 0
getstatic com.opencsv.RFC4180Parser.SPECIAL_REGEX_CHARS:Ljava/util/regex/Pattern;
iload 2
invokestatic java.lang.Character.toString:(C)Ljava/lang/String;
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
ldc "\\\\$0"
invokevirtual java.util.regex.Matcher.replaceAll:(Ljava/lang/String;)Ljava/lang/String;
putfield com.opencsv.RFC4180Parser.separatorAsString:Ljava/lang/String;
2: aload 0
iload 1
invokestatic java.lang.Character.toString:(C)Ljava/lang/String;
putfield com.opencsv.RFC4180Parser.quoteCharString:Ljava/lang/String;
3: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/opencsv/RFC4180Parser;
0 4 1 quoteChar C
0 4 2 separator C
0 4 3 nullFieldIndicator Lcom/opencsv/enums/CSVReaderNullFieldIndicator;
MethodParameters:
Name Flags
quoteChar
separator
nullFieldIndicator
protected java.lang.String convertToCsvValue(java.lang.String, boolean);
descriptor: (Ljava/lang/String;Z)Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnonnull 1
aload 0
getfield com.opencsv.RFC4180Parser.nullFieldIndicator:Lcom/opencsv/enums/CSVReaderNullFieldIndicator;
getstatic com.opencsv.enums.CSVReaderNullFieldIndicator.NEITHER:Lcom/opencsv/enums/CSVReaderNullFieldIndicator;
invokevirtual com.opencsv.enums.CSVReaderNullFieldIndicator.equals:(Ljava/lang/Object;)Z
ifne 1
ldc ""
goto 2
StackMap locals:
StackMap stack:
1: aload 1
StackMap locals:
StackMap stack: java.lang.String
2: astore 3
start local 3 3: new java.lang.StringBuilder
dup
aload 3
ifnonnull 4
bipush 16
goto 5
StackMap locals: com.opencsv.RFC4180Parser java.lang.String int java.lang.String
StackMap stack: new 3 new 3
4: aload 3
invokevirtual java.lang.String.length:()I
iconst_2
imul
StackMap locals: com.opencsv.RFC4180Parser java.lang.String int java.lang.String
StackMap stack: new 3 new 3 int
5: invokespecial java.lang.StringBuilder.<init>:(I)V
astore 4
start local 4 6: aload 3
ifnull 7
aload 3
aload 0
invokevirtual com.opencsv.RFC4180Parser.getQuotechar:()C
invokestatic java.lang.Character.toString:(C)Ljava/lang/String;
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 7
iconst_1
goto 8
StackMap locals: java.lang.StringBuilder
StackMap stack:
7: iconst_0
StackMap locals:
StackMap stack: int
8: istore 5
start local 5 9: iload 2
ifne 10
aload 0
aload 1
iload 5
invokevirtual com.opencsv.RFC4180Parser.isSurroundWithQuotes:(Ljava/lang/String;Z)Z
ifne 10
iconst_0
goto 11
StackMap locals: int
StackMap stack:
10: iconst_1
StackMap locals:
StackMap stack: int
11: istore 6
start local 6 12: iload 5
ifne 13
aload 3
goto 14
StackMap locals: int
StackMap stack:
13: aload 3
aload 0
invokevirtual com.opencsv.RFC4180Parser.getQuotechar:()C
invokestatic java.lang.Character.toString:(C)Ljava/lang/String;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.opencsv.RFC4180Parser.getQuotechar:()C
invokestatic java.lang.Character.toString:(C)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual com.opencsv.RFC4180Parser.getQuotechar:()C
invokestatic java.lang.Character.toString:(C)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
14: astore 7
start local 7 15: iload 6
ifeq 17
16: aload 4
aload 0
invokevirtual com.opencsv.RFC4180Parser.getQuotechar:()C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
17: StackMap locals: java.lang.String
StackMap stack:
aload 4
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
18: iload 6
ifeq 20
19: aload 4
aload 0
invokevirtual com.opencsv.RFC4180Parser.getQuotechar:()C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
20: StackMap locals:
StackMap stack:
aload 4
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lcom/opencsv/RFC4180Parser;
0 21 1 value Ljava/lang/String;
0 21 2 applyQuotesToAll Z
3 21 3 testValue Ljava/lang/String;
6 21 4 builder Ljava/lang/StringBuilder;
9 21 5 containsQuoteChar Z
12 21 6 surroundWithQuotes Z
15 21 7 convertedString Ljava/lang/String;
MethodParameters:
Name Flags
value
applyQuotesToAll
protected java.lang.String[] parseLine(java.lang.String, boolean);
descriptor: (Ljava/lang/String;Z)[Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: iload 2
ifne 2
aload 0
getfield com.opencsv.RFC4180Parser.pending:Ljava/lang/String;
ifnull 2
1: aload 0
aconst_null
putfield com.opencsv.RFC4180Parser.pending:Ljava/lang/String;
2: StackMap locals:
StackMap stack:
aload 1
ifnonnull 8
3: aload 0
getfield com.opencsv.RFC4180Parser.pending:Ljava/lang/String;
ifnull 7
4: aload 0
getfield com.opencsv.RFC4180Parser.pending:Ljava/lang/String;
astore 4
start local 4 5: aload 0
aconst_null
putfield com.opencsv.RFC4180Parser.pending:Ljava/lang/String;
6: iconst_1
anewarray java.lang.String
dup
iconst_0
aload 4
aastore
areturn
end local 4 7: StackMap locals:
StackMap stack:
aconst_null
areturn
8: StackMap locals:
StackMap stack:
iload 2
ifeq 9
aload 0
getfield com.opencsv.RFC4180Parser.pending:Ljava/lang/String;
ifnull 9
new java.lang.StringBuilder
dup
aload 0
getfield com.opencsv.RFC4180Parser.pending:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
goto 10
StackMap locals:
StackMap stack:
9: aload 1
StackMap locals:
StackMap stack: java.lang.String
10: astore 4
start local 4 11: aload 0
aconst_null
putfield com.opencsv.RFC4180Parser.pending:Ljava/lang/String;
12: aload 4
aload 0
getfield com.opencsv.RFC4180Parser.quotechar:C
invokestatic org.apache.commons.lang3.StringUtils.contains:(Ljava/lang/CharSequence;I)Z
ifne 15
13: aload 0
aload 0
aload 4
invokevirtual com.opencsv.RFC4180Parser.tokenizeStringIntoArray:(Ljava/lang/String;)[Ljava/lang/String;
invokevirtual com.opencsv.RFC4180Parser.handleEmptySeparators:([Ljava/lang/String;)[Ljava/lang/String;
astore 3
start local 3 14: goto 22
end local 3 15: StackMap locals: com.opencsv.RFC4180Parser java.lang.String int top java.lang.String
StackMap stack:
aload 0
aload 0
aload 4
iload 2
invokevirtual com.opencsv.RFC4180Parser.splitWhileNotInQuotes:(Ljava/lang/String;Z)[Ljava/lang/String;
invokevirtual com.opencsv.RFC4180Parser.handleEmptySeparators:([Ljava/lang/String;)[Ljava/lang/String;
astore 3
start local 3 16: iconst_0
istore 5
start local 5 17: goto 21
18: StackMap locals: com.opencsv.RFC4180Parser java.lang.String int java.lang.String[] java.lang.String int
StackMap stack:
aload 3
iload 5
aaload
aload 0
getfield com.opencsv.RFC4180Parser.quotechar:C
invokestatic org.apache.commons.lang3.StringUtils.contains:(Ljava/lang/CharSequence;I)Z
ifeq 20
19: aload 3
iload 5
aload 0
aload 3
iload 5
aaload
invokevirtual com.opencsv.RFC4180Parser.handleQuotes:(Ljava/lang/String;)Ljava/lang/String;
aastore
20: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
21: iload 5
aload 3
arraylength
if_icmplt 18
end local 5 22: StackMap locals:
StackMap stack:
aload 3
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lcom/opencsv/RFC4180Parser;
0 23 1 nextLine Ljava/lang/String;
0 23 2 multi Z
14 15 3 elements [Ljava/lang/String;
16 23 3 elements [Ljava/lang/String;
5 7 4 s Ljava/lang/String;
11 23 4 lineToProcess Ljava/lang/String;
17 22 5 i I
MethodParameters:
Name Flags
nextLine
multi
private java.lang.String[] tokenizeStringIntoArray(java.lang.String);
descriptor: (Ljava/lang/String;)[Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield com.opencsv.RFC4180Parser.separatorAsString:Ljava/lang/String;
iconst_m1
invokevirtual java.lang.String.split:(Ljava/lang/String;I)[Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/opencsv/RFC4180Parser;
0 1 1 nextLine Ljava/lang/String;
MethodParameters:
Name Flags
nextLine
private java.lang.String[] handleEmptySeparators(java.lang.String[]);
descriptor: ([Ljava/lang/String;)[Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.opencsv.RFC4180Parser.nullFieldIndicator:Lcom/opencsv/enums/CSVReaderNullFieldIndicator;
getstatic com.opencsv.enums.CSVReaderNullFieldIndicator.EMPTY_SEPARATORS:Lcom/opencsv/enums/CSVReaderNullFieldIndicator;
if_acmpeq 1
aload 0
getfield com.opencsv.RFC4180Parser.nullFieldIndicator:Lcom/opencsv/enums/CSVReaderNullFieldIndicator;
getstatic com.opencsv.enums.CSVReaderNullFieldIndicator.BOTH:Lcom/opencsv/enums/CSVReaderNullFieldIndicator;
if_acmpne 7
1: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 2: goto 6
3: StackMap locals: int
StackMap stack:
aload 1
iload 2
aaload
invokevirtual java.lang.String.isEmpty:()Z
ifeq 5
4: aload 1
iload 2
aconst_null
aastore
5: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
6: iload 2
aload 1
arraylength
if_icmplt 3
end local 2 7: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/opencsv/RFC4180Parser;
0 8 1 strings [Ljava/lang/String;
2 7 2 i I
MethodParameters:
Name Flags
strings
private java.lang.String[] splitWhileNotInQuotes(java.lang.String, boolean);
descriptor: (Ljava/lang/String;Z)[Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=8, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 4
start local 4 2: goto 18
3: StackMap locals: int java.util.List
StackMap stack:
aload 1
aload 0
getfield com.opencsv.RFC4180Parser.separator:C
iload 3
invokevirtual java.lang.String.indexOf:(II)I
istore 5
start local 5 4: aload 1
aload 0
getfield com.opencsv.RFC4180Parser.quotechar:C
iload 3
invokevirtual java.lang.String.indexOf:(II)I
istore 6
start local 6 5: iload 5
iconst_m1
if_icmpne 9
6: aload 4
aload 1
iload 3
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
7: aload 1
invokevirtual java.lang.String.length:()I
istore 3
8: goto 18
StackMap locals: int int
StackMap stack:
9: iload 6
iconst_m1
if_icmpeq 10
iload 6
iload 5
if_icmpgt 10
iload 6
iload 3
if_icmpeq 13
10: StackMap locals:
StackMap stack:
aload 4
aload 1
iload 3
iload 5
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
11: iload 5
iconst_1
iadd
istore 3
12: goto 18
13: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 3
invokevirtual com.opencsv.RFC4180Parser.findEndOfFieldFromPosition:(Ljava/lang/String;I)I
istore 7
start local 7 14: aload 4
iload 7
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 15
aload 1
iload 3
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
goto 16
StackMap locals: com.opencsv.RFC4180Parser java.lang.String int int java.util.List int int int
StackMap stack: java.util.List
15: aload 1
iload 3
iload 7
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
StackMap locals: com.opencsv.RFC4180Parser java.lang.String int int java.util.List int int int
StackMap stack: java.util.List java.lang.String
16: invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
17: iload 7
iconst_1
iadd
istore 3
end local 7 end local 6 end local 5 18: StackMap locals:
StackMap stack:
iload 3
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 3
19: iload 2
ifeq 23
aload 0
aload 4
invokevirtual com.opencsv.RFC4180Parser.lastElementStartedWithQuoteButDidNotEndInOne:(Ljava/util/List;)Z
ifeq 23
20: aload 0
new java.lang.StringBuilder
dup
aload 4
aload 4
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield com.opencsv.RFC4180Parser.pending:Ljava/lang/String;
21: aload 4
aload 4
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
pop
22: goto 25
StackMap locals:
StackMap stack:
23: aload 1
aload 0
getfield com.opencsv.RFC4180Parser.separator:C
invokevirtual java.lang.String.lastIndexOf:(I)I
aload 1
invokevirtual java.lang.String.length:()I
iconst_1
isub
if_icmpne 25
24: aload 4
ldc ""
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
25: StackMap locals:
StackMap stack:
aload 4
getstatic org.apache.commons.lang3.ArrayUtils.EMPTY_STRING_ARRAY:[Ljava/lang/String;
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.String[]
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lcom/opencsv/RFC4180Parser;
0 26 1 nextLine Ljava/lang/String;
0 26 2 multi Z
1 26 3 currentPosition I
2 26 4 elements Ljava/util/List<Ljava/lang/String;>;
4 18 5 nextSeparator I
5 18 6 nextQuote I
14 18 7 fieldEnd I
MethodParameters:
Name Flags
nextLine
multi
private boolean lastElementStartedWithQuoteButDidNotEndInOne(java.util.List<java.lang.String>);
descriptor: (Ljava/util/List;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
aload 1
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
astore 2
start local 2 1: aload 0
aload 2
invokevirtual com.opencsv.RFC4180Parser.startsButDoesNotEndWithQuote:(Ljava/lang/String;)Z
ifne 2
aload 0
aload 2
invokevirtual com.opencsv.RFC4180Parser.hasOnlyOneQuote:(Ljava/lang/String;)Z
ifne 2
aload 0
aload 2
invokevirtual com.opencsv.RFC4180Parser.hasOddQuotes:(Ljava/lang/String;)Z
ifne 2
iconst_0
ireturn
StackMap locals: java.lang.String
StackMap stack:
2: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/opencsv/RFC4180Parser;
0 3 1 elements Ljava/util/List<Ljava/lang/String;>;
1 3 2 lastElement Ljava/lang/String;
Signature: (Ljava/util/List<Ljava/lang/String;>;)Z
MethodParameters:
Name Flags
elements
private boolean hasOddQuotes(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield com.opencsv.RFC4180Parser.quotechar:C
invokestatic org.apache.commons.lang3.StringUtils.countMatches:(Ljava/lang/CharSequence;C)I
iconst_2
irem
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/opencsv/RFC4180Parser;
0 2 1 lastElement Ljava/lang/String;
MethodParameters:
Name Flags
lastElement
private boolean hasOnlyOneQuote(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield com.opencsv.RFC4180Parser.quotechar:C
invokestatic org.apache.commons.lang3.StringUtils.countMatches:(Ljava/lang/CharSequence;C)I
iconst_1
if_icmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/opencsv/RFC4180Parser;
0 2 1 lastElement Ljava/lang/String;
MethodParameters:
Name Flags
lastElement
private boolean startsButDoesNotEndWithQuote(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield com.opencsv.RFC4180Parser.quotechar:C
invokestatic java.lang.Character.toString:(C)Ljava/lang/String;
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 1
aload 1
aload 0
getfield com.opencsv.RFC4180Parser.quotechar:C
invokestatic java.lang.Character.toString:(C)Ljava/lang/String;
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/opencsv/RFC4180Parser;
0 2 1 lastElement Ljava/lang/String;
MethodParameters:
Name Flags
lastElement
private int findEndOfFieldFromPosition(java.lang.String, int);
descriptor: (Ljava/lang/String;I)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
getfield com.opencsv.RFC4180Parser.quotechar:C
iload 2
iconst_1
iadd
invokevirtual java.lang.String.indexOf:(II)I
istore 3
start local 3 1: iconst_0
istore 4
start local 4 2: goto 10
3: StackMap locals: int int
StackMap stack:
iload 4
ifne 5
aload 1
iload 3
iconst_1
iadd
invokevirtual java.lang.String.charAt:(I)C
aload 0
getfield com.opencsv.RFC4180Parser.separator:C
if_icmpne 5
4: iload 3
iconst_1
iadd
ireturn
5: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield com.opencsv.RFC4180Parser.quotechar:C
iload 3
iconst_1
iadd
invokevirtual java.lang.String.indexOf:(II)I
istore 3
6: iload 4
ifeq 7
iconst_0
goto 8
StackMap locals:
StackMap stack:
7: iconst_1
StackMap locals:
StackMap stack: int
8: istore 4
9: aload 0
aload 1
iload 3
invokevirtual com.opencsv.RFC4180Parser.haveNotFoundLastQuote:(Ljava/lang/String;I)Z
ifeq 10
aload 1
iload 3
iconst_1
iadd
invokevirtual java.lang.String.charAt:(I)C
aload 0
getfield com.opencsv.RFC4180Parser.quotechar:C
if_icmpeq 5
10: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 3
invokevirtual com.opencsv.RFC4180Parser.haveNotFoundLastQuote:(Ljava/lang/String;I)Z
ifne 3
11: aload 1
invokevirtual java.lang.String.length:()I
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/opencsv/RFC4180Parser;
0 12 1 nextLine Ljava/lang/String;
0 12 2 currentPosition I
1 12 3 nextQuote I
2 12 4 inQuote Z
MethodParameters:
Name Flags
nextLine
currentPosition
private boolean haveNotFoundLastQuote(java.lang.String, int);
descriptor: (Ljava/lang/String;I)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
iconst_m1
if_icmpeq 1
iload 2
aload 1
invokevirtual java.lang.String.length:()I
iconst_1
isub
if_icmpge 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/opencsv/RFC4180Parser;
0 2 1 nextLine Ljava/lang/String;
0 2 2 nextQuote I
MethodParameters:
Name Flags
nextLine
nextQuote
private java.lang.String handleQuotes(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 1
astore 2
start local 2 1: aload 0
aload 2
invokevirtual com.opencsv.RFC4180Parser.hasOnlyOneQuote:(Ljava/lang/String;)Z
ifne 4
aload 2
aload 0
getfield com.opencsv.RFC4180Parser.quoteCharString:Ljava/lang/String;
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 4
2: aload 2
aload 0
getfield com.opencsv.RFC4180Parser.quoteCharString:Ljava/lang/String;
invokestatic org.apache.commons.lang3.StringUtils.removeStart:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 2
3: aload 2
aload 0
getfield com.opencsv.RFC4180Parser.quoteCharString:Ljava/lang/String;
invokestatic org.apache.commons.lang3.StringUtils.removeEnd:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 2
4: StackMap locals: java.lang.String
StackMap stack:
aload 2
new java.lang.StringBuilder
dup
aload 0
getfield com.opencsv.RFC4180Parser.quoteCharString:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.opencsv.RFC4180Parser.quoteCharString:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 0
getfield com.opencsv.RFC4180Parser.quoteCharString:Ljava/lang/String;
invokestatic org.apache.commons.lang3.StringUtils.replace:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 2
5: aload 2
invokevirtual java.lang.String.isEmpty:()Z
ifeq 7
aload 0
getfield com.opencsv.RFC4180Parser.nullFieldIndicator:Lcom/opencsv/enums/CSVReaderNullFieldIndicator;
getstatic com.opencsv.enums.CSVReaderNullFieldIndicator.BOTH:Lcom/opencsv/enums/CSVReaderNullFieldIndicator;
if_acmpeq 6
aload 0
getfield com.opencsv.RFC4180Parser.nullFieldIndicator:Lcom/opencsv/enums/CSVReaderNullFieldIndicator;
getstatic com.opencsv.enums.CSVReaderNullFieldIndicator.EMPTY_QUOTES:Lcom/opencsv/enums/CSVReaderNullFieldIndicator;
if_acmpne 7
6: StackMap locals:
StackMap stack:
aconst_null
astore 2
7: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/opencsv/RFC4180Parser;
0 8 1 element Ljava/lang/String;
1 8 2 ret Ljava/lang/String;
MethodParameters:
Name Flags
element
public com.opencsv.enums.CSVReaderNullFieldIndicator nullFieldIndicator();
descriptor: ()Lcom/opencsv/enums/CSVReaderNullFieldIndicator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.opencsv.RFC4180Parser.nullFieldIndicator:Lcom/opencsv/enums/CSVReaderNullFieldIndicator;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/opencsv/RFC4180Parser;
public java.lang.String getPendingText();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.opencsv.RFC4180Parser.pending:Ljava/lang/String;
invokestatic org.apache.commons.lang3.StringUtils.defaultString:(Ljava/lang/String;)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/opencsv/RFC4180Parser;
public void setErrorLocale(java.util.Locale);
descriptor: (Ljava/util/Locale;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/opencsv/RFC4180Parser;
0 1 1 errorLocale Ljava/util/Locale;
MethodParameters:
Name Flags
errorLocale
}
SourceFile: "RFC4180Parser.java"