Files
Dec2017-Script-Dump/mscorlib/System/Globalization/CCHijriCalendar.cs
T
2026-06-04 11:42:34 +02:00

115 lines
3.3 KiB
C#

using System;
namespace System.Globalization
{
// Token: 0x02000172 RID: 370
internal class CCHijriCalendar
{
// Token: 0x060011FC RID: 4604 RVA: 0x00046C20 File Offset: 0x00044E20
public static bool is_leap_year(int year)
{
return CCMath.mod(14 + 11 * year, 30) < 11;
}
// Token: 0x060011FD RID: 4605 RVA: 0x00046C34 File Offset: 0x00044E34
public static int fixed_from_dmy(int day, int month, int year)
{
int num = 227013;
num += 354 * (year - 1);
num += CCMath.div(3 + 11 * year, 30);
num += (int)Math.Ceiling(29.5 * (double)(month - 1));
return num + day;
}
// Token: 0x060011FE RID: 4606 RVA: 0x00046C80 File Offset: 0x00044E80
public static int year_from_fixed(int date)
{
return CCMath.div(30 * (date - 227014) + 10646, 10631);
}
// Token: 0x060011FF RID: 4607 RVA: 0x00046C9C File Offset: 0x00044E9C
public static void my_from_fixed(out int month, out int year, int date)
{
year = CCHijriCalendar.year_from_fixed(date);
int num = 1 + (int)Math.Ceiling((double)(date - 29 - CCHijriCalendar.fixed_from_dmy(1, 1, year)) / 29.5);
month = ((num >= 12) ? 12 : num);
}
// Token: 0x06001200 RID: 4608 RVA: 0x00046CE8 File Offset: 0x00044EE8
public static void dmy_from_fixed(out int day, out int month, out int year, int date)
{
CCHijriCalendar.my_from_fixed(out month, out year, date);
day = date - CCHijriCalendar.fixed_from_dmy(1, month, year) + 1;
}
// Token: 0x06001201 RID: 4609 RVA: 0x00046D04 File Offset: 0x00044F04
public static int month_from_fixed(int date)
{
int num;
int num2;
CCHijriCalendar.my_from_fixed(out num, out num2, date);
return num;
}
// Token: 0x06001202 RID: 4610 RVA: 0x00046D1C File Offset: 0x00044F1C
public static int day_from_fixed(int date)
{
int num;
int num2;
int num3;
CCHijriCalendar.dmy_from_fixed(out num, out num2, out num3, date);
return num;
}
// Token: 0x06001203 RID: 4611 RVA: 0x00046D38 File Offset: 0x00044F38
public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB)
{
return CCHijriCalendar.fixed_from_dmy(dayB, monthB, yearB) - CCHijriCalendar.fixed_from_dmy(dayA, monthA, yearA);
}
// Token: 0x06001204 RID: 4612 RVA: 0x00046D50 File Offset: 0x00044F50
public static int day_number(int day, int month, int year)
{
return CCHijriCalendar.date_difference(31, 12, year - 1, day, month, year);
}
// Token: 0x06001205 RID: 4613 RVA: 0x00046D64 File Offset: 0x00044F64
public static int days_remaining(int day, int month, int year)
{
return CCHijriCalendar.date_difference(day, month, year, 31, 12, year);
}
// Token: 0x0400049B RID: 1179
private const int epoch = 227014;
// Token: 0x02000173 RID: 371
public enum Month
{
// Token: 0x0400049D RID: 1181
muharram = 1,
// Token: 0x0400049E RID: 1182
safar,
// Token: 0x0400049F RID: 1183
rabi_I,
// Token: 0x040004A0 RID: 1184
rabi_II,
// Token: 0x040004A1 RID: 1185
jumada_I,
// Token: 0x040004A2 RID: 1186
jumada_II,
// Token: 0x040004A3 RID: 1187
rajab,
// Token: 0x040004A4 RID: 1188
shaban,
// Token: 0x040004A5 RID: 1189
ramadan,
// Token: 0x040004A6 RID: 1190
shawwal,
// Token: 0x040004A7 RID: 1191
dhu_al_quada,
// Token: 0x040004A8 RID: 1192
dhu_al_hijja
}
}
}