class com.google.common.io.BaseEncoding$StandardBaseEncoding$2 extends java.io.InputStream
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.google.common.io.BaseEncoding$StandardBaseEncoding$2
super_class: java.io.InputStream
{
int bitBuffer;
descriptor: I
flags: (0x0000)
int bitBufferLength;
descriptor: I
flags: (0x0000)
int readChars;
descriptor: I
flags: (0x0000)
boolean hitPadding;
descriptor: Z
flags: (0x0000)
final com.google.common.io.BaseEncoding$StandardBaseEncoding this$1;
descriptor: Lcom/google/common/io/BaseEncoding$StandardBaseEncoding;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final java.io.Reader val$reader;
descriptor: Ljava/io/Reader;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(com.google.common.io.BaseEncoding$StandardBaseEncoding, java.io.Reader);
descriptor: (Lcom/google/common/io/BaseEncoding$StandardBaseEncoding;Ljava/io/Reader;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 0: aload 0
aload 1
putfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.this$1:Lcom/google/common/io/BaseEncoding$StandardBaseEncoding;
aload 0
aload 2
putfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.val$reader:Ljava/io/Reader;
aload 0
invokespecial java.io.InputStream.<init>:()V
1: aload 0
iconst_0
putfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.bitBuffer:I
2: aload 0
iconst_0
putfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.bitBufferLength:I
3: aload 0
iconst_0
putfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.readChars:I
4: aload 0
iconst_0
putfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.hitPadding:Z
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/google/common/io/BaseEncoding$StandardBaseEncoding$2;
MethodParameters:
Name Flags
this$0 final
val$reader final
public int read();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.val$reader:Ljava/io/Reader;
invokevirtual java.io.Reader.read:()I
istore 1
start local 1 1: iload 1
iconst_m1
if_icmpne 5
2: aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.hitPadding:Z
ifne 4
aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.this$1:Lcom/google/common/io/BaseEncoding$StandardBaseEncoding;
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding.alphabet:Lcom/google/common/io/BaseEncoding$Alphabet;
aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.readChars:I
invokevirtual com.google.common.io.BaseEncoding$Alphabet.isValidPaddingStartPosition:(I)Z
ifne 4
3: new com.google.common.io.BaseEncoding$DecodingException
dup
new java.lang.StringBuilder
dup
ldc "Invalid input length "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.readChars:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial com.google.common.io.BaseEncoding$DecodingException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: int
StackMap stack:
iconst_m1
ireturn
5: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.readChars:I
iconst_1
iadd
putfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.readChars:I
6: iload 1
i2c
istore 2
start local 2 7: aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.this$1:Lcom/google/common/io/BaseEncoding$StandardBaseEncoding;
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding.paddingChar:Ljava/lang/Character;
ifnull 13
aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.this$1:Lcom/google/common/io/BaseEncoding$StandardBaseEncoding;
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding.paddingChar:Ljava/lang/Character;
invokevirtual java.lang.Character.charValue:()C
iload 2
if_icmpne 13
8: aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.hitPadding:Z
ifne 11
9: aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.readChars:I
iconst_1
if_icmpeq 10
aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.this$1:Lcom/google/common/io/BaseEncoding$StandardBaseEncoding;
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding.alphabet:Lcom/google/common/io/BaseEncoding$Alphabet;
aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.readChars:I
iconst_1
isub
invokevirtual com.google.common.io.BaseEncoding$Alphabet.isValidPaddingStartPosition:(I)Z
ifne 11
10: StackMap locals: int
StackMap stack:
new com.google.common.io.BaseEncoding$DecodingException
dup
new java.lang.StringBuilder
dup
ldc "Padding cannot start at index "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.readChars:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial com.google.common.io.BaseEncoding$DecodingException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.hitPadding:Z
12: goto 0
StackMap locals:
StackMap stack:
13: aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.hitPadding:Z
ifeq 17
14: new com.google.common.io.BaseEncoding$DecodingException
dup
15: new java.lang.StringBuilder
dup
ldc "Expected padding character but found '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc "' at index "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.readChars:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
16: invokespecial com.google.common.io.BaseEncoding$DecodingException.<init>:(Ljava/lang/String;)V
athrow
17: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.bitBuffer:I
aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.this$1:Lcom/google/common/io/BaseEncoding$StandardBaseEncoding;
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding.alphabet:Lcom/google/common/io/BaseEncoding$Alphabet;
getfield com.google.common.io.BaseEncoding$Alphabet.bitsPerChar:I
ishl
putfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.bitBuffer:I
18: aload 0
dup
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.bitBuffer:I
aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.this$1:Lcom/google/common/io/BaseEncoding$StandardBaseEncoding;
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding.alphabet:Lcom/google/common/io/BaseEncoding$Alphabet;
iload 2
invokevirtual com.google.common.io.BaseEncoding$Alphabet.decode:(C)I
ior
putfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.bitBuffer:I
19: aload 0
dup
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.bitBufferLength:I
aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.this$1:Lcom/google/common/io/BaseEncoding$StandardBaseEncoding;
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding.alphabet:Lcom/google/common/io/BaseEncoding$Alphabet;
getfield com.google.common.io.BaseEncoding$Alphabet.bitsPerChar:I
iadd
putfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.bitBufferLength:I
20: aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.bitBufferLength:I
bipush 8
if_icmplt 0
21: aload 0
dup
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.bitBufferLength:I
bipush 8
isub
putfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.bitBufferLength:I
22: aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.bitBuffer:I
aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.bitBufferLength:I
ishr
sipush 255
iand
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lcom/google/common/io/BaseEncoding$StandardBaseEncoding$2;
1 23 1 readChar I
7 23 2 ch C
Exceptions:
throws java.io.IOException
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.google.common.io.BaseEncoding$StandardBaseEncoding$2.val$reader:Ljava/io/Reader;
invokevirtual java.io.Reader.close:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/common/io/BaseEncoding$StandardBaseEncoding$2;
Exceptions:
throws java.io.IOException
}
SourceFile: "BaseEncoding.java"
EnclosingMethod: com.google.common.io.BaseEncoding$StandardBaseEncoding.decodingStream:(Ljava/io/Reader;)Ljava/io/InputStream;
NestHost: com.google.common.io.BaseEncoding
InnerClasses:
private final Alphabet = com.google.common.io.BaseEncoding$Alphabet of com.google.common.io.BaseEncoding
public final DecodingException = com.google.common.io.BaseEncoding$DecodingException of com.google.common.io.BaseEncoding
StandardBaseEncoding = com.google.common.io.BaseEncoding$StandardBaseEncoding of com.google.common.io.BaseEncoding
com.google.common.io.BaseEncoding$StandardBaseEncoding$2