public final class org.joda.time.chrono.IslamicChronology extends org.joda.time.chrono.BasicChronology
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.joda.time.chrono.IslamicChronology
super_class: org.joda.time.chrono.BasicChronology
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -3663823829888
public static final int AH;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final org.joda.time.DateTimeField ERA_FIELD;
descriptor: Lorg/joda/time/DateTimeField;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
public static final org.joda.time.chrono.IslamicChronology$LeapYearPatternType LEAP_YEAR_15_BASED;
descriptor: Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.joda.time.chrono.IslamicChronology$LeapYearPatternType LEAP_YEAR_16_BASED;
descriptor: Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.joda.time.chrono.IslamicChronology$LeapYearPatternType LEAP_YEAR_INDIAN;
descriptor: Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.joda.time.chrono.IslamicChronology$LeapYearPatternType LEAP_YEAR_HABASH_AL_HASIB;
descriptor: Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private static final int MIN_YEAR;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -292269337
private static final int MAX_YEAR;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 292271022
private static final int MONTH_PAIR_LENGTH;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 59
private static final int LONG_MONTH_LENGTH;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 30
private static final int SHORT_MONTH_LENGTH;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 29
private static final long MILLIS_PER_MONTH_PAIR;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5097600000
private static final long MILLIS_PER_MONTH;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2551440384
private static final long MILLIS_PER_LONG_MONTH;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2592000000
private static final long MILLIS_PER_YEAR;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 30617280288
private static final long MILLIS_PER_SHORT_YEAR;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 30585600000
private static final long MILLIS_PER_LONG_YEAR;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 30672000000
private static final long MILLIS_YEAR_1;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -42521587200000
private static final int CYCLE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 30
private static final long MILLIS_PER_CYCLE;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 918518400000
private static final java.util.concurrent.ConcurrentHashMap<org.joda.time.DateTimeZone, org.joda.time.chrono.IslamicChronology[]> cCache;
descriptor: Ljava/util/concurrent/ConcurrentHashMap;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/concurrent/ConcurrentHashMap<Lorg/joda/time/DateTimeZone;[Lorg/joda/time/chrono/IslamicChronology;>;
private static final org.joda.time.chrono.IslamicChronology INSTANCE_UTC;
descriptor: Lorg/joda/time/chrono/IslamicChronology;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final org.joda.time.chrono.IslamicChronology$LeapYearPatternType iLeapYears;
descriptor: Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: new org.joda.time.chrono.BasicSingleEraDateTimeField
dup
ldc "AH"
invokespecial org.joda.time.chrono.BasicSingleEraDateTimeField.<init>:(Ljava/lang/String;)V
putstatic org.joda.time.chrono.IslamicChronology.ERA_FIELD:Lorg/joda/time/DateTimeField;
1: new org.joda.time.chrono.IslamicChronology$LeapYearPatternType
dup
iconst_0
ldc 623158436
invokespecial org.joda.time.chrono.IslamicChronology$LeapYearPatternType.<init>:(II)V
putstatic org.joda.time.chrono.IslamicChronology.LEAP_YEAR_15_BASED:Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
2: new org.joda.time.chrono.IslamicChronology$LeapYearPatternType
dup
iconst_1
ldc 623191204
invokespecial org.joda.time.chrono.IslamicChronology$LeapYearPatternType.<init>:(II)V
putstatic org.joda.time.chrono.IslamicChronology.LEAP_YEAR_16_BASED:Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
3: new org.joda.time.chrono.IslamicChronology$LeapYearPatternType
dup
iconst_2
ldc 690562340
invokespecial org.joda.time.chrono.IslamicChronology$LeapYearPatternType.<init>:(II)V
putstatic org.joda.time.chrono.IslamicChronology.LEAP_YEAR_INDIAN:Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
4: new org.joda.time.chrono.IslamicChronology$LeapYearPatternType
dup
iconst_3
ldc 153692453
invokespecial org.joda.time.chrono.IslamicChronology$LeapYearPatternType.<init>:(II)V
putstatic org.joda.time.chrono.IslamicChronology.LEAP_YEAR_HABASH_AL_HASIB:Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
5: new java.util.concurrent.ConcurrentHashMap
dup
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
putstatic org.joda.time.chrono.IslamicChronology.cCache:Ljava/util/concurrent/ConcurrentHashMap;
6: getstatic org.joda.time.DateTimeZone.UTC:Lorg/joda/time/DateTimeZone;
invokestatic org.joda.time.chrono.IslamicChronology.getInstance:(Lorg/joda/time/DateTimeZone;)Lorg/joda/time/chrono/IslamicChronology;
putstatic org.joda.time.chrono.IslamicChronology.INSTANCE_UTC:Lorg/joda/time/chrono/IslamicChronology;
7: return
LocalVariableTable:
Start End Slot Name Signature
public static org.joda.time.chrono.IslamicChronology getInstanceUTC();
descriptor: ()Lorg/joda/time/chrono/IslamicChronology;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic org.joda.time.chrono.IslamicChronology.INSTANCE_UTC:Lorg/joda/time/chrono/IslamicChronology;
areturn
LocalVariableTable:
Start End Slot Name Signature
public static org.joda.time.chrono.IslamicChronology getInstance();
descriptor: ()Lorg/joda/time/chrono/IslamicChronology;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: invokestatic org.joda.time.DateTimeZone.getDefault:()Lorg/joda/time/DateTimeZone;
getstatic org.joda.time.chrono.IslamicChronology.LEAP_YEAR_16_BASED:Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
invokestatic org.joda.time.chrono.IslamicChronology.getInstance:(Lorg/joda/time/DateTimeZone;Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;)Lorg/joda/time/chrono/IslamicChronology;
areturn
LocalVariableTable:
Start End Slot Name Signature
public static org.joda.time.chrono.IslamicChronology getInstance(org.joda.time.DateTimeZone);
descriptor: (Lorg/joda/time/DateTimeZone;)Lorg/joda/time/chrono/IslamicChronology;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic org.joda.time.chrono.IslamicChronology.LEAP_YEAR_16_BASED:Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
invokestatic org.joda.time.chrono.IslamicChronology.getInstance:(Lorg/joda/time/DateTimeZone;Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;)Lorg/joda/time/chrono/IslamicChronology;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 zone Lorg/joda/time/DateTimeZone;
MethodParameters:
Name Flags
zone
public static org.joda.time.chrono.IslamicChronology getInstance(org.joda.time.DateTimeZone, org.joda.time.chrono.IslamicChronology$LeapYearPatternType);
descriptor: (Lorg/joda/time/DateTimeZone;Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;)Lorg/joda/time/chrono/IslamicChronology;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=10, locals=6, args_size=2
start local 0 start local 1 0: aload 0
ifnonnull 2
1: invokestatic org.joda.time.DateTimeZone.getDefault:()Lorg/joda/time/DateTimeZone;
astore 0
2: StackMap locals:
StackMap stack:
getstatic org.joda.time.chrono.IslamicChronology.cCache:Ljava/util/concurrent/ConcurrentHashMap;
aload 0
invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.joda.time.chrono.IslamicChronology[]
astore 3
start local 3 3: aload 3
ifnonnull 8
4: iconst_4
anewarray org.joda.time.chrono.IslamicChronology
astore 3
5: getstatic org.joda.time.chrono.IslamicChronology.cCache:Ljava/util/concurrent/ConcurrentHashMap;
aload 0
aload 3
invokevirtual java.util.concurrent.ConcurrentHashMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.joda.time.chrono.IslamicChronology[]
astore 4
start local 4 6: aload 4
ifnull 8
7: aload 4
astore 3
end local 4 8: StackMap locals: org.joda.time.DateTimeZone org.joda.time.chrono.IslamicChronology$LeapYearPatternType top org.joda.time.chrono.IslamicChronology[]
StackMap stack:
aload 3
aload 1
getfield org.joda.time.chrono.IslamicChronology$LeapYearPatternType.index:B
aaload
astore 2
start local 2 9: aload 2
ifnonnull 30
10: aload 3
dup
astore 4
monitorenter
11: aload 3
aload 1
getfield org.joda.time.chrono.IslamicChronology$LeapYearPatternType.index:B
aaload
astore 2
12: aload 2
ifnonnull 26
13: aload 0
getstatic org.joda.time.DateTimeZone.UTC:Lorg/joda/time/DateTimeZone;
if_acmpne 21
14: new org.joda.time.chrono.IslamicChronology
dup
aconst_null
aconst_null
aload 1
invokespecial org.joda.time.chrono.IslamicChronology.<init>:(Lorg/joda/time/Chronology;Ljava/lang/Object;Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;)V
astore 2
15: new org.joda.time.DateTime
dup
iconst_1
iconst_1
iconst_1
iconst_0
iconst_0
iconst_0
iconst_0
aload 2
invokespecial org.joda.time.DateTime.<init>:(IIIIIIILorg/joda/time/Chronology;)V
astore 5
start local 5 16: new org.joda.time.chrono.IslamicChronology
dup
17: aload 2
aload 5
aconst_null
invokestatic org.joda.time.chrono.LimitChronology.getInstance:(Lorg/joda/time/Chronology;Lorg/joda/time/ReadableDateTime;Lorg/joda/time/ReadableDateTime;)Lorg/joda/time/chrono/LimitChronology;
18: aconst_null
aload 1
19: invokespecial org.joda.time.chrono.IslamicChronology.<init>:(Lorg/joda/time/Chronology;Ljava/lang/Object;Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;)V
astore 2
end local 5 20: goto 25
21: StackMap locals: org.joda.time.DateTimeZone org.joda.time.chrono.IslamicChronology$LeapYearPatternType org.joda.time.chrono.IslamicChronology org.joda.time.chrono.IslamicChronology[] org.joda.time.chrono.IslamicChronology[]
StackMap stack:
getstatic org.joda.time.DateTimeZone.UTC:Lorg/joda/time/DateTimeZone;
aload 1
invokestatic org.joda.time.chrono.IslamicChronology.getInstance:(Lorg/joda/time/DateTimeZone;Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;)Lorg/joda/time/chrono/IslamicChronology;
astore 2
22: new org.joda.time.chrono.IslamicChronology
dup
23: aload 2
aload 0
invokestatic org.joda.time.chrono.ZonedChronology.getInstance:(Lorg/joda/time/Chronology;Lorg/joda/time/DateTimeZone;)Lorg/joda/time/chrono/ZonedChronology;
aconst_null
aload 1
24: invokespecial org.joda.time.chrono.IslamicChronology.<init>:(Lorg/joda/time/Chronology;Ljava/lang/Object;Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;)V
astore 2
25: StackMap locals:
StackMap stack:
aload 3
aload 1
getfield org.joda.time.chrono.IslamicChronology$LeapYearPatternType.index:B
aload 2
aastore
26: StackMap locals:
StackMap stack:
aload 4
monitorexit
27: goto 30
StackMap locals:
StackMap stack: java.lang.Throwable
28: aload 4
monitorexit
29: athrow
30: 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 31 0 zone Lorg/joda/time/DateTimeZone;
0 31 1 leapYears Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
9 31 2 chrono Lorg/joda/time/chrono/IslamicChronology;
3 31 3 chronos [Lorg/joda/time/chrono/IslamicChronology;
6 8 4 oldChronos [Lorg/joda/time/chrono/IslamicChronology;
16 20 5 lowerLimit Lorg/joda/time/DateTime;
Exception table:
from to target type
11 27 28 any
28 29 28 any
MethodParameters:
Name Flags
zone
leapYears
void <init>(org.joda.time.Chronology, java.lang.Object, org.joda.time.chrono.IslamicChronology$LeapYearPatternType);
descriptor: (Lorg/joda/time/Chronology;Ljava/lang/Object;Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;)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
aload 1
aload 2
iconst_4
invokespecial org.joda.time.chrono.BasicChronology.<init>:(Lorg/joda/time/Chronology;Ljava/lang/Object;I)V
1: aload 0
aload 3
putfield org.joda.time.chrono.IslamicChronology.iLeapYears:Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/joda/time/chrono/IslamicChronology;
0 3 1 base Lorg/joda/time/Chronology;
0 3 2 param Ljava/lang/Object;
0 3 3 leapYears Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
MethodParameters:
Name Flags
base
param
leapYears
private java.lang.Object readResolve();
descriptor: ()Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.joda.time.chrono.IslamicChronology.getBase:()Lorg/joda/time/Chronology;
astore 1
start local 1 1: aload 1
ifnonnull 2
invokestatic org.joda.time.chrono.IslamicChronology.getInstanceUTC:()Lorg/joda/time/chrono/IslamicChronology;
goto 3
StackMap locals: org.joda.time.Chronology
StackMap stack:
2: aload 1
invokevirtual org.joda.time.Chronology.getZone:()Lorg/joda/time/DateTimeZone;
invokestatic org.joda.time.chrono.IslamicChronology.getInstance:(Lorg/joda/time/DateTimeZone;)Lorg/joda/time/chrono/IslamicChronology;
StackMap locals:
StackMap stack: org.joda.time.chrono.IslamicChronology
3: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/joda/time/chrono/IslamicChronology;
1 4 1 base Lorg/joda/time/Chronology;
public org.joda.time.chrono.IslamicChronology$LeapYearPatternType getLeapYearPatternType();
descriptor: ()Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.joda.time.chrono.IslamicChronology.iLeapYears:Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joda/time/chrono/IslamicChronology;
public org.joda.time.Chronology withUTC();
descriptor: ()Lorg/joda/time/Chronology;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic org.joda.time.chrono.IslamicChronology.INSTANCE_UTC:Lorg/joda/time/chrono/IslamicChronology;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joda/time/chrono/IslamicChronology;
public org.joda.time.Chronology withZone(org.joda.time.DateTimeZone);
descriptor: (Lorg/joda/time/DateTimeZone;)Lorg/joda/time/Chronology;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: invokestatic org.joda.time.DateTimeZone.getDefault:()Lorg/joda/time/DateTimeZone;
astore 1
2: StackMap locals:
StackMap stack:
aload 1
aload 0
invokevirtual org.joda.time.chrono.IslamicChronology.getZone:()Lorg/joda/time/DateTimeZone;
if_acmpne 4
3: aload 0
areturn
4: StackMap locals:
StackMap stack:
aload 1
invokestatic org.joda.time.chrono.IslamicChronology.getInstance:(Lorg/joda/time/DateTimeZone;)Lorg/joda/time/chrono/IslamicChronology;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/joda/time/chrono/IslamicChronology;
0 5 1 zone Lorg/joda/time/DateTimeZone;
MethodParameters:
Name Flags
zone
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
if_acmpne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
instanceof org.joda.time.chrono.IslamicChronology
ifeq 8
3: aload 1
checkcast org.joda.time.chrono.IslamicChronology
astore 2
start local 2 4: aload 0
invokevirtual org.joda.time.chrono.IslamicChronology.getLeapYearPatternType:()Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
getfield org.joda.time.chrono.IslamicChronology$LeapYearPatternType.index:B
aload 2
invokevirtual org.joda.time.chrono.IslamicChronology.getLeapYearPatternType:()Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
getfield org.joda.time.chrono.IslamicChronology$LeapYearPatternType.index:B
if_icmpne 7
5: aload 0
aload 1
invokespecial org.joda.time.chrono.BasicChronology.equals:(Ljava/lang/Object;)Z
ifeq 7
6: iconst_1
ireturn
StackMap locals: org.joda.time.chrono.IslamicChronology
StackMap stack:
7: iconst_0
ireturn
end local 2 8: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/joda/time/chrono/IslamicChronology;
0 9 1 obj Ljava/lang/Object;
4 8 2 chrono Lorg/joda/time/chrono/IslamicChronology;
MethodParameters:
Name Flags
obj
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.joda.time.chrono.BasicChronology.hashCode:()I
bipush 13
imul
aload 0
invokevirtual org.joda.time.chrono.IslamicChronology.getLeapYearPatternType:()Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
invokevirtual org.joda.time.chrono.IslamicChronology$LeapYearPatternType.hashCode:()I
iadd
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joda/time/chrono/IslamicChronology;
int getYear(long);
descriptor: (J)I
flags: (0x0000)
Code:
stack=4, locals=12, args_size=2
start local 0 start local 1 0: lload 1
ldc -42521587200000
lsub
lstore 3
start local 3 1: lload 3
ldc 918518400000
ldiv
lstore 5
start local 5 2: lload 3
ldc 918518400000
lrem
lstore 7
start local 7 3: lload 5
ldc 30
lmul
lconst_1
ladd
l2i
istore 9
start local 9 4: aload 0
iload 9
invokevirtual org.joda.time.chrono.IslamicChronology.isLeapYear:(I)Z
ifeq 5
ldc 30672000000
goto 6
StackMap locals: org.joda.time.chrono.IslamicChronology long long long long int
StackMap stack:
5: ldc 30585600000
StackMap locals:
StackMap stack: long
6: lstore 10
start local 10 7: goto 12
8: StackMap locals: long
StackMap stack:
lload 7
lload 10
lsub
lstore 7
9: aload 0
iinc 9 1
iload 9
invokevirtual org.joda.time.chrono.IslamicChronology.isLeapYear:(I)Z
ifeq 10
ldc 30672000000
goto 11
StackMap locals:
StackMap stack:
10: ldc 30585600000
StackMap locals:
StackMap stack: long
11: lstore 10
12: StackMap locals:
StackMap stack:
lload 7
lload 10
lcmp
ifge 8
13: iload 9
ireturn
end local 10 end local 9 end local 7 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/joda/time/chrono/IslamicChronology;
0 14 1 instant J
1 14 3 millisIslamic J
2 14 5 cycles J
3 14 7 cycleRemainder J
4 14 9 year I
7 14 10 yearMillis J
MethodParameters:
Name Flags
instant
long setYear(long, int);
descriptor: (JI)J
flags: (0x0000)
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 3 0: aload 0
lload 1
invokevirtual org.joda.time.chrono.IslamicChronology.getYear:(J)I
istore 4
start local 4 1: aload 0
lload 1
iload 4
invokevirtual org.joda.time.chrono.IslamicChronology.getDayOfYear:(JI)I
istore 5
start local 5 2: aload 0
lload 1
invokevirtual org.joda.time.chrono.IslamicChronology.getMillisOfDay:(J)I
istore 6
start local 6 3: iload 5
sipush 354
if_icmple 5
aload 0
iload 3
invokevirtual org.joda.time.chrono.IslamicChronology.isLeapYear:(I)Z
ifne 5
4: iinc 5 -1
5: StackMap locals: int int int
StackMap stack:
aload 0
iload 3
iconst_1
iload 5
invokevirtual org.joda.time.chrono.IslamicChronology.getYearMonthDayMillis:(III)J
lstore 1
6: lload 1
iload 6
i2l
ladd
lstore 1
7: lload 1
lreturn
end local 6 end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/joda/time/chrono/IslamicChronology;
0 8 1 instant J
0 8 3 year I
1 8 4 thisYear I
2 8 5 dayOfYear I
3 8 6 millisOfDay I
MethodParameters:
Name Flags
instant
year
long getYearDifference(long, long);
descriptor: (JJ)J
flags: (0x0000)
Code:
stack=4, locals=12, args_size=3
start local 0 start local 1 start local 3 0: aload 0
lload 1
invokevirtual org.joda.time.chrono.IslamicChronology.getYear:(J)I
istore 5
start local 5 1: aload 0
lload 3
invokevirtual org.joda.time.chrono.IslamicChronology.getYear:(J)I
istore 6
start local 6 2: lload 1
aload 0
iload 5
invokevirtual org.joda.time.chrono.IslamicChronology.getYearMillis:(I)J
lsub
lstore 7
start local 7 3: lload 3
aload 0
iload 6
invokevirtual org.joda.time.chrono.IslamicChronology.getYearMillis:(I)J
lsub
lstore 9
start local 9 4: iload 5
iload 6
isub
istore 11
start local 11 5: lload 7
lload 9
lcmp
ifge 7
6: iinc 11 -1
7: StackMap locals: org.joda.time.chrono.IslamicChronology long long int int long long int
StackMap stack:
iload 11
i2l
lreturn
end local 11 end local 9 end local 7 end local 6 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/joda/time/chrono/IslamicChronology;
0 8 1 minuendInstant J
0 8 3 subtrahendInstant J
1 8 5 minuendYear I
2 8 6 subtrahendYear I
3 8 7 minuendRem J
4 8 9 subtrahendRem J
5 8 11 difference I
MethodParameters:
Name Flags
minuendInstant
subtrahendInstant
long getTotalMillisByYearMonth(int, int);
descriptor: (II)J
flags: (0x0000)
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iinc 2 -1
iload 2
iconst_2
irem
iconst_1
if_icmpne 3
1: iload 2
iconst_2
idiv
istore 2
2: iload 2
i2l
ldc 5097600000
lmul
ldc 2592000000
ladd
lreturn
3: StackMap locals:
StackMap stack:
iload 2
iconst_2
idiv
istore 2
4: iload 2
i2l
ldc 5097600000
lmul
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/joda/time/chrono/IslamicChronology;
0 5 1 year I
0 5 2 month I
MethodParameters:
Name Flags
year
month
int getDayOfMonth(long);
descriptor: (J)I
flags: (0x0000)
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
lload 1
invokevirtual org.joda.time.chrono.IslamicChronology.getDayOfYear:(J)I
iconst_1
isub
istore 3
start local 3 1: iload 3
sipush 354
if_icmpne 3
2: bipush 30
ireturn
3: StackMap locals: int
StackMap stack:
iload 3
bipush 59
irem
bipush 30
irem
iconst_1
iadd
ireturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/joda/time/chrono/IslamicChronology;
0 4 1 millis J
1 4 3 doy I
MethodParameters:
Name Flags
millis
boolean isLeapYear(int);
descriptor: (I)Z
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.joda.time.chrono.IslamicChronology.iLeapYears:Lorg/joda/time/chrono/IslamicChronology$LeapYearPatternType;
iload 1
invokevirtual org.joda.time.chrono.IslamicChronology$LeapYearPatternType.isLeapYear:(I)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joda/time/chrono/IslamicChronology;
0 1 1 year I
MethodParameters:
Name Flags
year
int getDaysInYearMax();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: sipush 355
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joda/time/chrono/IslamicChronology;
int getDaysInYear(int);
descriptor: (I)I
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.joda.time.chrono.IslamicChronology.isLeapYear:(I)Z
ifeq 1
sipush 355
goto 2
StackMap locals:
StackMap stack:
1: sipush 354
StackMap locals:
StackMap stack: int
2: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/joda/time/chrono/IslamicChronology;
0 3 1 year I
MethodParameters:
Name Flags
year
int getDaysInYearMonth(int, int);
descriptor: (II)I
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
bipush 12
if_icmpne 2
aload 0
iload 1
invokevirtual org.joda.time.chrono.IslamicChronology.isLeapYear:(I)Z
ifeq 2
1: bipush 30
ireturn
2: StackMap locals:
StackMap stack:
iinc 2 -1
iload 2
iconst_2
irem
ifne 3
bipush 30
goto 4
StackMap locals:
StackMap stack:
3: bipush 29
StackMap locals:
StackMap stack: int
4: ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/joda/time/chrono/IslamicChronology;
0 5 1 year I
0 5 2 month I
MethodParameters:
Name Flags
year
month
int getDaysInMonthMax();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: bipush 30
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joda/time/chrono/IslamicChronology;
int getDaysInMonthMax(int);
descriptor: (I)I
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
bipush 12
if_icmpne 2
1: bipush 30
ireturn
2: StackMap locals:
StackMap stack:
iinc 1 -1
iload 1
iconst_2
irem
ifne 3
bipush 30
goto 4
StackMap locals:
StackMap stack:
3: bipush 29
StackMap locals:
StackMap stack: int
4: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/joda/time/chrono/IslamicChronology;
0 5 1 month I
MethodParameters:
Name Flags
month
int getMonthOfYear(long, int);
descriptor: (JI)I
flags: (0x0000)
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 3 0: lload 1
aload 0
iload 3
invokevirtual org.joda.time.chrono.IslamicChronology.getYearMillis:(I)J
lsub
ldc 86400000
ldiv
l2i
istore 4
start local 4 1: iload 4
sipush 354
if_icmpne 3
2: bipush 12
ireturn
3: StackMap locals: int
StackMap stack:
iload 4
iconst_2
imul
bipush 59
idiv
iconst_1
iadd
ireturn
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/joda/time/chrono/IslamicChronology;
0 4 1 millis J
0 4 3 year I
1 4 4 doyZeroBased I
MethodParameters:
Name Flags
millis
year
long getAverageMillisPerYear();
descriptor: ()J
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: ldc 30617280288
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joda/time/chrono/IslamicChronology;
long getAverageMillisPerYearDividedByTwo();
descriptor: ()J
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: ldc 15308640144
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joda/time/chrono/IslamicChronology;
long getAverageMillisPerMonth();
descriptor: ()J
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: ldc 2551440384
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joda/time/chrono/IslamicChronology;
long calculateFirstDayOfYearMillis(int);
descriptor: (I)J
flags: (0x0000)
Code:
stack=6, locals=8, args_size=2
start local 0 start local 1 0: iload 1
ldc 292271022
if_icmple 2
1: new java.lang.ArithmeticException
dup
new java.lang.StringBuilder
dup
ldc "Year is too large: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " > "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc 292271022
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
iload 1
ldc -292269337
if_icmpge 4
3: new java.lang.ArithmeticException
dup
new java.lang.StringBuilder
dup
ldc "Year is too small: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " < "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc -292269337
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
iinc 1 -1
5: iload 1
bipush 30
idiv
i2l
lstore 2
start local 2 6: ldc -42521587200000
lload 2
ldc 918518400000
lmul
ladd
lstore 4
start local 4 7: iload 1
bipush 30
irem
iconst_1
iadd
istore 6
start local 6 8: iconst_1
istore 7
start local 7 9: goto 14
10: StackMap locals: org.joda.time.chrono.IslamicChronology int long long int int
StackMap stack:
lload 4
aload 0
iload 7
invokevirtual org.joda.time.chrono.IslamicChronology.isLeapYear:(I)Z
ifeq 11
ldc 30672000000
goto 12
StackMap locals:
StackMap stack: long
11: ldc 30585600000
StackMap locals: org.joda.time.chrono.IslamicChronology int long long int int
StackMap stack: long long
12: ladd
lstore 4
13: iinc 7 1
StackMap locals:
StackMap stack:
14: iload 7
iload 6
if_icmplt 10
end local 7 15: lload 4
lreturn
end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/joda/time/chrono/IslamicChronology;
0 16 1 year I
6 16 2 cycle J
7 16 4 millis J
8 16 6 cycleRemainder I
9 15 7 i I
MethodParameters:
Name Flags
year
int getMinYear();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joda/time/chrono/IslamicChronology;
int getMaxYear();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc 292271022
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joda/time/chrono/IslamicChronology;
long getApproxMillisAtEpochDividedByTwo();
descriptor: ()J
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: ldc 21260793600000
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joda/time/chrono/IslamicChronology;
protected void assemble(org.joda.time.chrono.AssembledChronology$Fields);
descriptor: (Lorg/joda/time/chrono/AssembledChronology$Fields;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.joda.time.chrono.IslamicChronology.getBase:()Lorg/joda/time/Chronology;
ifnonnull 5
1: aload 0
aload 1
invokespecial org.joda.time.chrono.BasicChronology.assemble:(Lorg/joda/time/chrono/AssembledChronology$Fields;)V
2: aload 1
getstatic org.joda.time.chrono.IslamicChronology.ERA_FIELD:Lorg/joda/time/DateTimeField;
putfield org.joda.time.chrono.AssembledChronology$Fields.era:Lorg/joda/time/DateTimeField;
3: aload 1
new org.joda.time.chrono.BasicMonthOfYearDateTimeField
dup
aload 0
bipush 12
invokespecial org.joda.time.chrono.BasicMonthOfYearDateTimeField.<init>:(Lorg/joda/time/chrono/BasicChronology;I)V
putfield org.joda.time.chrono.AssembledChronology$Fields.monthOfYear:Lorg/joda/time/DateTimeField;
4: aload 1
aload 1
getfield org.joda.time.chrono.AssembledChronology$Fields.monthOfYear:Lorg/joda/time/DateTimeField;
invokevirtual org.joda.time.DateTimeField.getDurationField:()Lorg/joda/time/DurationField;
putfield org.joda.time.chrono.AssembledChronology$Fields.months:Lorg/joda/time/DurationField;
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/joda/time/chrono/IslamicChronology;
0 6 1 fields Lorg/joda/time/chrono/AssembledChronology$Fields;
MethodParameters:
Name Flags
fields
public long getDateTimeMillis(int, int, int, int, int, int, int);
descriptor: (IIIIIII)J
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=8, locals=8, args_size=8
0: aload 0
iload 1
iload 2
iload 3
iload 4
iload 5
iload 6
iload 7
invokespecial org.joda.time.chrono.BasicChronology.getDateTimeMillis:(IIIIIII)J
lreturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.lang.IllegalArgumentException
public long getDateTimeMillis(int, int, int, int);
descriptor: (IIII)J
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=5, locals=5, args_size=5
0: aload 0
iload 1
iload 2
iload 3
iload 4
invokespecial org.joda.time.chrono.BasicChronology.getDateTimeMillis:(IIII)J
lreturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.lang.IllegalArgumentException
public org.joda.time.DateTimeZone getZone();
descriptor: ()Lorg/joda/time/DateTimeZone;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial org.joda.time.chrono.BasicChronology.getZone:()Lorg/joda/time/DateTimeZone;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial org.joda.time.chrono.BasicChronology.toString:()Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
public int getMinimumDaysInFirstWeek();
descriptor: ()I
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial org.joda.time.chrono.BasicChronology.getMinimumDaysInFirstWeek:()I
ireturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "IslamicChronology.java"
NestMembers:
org.joda.time.chrono.IslamicChronology$LeapYearPatternType
InnerClasses:
public final Fields = org.joda.time.chrono.AssembledChronology$Fields of org.joda.time.chrono.AssembledChronology
public LeapYearPatternType = org.joda.time.chrono.IslamicChronology$LeapYearPatternType of org.joda.time.chrono.IslamicChronology