class java.time.format.DateTimeFormatter$ClassicFormat extends java.text.Format
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: java.time.format.DateTimeFormatter$ClassicFormat
super_class: java.text.Format
{
private final java.time.format.DateTimeFormatter formatter;
descriptor: Ljava/time/format/DateTimeFormatter;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.time.temporal.TemporalQuery<?> parseType;
descriptor: Ljava/time/temporal/TemporalQuery;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/time/temporal/TemporalQuery<*>;
public void <init>(java.time.format.DateTimeFormatter, java.time.temporal.TemporalQuery<?>);
descriptor: (Ljava/time/format/DateTimeFormatter;Ljava/time/temporal/TemporalQuery;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.text.Format.<init>:()V
1: aload 0
aload 1
putfield java.time.format.DateTimeFormatter$ClassicFormat.formatter:Ljava/time/format/DateTimeFormatter;
2: aload 0
aload 2
putfield java.time.format.DateTimeFormatter$ClassicFormat.parseType:Ljava/time/temporal/TemporalQuery;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/time/format/DateTimeFormatter$ClassicFormat;
0 4 1 formatter Ljava/time/format/DateTimeFormatter;
0 4 2 parseType Ljava/time/temporal/TemporalQuery<*>;
Signature: (Ljava/time/format/DateTimeFormatter;Ljava/time/temporal/TemporalQuery<*>;)V
MethodParameters:
Name Flags
formatter
parseType
public java.lang.StringBuffer format(java.lang.Object, java.lang.StringBuffer, java.text.FieldPosition);
descriptor: (Ljava/lang/Object;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ldc "obj"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 2
ldc "toAppendTo"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
2: aload 3
ldc "pos"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
3: aload 1
instanceof java.time.temporal.TemporalAccessor
ifne 5
4: new java.lang.IllegalArgumentException
dup
ldc "Format target must implement TemporalAccessor"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 3
iconst_0
invokevirtual java.text.FieldPosition.setBeginIndex:(I)V
6: aload 3
iconst_0
invokevirtual java.text.FieldPosition.setEndIndex:(I)V
7: aload 0
getfield java.time.format.DateTimeFormatter$ClassicFormat.formatter:Ljava/time/format/DateTimeFormatter;
aload 1
checkcast java.time.temporal.TemporalAccessor
aload 2
invokevirtual java.time.format.DateTimeFormatter.formatTo:(Ljava/time/temporal/TemporalAccessor;Ljava/lang/Appendable;)V
8: goto 11
StackMap locals:
StackMap stack: java.lang.RuntimeException
9: astore 4
start local 4 10: new java.lang.IllegalArgumentException
dup
aload 4
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
aload 4
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 4 11: StackMap locals:
StackMap stack:
aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Ljava/time/format/DateTimeFormatter$ClassicFormat;
0 12 1 obj Ljava/lang/Object;
0 12 2 toAppendTo Ljava/lang/StringBuffer;
0 12 3 pos Ljava/text/FieldPosition;
10 11 4 ex Ljava/lang/RuntimeException;
Exception table:
from to target type
7 8 9 Class java.lang.RuntimeException
MethodParameters:
Name Flags
obj
toAppendTo
pos
public java.lang.Object parseObject(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ldc "text"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
getfield java.time.format.DateTimeFormatter$ClassicFormat.parseType:Ljava/time/temporal/TemporalQuery;
ifnonnull 4
2: aload 0
getfield java.time.format.DateTimeFormatter$ClassicFormat.formatter:Ljava/time/format/DateTimeFormatter;
aload 1
aconst_null
invokevirtual java.time.format.DateTimeFormatter.parseResolved0:(Ljava/lang/CharSequence;Ljava/text/ParsePosition;)Ljava/time/temporal/TemporalAccessor;
3: areturn
4: StackMap locals:
StackMap stack:
aload 0
getfield java.time.format.DateTimeFormatter$ClassicFormat.formatter:Ljava/time/format/DateTimeFormatter;
aload 1
aload 0
getfield java.time.format.DateTimeFormatter$ClassicFormat.parseType:Ljava/time/temporal/TemporalQuery;
invokevirtual java.time.format.DateTimeFormatter.parse:(Ljava/lang/CharSequence;Ljava/time/temporal/TemporalQuery;)Ljava/lang/Object;
5: areturn
6: StackMap locals:
StackMap stack: java.time.format.DateTimeParseException
astore 2
start local 2 7: new java.text.ParseException
dup
aload 2
invokevirtual java.time.format.DateTimeParseException.getMessage:()Ljava/lang/String;
aload 2
invokevirtual java.time.format.DateTimeParseException.getErrorIndex:()I
invokespecial java.text.ParseException.<init>:(Ljava/lang/String;I)V
athrow
end local 2 8: StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 2
start local 2 9: new java.text.ParseException
dup
aload 2
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
iconst_0
invokespecial java.text.ParseException.<init>:(Ljava/lang/String;I)V
aload 2
invokevirtual java.text.ParseException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
checkcast java.text.ParseException
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljava/time/format/DateTimeFormatter$ClassicFormat;
0 10 1 text Ljava/lang/String;
7 8 2 ex Ljava/time/format/DateTimeParseException;
9 10 2 ex Ljava/lang/RuntimeException;
Exception table:
from to target type
1 3 6 Class java.time.format.DateTimeParseException
4 5 6 Class java.time.format.DateTimeParseException
1 3 8 Class java.lang.RuntimeException
4 5 8 Class java.lang.RuntimeException
Exceptions:
throws java.text.ParseException
MethodParameters:
Name Flags
text
public java.lang.Object parseObject(java.lang.String, java.text.ParsePosition);
descriptor: (Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ldc "text"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
getfield java.time.format.DateTimeFormatter$ClassicFormat.formatter:Ljava/time/format/DateTimeFormatter;
aload 1
aload 2
invokevirtual java.time.format.DateTimeFormatter.parseUnresolved0:(Ljava/lang/CharSequence;Ljava/text/ParsePosition;)Ljava/time/format/DateTimeParseContext;
astore 3
start local 3 2: goto 7
end local 3 StackMap locals:
StackMap stack: java.lang.IndexOutOfBoundsException
3: pop
4: aload 2
invokevirtual java.text.ParsePosition.getErrorIndex:()I
ifge 6
5: aload 2
iconst_0
invokevirtual java.text.ParsePosition.setErrorIndex:(I)V
6: StackMap locals:
StackMap stack:
aconst_null
areturn
start local 3 7: StackMap locals: java.time.format.DateTimeParseContext
StackMap stack:
aload 3
ifnonnull 11
8: aload 2
invokevirtual java.text.ParsePosition.getErrorIndex:()I
ifge 10
9: aload 2
iconst_0
invokevirtual java.text.ParsePosition.setErrorIndex:(I)V
10: StackMap locals:
StackMap stack:
aconst_null
areturn
11: StackMap locals:
StackMap stack:
aload 3
aload 0
getfield java.time.format.DateTimeFormatter$ClassicFormat.formatter:Ljava/time/format/DateTimeFormatter;
getfield java.time.format.DateTimeFormatter.resolverStyle:Ljava/time/format/ResolverStyle;
aload 0
getfield java.time.format.DateTimeFormatter$ClassicFormat.formatter:Ljava/time/format/DateTimeFormatter;
getfield java.time.format.DateTimeFormatter.resolverFields:Ljava/util/Set;
invokevirtual java.time.format.DateTimeParseContext.toResolved:(Ljava/time/format/ResolverStyle;Ljava/util/Set;)Ljava/time/temporal/TemporalAccessor;
astore 4
start local 4 12: aload 0
getfield java.time.format.DateTimeFormatter$ClassicFormat.parseType:Ljava/time/temporal/TemporalQuery;
ifnonnull 15
13: aload 4
14: areturn
15: StackMap locals: java.time.temporal.TemporalAccessor
StackMap stack:
aload 4
aload 0
getfield java.time.format.DateTimeFormatter$ClassicFormat.parseType:Ljava/time/temporal/TemporalQuery;
invokeinterface java.time.temporal.TemporalAccessor.query:(Ljava/time/temporal/TemporalQuery;)Ljava/lang/Object;
16: areturn
end local 4 17: StackMap locals: java.time.format.DateTimeFormatter$ClassicFormat java.lang.String java.text.ParsePosition java.time.format.DateTimeParseContext
StackMap stack: java.lang.RuntimeException
pop
18: aload 2
iconst_0
invokevirtual java.text.ParsePosition.setErrorIndex:(I)V
19: aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Ljava/time/format/DateTimeFormatter$ClassicFormat;
0 20 1 text Ljava/lang/String;
0 20 2 pos Ljava/text/ParsePosition;
2 3 3 context Ljava/time/format/DateTimeParseContext;
7 20 3 context Ljava/time/format/DateTimeParseContext;
12 17 4 resolved Ljava/time/temporal/TemporalAccessor;
Exception table:
from to target type
1 2 3 Class java.lang.IndexOutOfBoundsException
11 14 17 Class java.lang.RuntimeException
15 16 17 Class java.lang.RuntimeException
MethodParameters:
Name Flags
text
pos
}
SourceFile: "DateTimeFormatter.java"
NestHost: java.time.format.DateTimeFormatter
InnerClasses:
ClassicFormat = java.time.format.DateTimeFormatter$ClassicFormat of java.time.format.DateTimeFormatter