Compilation errors fixed

This commit is contained in:
Marek Lemańczyk committed 2025-10-05 13:13:47 +02:00
1 parent 4f80baf0bc
commit ce1355c749
1 file changed
+399 -132
+399 -132
View File
@@ -142,277 +142,544 @@ public static class ULongExtensions
public ulong Element126; public ulong Element126;
public ulong Element127; public ulong Element127;
public ref ulong this[int index] public ulong this[int index]
{ {
get get
{ {
return ref GetElementRef(index); return GetElement(index);
}
set
{
SetElement(index, value);
} }
} }
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
private ref ulong GetElementRef(int index) private ulong GetElement(int index) => index switch
{
0 => Element0,
1 => Element1,
2 => Element2,
3 => Element3,
4 => Element4,
5 => Element5,
6 => Element6,
7 => Element7,
8 => Element8,
9 => Element9,
10 => Element10,
11 => Element11,
12 => Element12,
13 => Element13,
14 => Element14,
15 => Element15,
16 => Element16,
17 => Element17,
18 => Element18,
19 => Element19,
20 => Element20,
21 => Element21,
22 => Element22,
23 => Element23,
24 => Element24,
25 => Element25,
26 => Element26,
27 => Element27,
28 => Element28,
29 => Element29,
30 => Element30,
31 => Element31,
32 => Element32,
33 => Element33,
34 => Element34,
35 => Element35,
36 => Element36,
37 => Element37,
38 => Element38,
39 => Element39,
40 => Element40,
41 => Element41,
42 => Element42,
43 => Element43,
44 => Element44,
45 => Element45,
46 => Element46,
47 => Element47,
48 => Element48,
49 => Element49,
50 => Element50,
51 => Element51,
52 => Element52,
53 => Element53,
54 => Element54,
55 => Element55,
56 => Element56,
57 => Element57,
58 => Element58,
59 => Element59,
60 => Element60,
61 => Element61,
62 => Element62,
63 => Element63,
64 => Element64,
65 => Element65,
66 => Element66,
67 => Element67,
68 => Element68,
69 => Element69,
70 => Element70,
71 => Element71,
72 => Element72,
73 => Element73,
74 => Element74,
75 => Element75,
76 => Element76,
77 => Element77,
78 => Element78,
79 => Element79,
80 => Element80,
81 => Element81,
82 => Element82,
83 => Element83,
84 => Element84,
85 => Element85,
86 => Element86,
87 => Element87,
88 => Element88,
89 => Element89,
90 => Element90,
91 => Element91,
92 => Element92,
93 => Element93,
94 => Element94,
95 => Element95,
96 => Element96,
97 => Element97,
98 => Element98,
99 => Element99,
100 => Element100,
101 => Element101,
102 => Element102,
103 => Element103,
104 => Element104,
105 => Element105,
106 => Element106,
107 => Element107,
108 => Element108,
109 => Element109,
110 => Element110,
111 => Element111,
112 => Element112,
113 => Element113,
114 => Element114,
115 => Element115,
116 => Element116,
117 => Element117,
118 => Element118,
119 => Element119,
120 => Element120,
121 => Element121,
122 => Element122,
123 => Element123,
124 => Element124,
125 => Element125,
126 => Element126,
127 => Element127,
_ => Element0,
};
[MethodImpl(MethodImplOptions.AggressiveInlining)]
private void SetElement(int index, ulong value)
{ {
switch (index) switch (index)
{ {
case 0: case 0:
return ref Element0; Element0 = value;
return;
case 1: case 1:
return ref Element1; Element1 = value;
return;
case 2: case 2:
return ref Element2; Element2 = value;
return;
case 3: case 3:
return ref Element3; Element3 = value;
return;
case 4: case 4:
return ref Element4; Element4 = value;
return;
case 5: case 5:
return ref Element5; Element5 = value;
return;
case 6: case 6:
return ref Element6; Element6 = value;
return;
case 7: case 7:
return ref Element7; Element7 = value;
return;
case 8: case 8:
return ref Element8; Element8 = value;
return;
case 9: case 9:
return ref Element9; Element9 = value;
return;
case 10: case 10:
return ref Element10; Element10 = value;
return;
case 11: case 11:
return ref Element11; Element11 = value;
return;
case 12: case 12:
return ref Element12; Element12 = value;
return;
case 13: case 13:
return ref Element13; Element13 = value;
return;
case 14: case 14:
return ref Element14; Element14 = value;
return;
case 15: case 15:
return ref Element15; Element15 = value;
return;
case 16: case 16:
return ref Element16; Element16 = value;
return;
case 17: case 17:
return ref Element17; Element17 = value;
return;
case 18: case 18:
return ref Element18; Element18 = value;
return;
case 19: case 19:
return ref Element19; Element19 = value;
return;
case 20: case 20:
return ref Element20; Element20 = value;
return;
case 21: case 21:
return ref Element21; Element21 = value;
return;
case 22: case 22:
return ref Element22; Element22 = value;
return;
case 23: case 23:
return ref Element23; Element23 = value;
return;
case 24: case 24:
return ref Element24; Element24 = value;
return;
case 25: case 25:
return ref Element25; Element25 = value;
return;
case 26: case 26:
return ref Element26; Element26 = value;
return;
case 27: case 27:
return ref Element27; Element27 = value;
return;
case 28: case 28:
return ref Element28; Element28 = value;
return;
case 29: case 29:
return ref Element29; Element29 = value;
return;
case 30: case 30:
return ref Element30; Element30 = value;
return;
case 31: case 31:
return ref Element31; Element31 = value;
return;
case 32: case 32:
return ref Element32; Element32 = value;
return;
case 33: case 33:
return ref Element33; Element33 = value;
return;
case 34: case 34:
return ref Element34; Element34 = value;
return;
case 35: case 35:
return ref Element35; Element35 = value;
return;
case 36: case 36:
return ref Element36; Element36 = value;
return;
case 37: case 37:
return ref Element37; Element37 = value;
return;
case 38: case 38:
return ref Element38; Element38 = value;
return;
case 39: case 39:
return ref Element39; Element39 = value;
return;
case 40: case 40:
return ref Element40; Element40 = value;
return;
case 41: case 41:
return ref Element41; Element41 = value;
return;
case 42: case 42:
return ref Element42; Element42 = value;
return;
case 43: case 43:
return ref Element43; Element43 = value;
return;
case 44: case 44:
return ref Element44; Element44 = value;
return;
case 45: case 45:
return ref Element45; Element45 = value;
return;
case 46: case 46:
return ref Element46; Element46 = value;
return;
case 47: case 47:
return ref Element47; Element47 = value;
return;
case 48: case 48:
return ref Element48; Element48 = value;
return;
case 49: case 49:
return ref Element49; Element49 = value;
return;
case 50: case 50:
return ref Element50; Element50 = value;
return;
case 51: case 51:
return ref Element51; Element51 = value;
return;
case 52: case 52:
return ref Element52; Element52 = value;
return;
case 53: case 53:
return ref Element53; Element53 = value;
return;
case 54: case 54:
return ref Element54; Element54 = value;
return;
case 55: case 55:
return ref Element55; Element55 = value;
return;
case 56: case 56:
return ref Element56; Element56 = value;
return;
case 57: case 57:
return ref Element57; Element57 = value;
return;
case 58: case 58:
return ref Element58; Element58 = value;
return;
case 59: case 59:
return ref Element59; Element59 = value;
return;
case 60: case 60:
return ref Element60; Element60 = value;
return;
case 61: case 61:
return ref Element61; Element61 = value;
return;
case 62: case 62:
return ref Element62; Element62 = value;
return;
case 63: case 63:
return ref Element63; Element63 = value;
return;
case 64: case 64:
return ref Element64; Element64 = value;
return;
case 65: case 65:
return ref Element65; Element65 = value;
return;
case 66: case 66:
return ref Element66; Element66 = value;
return;
case 67: case 67:
return ref Element67; Element67 = value;
return;
case 68: case 68:
return ref Element68; Element68 = value;
return;
case 69: case 69:
return ref Element69; Element69 = value;
return;
case 70: case 70:
return ref Element70; Element70 = value;
return;
case 71: case 71:
return ref Element71; Element71 = value;
return;
case 72: case 72:
return ref Element72; Element72 = value;
return;
case 73: case 73:
return ref Element73; Element73 = value;
return;
case 74: case 74:
return ref Element74; Element74 = value;
return;
case 75: case 75:
return ref Element75; Element75 = value;
return;
case 76: case 76:
return ref Element76; Element76 = value;
return;
case 77: case 77:
return ref Element77; Element77 = value;
return;
case 78: case 78:
return ref Element78; Element78 = value;
return;
case 79: case 79:
return ref Element79; Element79 = value;
return;
case 80: case 80:
return ref Element80; Element80 = value;
return;
case 81: case 81:
return ref Element81; Element81 = value;
return;
case 82: case 82:
return ref Element82; Element82 = value;
return;
case 83: case 83:
return ref Element83; Element83 = value;
return;
case 84: case 84:
return ref Element84; Element84 = value;
return;
case 85: case 85:
return ref Element85; Element85 = value;
return;
case 86: case 86:
return ref Element86; Element86 = value;
return;
case 87: case 87:
return ref Element87; Element87 = value;
return;
case 88: case 88:
return ref Element88; Element88 = value;
return;
case 89: case 89:
return ref Element89; Element89 = value;
return;
case 90: case 90:
return ref Element90; Element90 = value;
return;
case 91: case 91:
return ref Element91; Element91 = value;
return;
case 92: case 92:
return ref Element92; Element92 = value;
return;
case 93: case 93:
return ref Element93; Element93 = value;
return;
case 94: case 94:
return ref Element94; Element94 = value;
return;
case 95: case 95:
return ref Element95; Element95 = value;
return;
case 96: case 96:
return ref Element96; Element96 = value;
return;
case 97: case 97:
return ref Element97; Element97 = value;
return;
case 98: case 98:
return ref Element98; Element98 = value;
return;
case 99: case 99:
return ref Element99; Element99 = value;
return;
case 100: case 100:
return ref Element100; Element100 = value;
return;
case 101: case 101:
return ref Element101; Element101 = value;
return;
case 102: case 102:
return ref Element102; Element102 = value;
return;
case 103: case 103:
return ref Element103; Element103 = value;
return;
case 104: case 104:
return ref Element104; Element104 = value;
return;
case 105: case 105:
return ref Element105; Element105 = value;
return;
case 106: case 106:
return ref Element106; Element106 = value;
return;
case 107: case 107:
return ref Element107; Element107 = value;
return;
case 108: case 108:
return ref Element108; Element108 = value;
return;
case 109: case 109:
return ref Element109; Element109 = value;
return;
case 110: case 110:
return ref Element110; Element110 = value;
return;
case 111: case 111:
return ref Element111; Element111 = value;
return;
case 112: case 112:
return ref Element112; Element112 = value;
return;
case 113: case 113:
return ref Element113; Element113 = value;
return;
case 114: case 114:
return ref Element114; Element114 = value;
return;
case 115: case 115:
return ref Element115; Element115 = value;
return;
case 116: case 116:
return ref Element116; Element116 = value;
return;
case 117: case 117:
return ref Element117; Element117 = value;
return;
case 118: case 118:
return ref Element118; Element118 = value;
return;
case 119: case 119:
return ref Element119; Element119 = value;
return;
case 120: case 120:
return ref Element120; Element120 = value;
return;
case 121: case 121:
return ref Element121; Element121 = value;
return;
case 122: case 122:
return ref Element122; Element122 = value;
return;
case 123: case 123:
return ref Element123; Element123 = value;
return;
case 124: case 124:
return ref Element124; Element124 = value;
return;
case 125: case 125:
return ref Element125; Element125 = value;
return;
case 126: case 126:
return ref Element126; Element126 = value;
return;
case 127: case 127:
return ref Element127; Element127 = value;
return;
default: default:
return ref Element0; throw new ArgumentOutOfRangeException(nameof(index), index, "Pow2OddPowerTable index must be between 0 and 127.");
} }
} }
} }