summaryrefslogtreecommitdiff
path: root/Library/Artifacts/c9/c9ad9035a1d4af01c9e9bbc0e786cbd3
blob: 0b94528fd6b20096a20ec453cb5253d66acb670b (plain)
ofshex dumpascii
0000 00 00 0f 81 00 00 76 dc 00 00 00 15 00 00 10 00 00 00 00 00 32 30 31 39 2e 33 2e 36 66 31 00 fe ......v.............2019.3.6f1..
0020 ff ff ff 01 02 00 00 00 0b 04 00 00 00 ff ff 66 9a 86 21 eb 14 35 98 39 dd 34 1d 51 0e c1 f3 42 ...............f..!..5.9.4.Q...B
0040 00 00 00 ed 00 00 00 02 00 00 00 00 00 00 00 37 00 00 80 ff ff ff ff 00 00 00 00 00 80 00 00 00 ...............7................
0060 00 00 00 00 00 00 00 01 00 01 00 a6 03 00 80 b2 01 00 80 04 00 00 00 01 00 00 00 01 00 00 00 00 ................................
0080 00 00 00 00 00 00 00 01 00 01 00 0d 00 00 00 45 04 00 80 0c 00 00 00 02 00 00 00 01 00 00 00 00 ...............E................
00a0 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 03 00 00 00 01 00 80 00 00 ...............#................
00c0 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 04 00 00 00 01 00 80 00 00 ...............,................
00e0 00 00 00 00 00 00 00 01 00 01 00 35 00 00 00 61 04 00 80 0c 00 00 00 05 00 00 00 01 00 00 00 00 ...........5...a................
0100 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 06 00 00 00 01 00 80 00 00 ...............#................
0120 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 07 00 00 00 01 00 80 00 00 ...............,................
0140 00 00 00 00 00 00 00 01 00 01 00 86 02 00 80 72 04 00 80 0c 00 00 00 08 00 00 00 01 00 00 00 00 ...............r................
0160 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 09 00 00 00 01 00 80 00 00 ...............#................
0180 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 0a 00 00 00 01 00 80 00 00 ...............,................
01a0 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ab 01 00 80 ff ff ff ff 0b 00 00 00 01 80 08 00 00 ...........H....................
01c0 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 0c 00 00 00 01 40 08 00 00 ...........1...1............@...
01e0 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 0d 00 00 00 01 00 08 00 00 ................................
0200 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 0e 00 00 00 01 00 08 00 00 ...........Q...j................
0220 00 00 00 00 00 00 00 01 00 01 00 f1 00 00 80 4a 00 00 00 ff ff ff ff 0f 00 00 00 00 c0 00 00 00 ...............J................
0240 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 10 00 00 00 00 80 00 00 00 ...........1...1................
0260 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 11 00 00 00 00 00 00 00 00 ................................
0280 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a 00 00 80 ff ff ff ff 12 00 00 00 00 80 00 00 00 ...............j................
02a0 00 00 00 00 00 00 00 01 00 04 00 5c 00 00 00 9b 00 00 80 ff ff ff ff 13 00 00 00 00 80 00 00 00 ...........\....................
02c0 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 72 00 00 00 ff ff ff ff 14 00 00 00 00 80 00 00 00 ...........H...r................
02e0 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 15 00 00 00 01 40 00 00 00 ...........1...1............@...
0300 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 16 00 00 00 01 00 00 00 00 ................................
0320 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 17 00 00 00 01 00 00 00 00 ...........Q...j................
0340 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 77 00 00 00 ff ff ff ff 18 00 00 00 00 80 00 00 00 ...........H...w................
0360 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 19 00 00 00 01 40 00 00 00 ...........1...1............@...
0380 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 1a 00 00 00 01 00 00 00 00 ................................
03a0 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 1b 00 00 00 01 00 00 00 00 ...........Q...j................
03c0 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 80 00 00 00 ff ff ff ff 1c 00 00 00 00 80 00 00 00 ...........H....................
03e0 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 1d 00 00 00 01 40 00 00 00 ...........1...1............@...
0400 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 1e 00 00 00 01 00 00 00 00 ................................
0420 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 1f 00 00 00 01 00 00 00 00 ...........Q...j................
0440 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a 03 00 80 0c 00 00 00 20 00 00 00 00 00 00 00 00 ...........y....................
0460 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 23 00 00 00 04 00 00 00 21 00 00 00 01 00 80 00 00 ...............#.......!........
0480 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 2c 00 00 00 08 00 00 00 22 00 00 00 01 00 80 00 00 ...............,......."........
04a0 00 00 00 00 00 00 00 01 00 01 00 11 03 00 80 85 00 00 00 ff ff ff ff 23 00 00 00 01 40 08 00 00 .......................#....@...
04c0 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 24 00 00 00 01 00 08 00 00 ...........1...1.......$........
04e0 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 25 00 00 00 01 00 08 00 00 .......................%........
0500 00 00 00 00 00 00 00 01 00 03 00 2e 03 00 80 6a 00 00 80 08 00 00 00 26 00 00 00 01 00 08 00 00 ...............j.......&........
0520 00 00 00 00 00 00 00 01 00 01 00 d5 03 00 80 93 00 00 00 ff ff ff ff 27 00 00 00 00 80 00 00 00 .......................'........
0540 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 28 00 00 00 00 c0 00 00 00 ...........1...1.......(........
0560 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 29 00 00 00 00 00 00 00 00 .......................)........
0580 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a 00 00 80 ff ff ff ff 2a 00 00 00 00 80 00 00 00 ...............j.......*........
05a0 00 00 00 00 00 00 00 01 00 04 00 48 03 00 80 9b 00 00 80 ff ff ff ff 2b 00 00 00 00 80 00 00 00 ...........H...........+........
05c0 00 00 00 00 00 00 00 01 00 05 01 31 00 00 80 31 00 00 80 ff ff ff ff 2c 00 00 00 01 40 00 00 00 ...........1...1.......,....@...
05e0 00 00 00 00 00 00 00 01 00 06 00 de 00 00 80 1b 03 00 80 04 00 00 00 2d 00 00 00 01 00 00 00 00 .......................-........
0600 00 00 00 00 00 00 00 01 00 06 00 51 00 00 80 6a 00 00 80 01 00 00 00 2e 00 00 00 01 00 00 00 00 ...........Q...j................
0620 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a 03 00 80 0c 00 00 00 2f 00 00 00 00 00 00 00 00 ...........y.........../........
0640 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 23 00 00 00 04 00 00 00 30 00 00 00 01 00 80 00 00 ...............#.......0........
0660 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 2c 00 00 00 08 00 00 00 31 00 00 00 01 00 80 00 00 ...............,.......1........
0680 00 00 00 00 00 00 00 01 00 01 00 20 03 00 80 a7 00 00 00 02 00 00 00 32 00 00 00 00 40 00 00 00 .......................2....@...
06a0 00 00 00 00 00 00 00 01 00 01 00 be 02 00 80 b6 00 00 00 0c 00 00 00 33 00 00 00 00 40 00 00 00 .......................3....@...
06c0 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 34 00 00 00 01 00 80 00 00 ...............#.......4........
06e0 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 35 00 00 00 01 00 80 00 00 ...............,.......5........
0700 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 bb 00 00 00 ff ff ff ff 36 00 00 00 01 80 00 00 00 ...........H...........6........
0720 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 37 00 00 00 01 40 00 00 00 ...........1...1.......7....@...
0740 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 38 00 00 00 01 00 00 00 00 .......................8........
0760 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 39 00 00 00 01 00 00 00 00 ...........Q...j.......9........
0780 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 c6 00 00 00 ff ff ff ff 3a 00 00 00 01 80 00 00 00 ...........H...........:........
07a0 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 3b 00 00 00 01 40 00 00 00 ...........1...1.......;....@...
07c0 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 3c 00 00 00 01 00 00 00 00 .......................<........
07e0 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 3d 00 00 00 01 00 00 00 00 ...........Q...j.......=........
0800 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 d8 00 00 00 ff ff ff ff 3e 00 00 00 01 80 00 00 00 ...........H...........>........
0820 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 3f 00 00 00 01 40 00 00 00 ...........1...1.......?....@...
0840 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 40 00 00 00 01 00 00 00 00 .......................@........
0860 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 41 00 00 00 01 00 00 00 00 ...........Q...j.......A........
0880 00 00 00 00 00 00 00 4d 6f 6e 6f 49 6d 70 6f 72 74 65 72 00 50 50 74 72 3c 45 64 69 74 6f 72 45 .......MonoImporter.PPtr<EditorE
08a0 78 74 65 6e 73 69 6f 6e 3e 00 6d 5f 46 69 6c 65 49 44 00 6d 5f 50 61 74 68 49 44 00 50 50 74 72 xtension>.m_FileID.m_PathID.PPtr
08c0 3c 50 72 65 66 61 62 49 6e 73 74 61 6e 63 65 3e 00 6d 5f 45 78 74 65 72 6e 61 6c 4f 62 6a 65 63 <PrefabInstance>.m_ExternalObjec
08e0 74 73 00 53 6f 75 72 63 65 41 73 73 65 74 49 64 65 6e 74 69 66 69 65 72 00 74 79 70 65 00 61 73 ts.SourceAssetIdentifier.type.as
0900 73 65 6d 62 6c 79 00 6e 61 6d 65 00 6d 5f 55 73 65 64 46 69 6c 65 49 44 73 00 6d 5f 44 65 66 61 sembly.name.m_UsedFileIDs.m_Defa
0920 75 6c 74 52 65 66 65 72 65 6e 63 65 73 00 65 78 65 63 75 74 69 6f 6e 4f 72 64 65 72 00 69 63 6f ultReferences.executionOrder.ico
0940 6e 00 6d 5f 55 73 65 72 44 61 74 61 00 6d 5f 41 73 73 65 74 42 75 6e 64 6c 65 4e 61 6d 65 00 6d n.m_UserData.m_AssetBundleName.m
0960 5f 41 73 73 65 74 42 75 6e 64 6c 65 56 61 72 69 61 6e 74 00 00 00 00 00 73 00 00 00 00 ff ff a3 _AssetBundleVariant.....s.......
0980 47 f1 d7 dc 8f 5a 35 36 a0 3a 21 40 69 c1 4a 2a 00 00 00 81 00 00 00 05 00 00 00 15 01 00 80 37 G....Z56.:!@i.J*...............7
09a0 00 00 80 ff ff ff ff 00 00 00 00 00 80 00 00 00 00 00 00 00 00 00 00 01 00 01 00 a6 03 00 80 b2 ................................
09c0 01 00 80 04 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 00 00 00 00 45 ...............................E
09e0 04 00 80 0c 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0a00 00 00 00 04 00 00 00 03 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0a20 00 00 00 08 00 00 00 04 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 28 00 00 00 61 ...........................(...a
0a40 04 00 80 0c 00 00 00 05 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0a60 00 00 00 04 00 00 00 06 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0a80 00 00 00 08 00 00 00 07 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 86 02 00 80 72 ...............................r
0aa0 04 00 80 0c 00 00 00 08 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0ac0 00 00 00 04 00 00 00 09 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0ae0 00 00 00 08 00 00 00 0a 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ab ...........................H....
0b00 01 00 80 ff ff ff ff 0b 00 00 00 01 80 08 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ...........................1...1
0b20 00 00 80 ff ff ff ff 0c 00 00 00 01 40 08 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b ............@...................
0b40 03 00 80 04 00 00 00 0d 00 00 00 01 00 08 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a ...........................Q...j
0b60 00 00 80 01 00 00 00 0e 00 00 00 01 00 08 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ea ...........................H....
0b80 01 00 80 ff ff ff ff 0f 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ...........................1...1
0ba0 00 00 80 ff ff ff ff 10 00 00 00 01 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b ............@...................
0bc0 03 00 80 04 00 00 00 11 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a ...........................Q...j
0be0 00 00 80 01 00 00 00 12 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 f1 00 00 80 3d ...............................=
0c00 00 00 00 ff ff ff ff 13 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ...........................1...1
0c20 00 00 80 ff ff ff ff 14 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b ................................
0c40 03 00 80 04 00 00 00 15 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a ...............................j
0c60 00 00 80 ff ff ff ff 16 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 04 00 48 03 00 80 9b ...........................H....
0c80 00 00 80 ff ff ff ff 17 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 05 01 31 00 00 80 31 ...........................1...1
0ca0 00 00 80 ff ff ff ff 18 00 00 00 01 40 00 00 00 00 00 00 00 00 00 00 01 00 06 00 de 00 00 80 1b ............@...................
0cc0 03 00 80 04 00 00 00 19 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 06 00 51 00 00 80 6a ...........................Q...j
0ce0 00 00 80 01 00 00 00 1a 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a ...........................y....
0d00 03 00 80 0c 00 00 00 1b 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 16 ................................
0d20 00 00 00 04 00 00 00 1c 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 1f ................................
0d40 00 00 00 08 00 00 00 1d 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 79 02 00 80 51 ...........................y...Q
0d60 00 00 00 0c 00 00 00 1e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0d80 00 00 00 04 00 00 00 1f 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0da0 00 00 00 08 00 00 00 20 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 de 00 00 80 58 ...............................X
0dc0 00 00 00 04 00 00 00 21 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 69 .......!...................H...i
0de0 00 00 00 ff ff ff ff 22 00 00 00 10 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ......."...................1...1
0e00 00 00 80 ff ff ff ff 23 00 00 00 11 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b .......#....@...................
0e20 03 00 80 04 00 00 00 24 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a .......$...................Q...j
0e40 00 00 80 01 00 00 00 25 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 75 .......%...................H...u
0e60 00 00 00 ff ff ff ff 26 00 00 00 10 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 .......&...................1...1
0e80 00 00 80 ff ff ff ff 27 00 00 00 11 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b .......'....@...................
0ea0 03 00 80 04 00 00 00 28 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a .......(...................Q...j
0ec0 00 00 80 01 00 00 00 29 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 50 50 74 72 3c 45 64 69 74 .......)...............PPtr<Edit
0ee0 6f 72 45 78 74 65 6e 73 69 6f 6e 3e 00 6d 5f 46 69 6c 65 49 44 00 6d 5f 50 61 74 68 49 44 00 50 orExtension>.m_FileID.m_PathID.P
0f00 50 74 72 3c 50 72 65 66 61 62 49 6e 73 74 61 6e 63 65 3e 00 6d 5f 44 65 66 61 75 6c 74 52 65 66 Ptr<PrefabInstance>.m_DefaultRef
0f20 65 72 65 6e 63 65 73 00 6d 5f 49 63 6f 6e 00 6d 5f 45 78 65 63 75 74 69 6f 6e 4f 72 64 65 72 00 erences.m_Icon.m_ExecutionOrder.
0f40 6d 5f 43 6c 61 73 73 4e 61 6d 65 00 6d 5f 4e 61 6d 65 73 70 61 63 65 00 00 00 00 00 02 00 00 00 m_ClassName.m_Namespace.........
0f60 03 00 00 00 00 00 00 00 00 00 00 00 5c 00 00 00 00 00 00 00 e0 79 af 00 00 00 00 00 60 00 00 00 ............\........y......`...
0f80 7c 66 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |f..............................
0fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 e0 79 af 00 00 00 00 00 00 00 00 00 .....................y..........
1040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1080 00 00 00 00 00 00 00 00 0c 00 00 00 41 72 72 61 79 48 65 6c 70 65 72 73 f1 65 00 00 75 73 69 6e ............ArrayHelpers.e..usin
10a0 67 20 53 79 73 74 65 6d 3b 0d 0a 75 73 69 6e 67 20 53 79 73 74 65 6d 2e 43 6f 6c 6c 65 63 74 69 g.System;..using.System.Collecti
10c0 6f 6e 73 2e 47 65 6e 65 72 69 63 3b 0d 0a 75 73 69 6e 67 20 53 79 73 74 65 6d 2e 4c 69 6e 71 3b ons.Generic;..using.System.Linq;
10e0 0d 0a 75 73 69 6e 67 20 55 6e 69 74 79 2e 43 6f 6c 6c 65 63 74 69 6f 6e 73 3b 0d 0a 75 73 69 6e ..using.Unity.Collections;..usin
1100 67 20 55 6e 69 74 79 2e 43 6f 6c 6c 65 63 74 69 6f 6e 73 2e 4c 6f 77 4c 65 76 65 6c 2e 55 6e 73 g.Unity.Collections.LowLevel.Uns
1120 61 66 65 3b 0d 0a 0d 0a 6e 61 6d 65 73 70 61 63 65 20 55 6e 69 74 79 45 6e 67 69 6e 65 2e 49 6e afe;....namespace.UnityEngine.In
1140 70 75 74 53 79 73 74 65 6d 2e 55 74 69 6c 69 74 69 65 73 0d 0a 7b 0d 0a 20 20 20 20 2f 2f 2f 20 putSystem.Utilities..{......///.
1160 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 2f 2f 2f 20 41 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 <summary>......///.A.collection.
1180 6f 66 20 75 74 69 6c 69 74 79 20 66 75 6e 63 74 69 6f 6e 73 20 66 6f 72 20 77 6f 72 6b 69 6e 67 of.utility.functions.for.working
11a0 20 77 69 74 68 20 61 72 72 61 79 73 2e 0d 0a 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 .with.arrays.......///.</summary
11c0 3e 0d 0a 20 20 20 20 2f 2f 2f 20 3c 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 2f 2f 2f 20 54 68 >......///.<remarks>......///.Th
11e0 65 20 67 6f 61 6c 20 6f 66 20 74 68 69 73 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 69 73 20 74 6f 20 e.goal.of.this.collection.is.to.
1200 6d 61 6b 65 20 69 74 20 65 61 73 79 20 74 6f 20 75 73 65 20 61 72 72 61 79 73 20 64 69 72 65 63 make.it.easy.to.use.arrays.direc
1220 74 6c 79 20 72 61 74 68 65 72 20 74 68 61 6e 20 72 65 73 6f 72 74 69 6e 67 20 74 6f 0d 0a 20 20 tly.rather.than.resorting.to....
1240 20 20 2f 2f 2f 20 3c 73 65 65 20 63 72 65 66 3d 22 4c 69 73 74 7b 54 7d 22 2f 3e 2e 0d 0a 20 20 ..///.<see.cref="List{T}"/>.....
1260 20 20 2f 2f 2f 20 3c 2f 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 ..///.</remarks>......internal.s
1280 74 61 74 69 63 20 63 6c 61 73 73 20 41 72 72 61 79 48 65 6c 70 65 72 73 0d 0a 20 20 20 20 7b 0d tatic.class.ArrayHelpers......{.
12a0 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 69 6e 74 20 4c 65 6e 67 74 .........public.static.int.Lengt
12c0 68 53 61 66 65 3c 54 56 61 6c 75 65 3e 28 74 68 69 73 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 hSafe<TValue>(this.TValue[].arra
12e0 79 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 61 y)..........{..............if.(a
1300 72 72 61 79 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 rray.==.null)..................r
1320 65 74 75 72 6e 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 61 72 72 eturn.0;..............return.arr
1340 61 79 2e 4c 65 6e 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 ay.Length;..........}...........
1360 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 76 6f 69 64 20 43 6c 65 61 72 3c 54 56 61 6c 75 65 .public.static.void.Clear<TValue
1380 3e 28 74 68 69 73 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 29 0d 0a 20 20 20 20 20 20 20 20 >(this.TValue[].array)..........
13a0 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 61 72 72 61 79 20 3d 3d 20 6e 75 6c 6c {..............if.(array.==.null
13c0 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 )..................return;......
13e0 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 43 6c 65 61 72 28 61 72 72 61 79 2c 20 30 2c 20 ..........Array.Clear(array,.0,.
1400 61 72 72 61 79 2e 4c 65 6e 67 74 68 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 array.Length);..........}.......
1420 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 76 6f 69 64 20 43 6c 65 61 72 3c 54 56 .....public.static.void.Clear<TV
1440 61 6c 75 65 3e 28 74 68 69 73 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 69 6e 74 20 63 alue>(this.TValue[].array,.int.c
1460 6f 75 6e 74 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 ount)..........{..............if
1480 20 28 61 72 72 61 79 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(array.==.null)................
14a0 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 43 6c 65 ..return;..............Array.Cle
14c0 61 72 28 61 72 72 61 79 2c 20 30 2c 20 63 6f 75 6e 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d ar(array,.0,.count);..........}.
14e0 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 76 6f 69 64 20 43 6c ...........public.static.void.Cl
1500 65 61 72 3c 54 56 61 6c 75 65 3e 28 74 68 69 73 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c ear<TValue>(this.TValue[].array,
1520 20 72 65 66 20 69 6e 74 20 63 6f 75 6e 74 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 .ref.int.count)..........{......
1540 20 20 20 20 20 20 20 20 69 66 20 28 61 72 72 61 79 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 ........if.(array.==.null)......
1560 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 ............return;.............
1580 20 20 20 41 72 72 61 79 2e 43 6c 65 61 72 28 61 72 72 61 79 2c 20 30 2c 20 63 6f 75 6e 74 29 3b ...Array.Clear(array,.0,.count);
15a0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 75 6e 74 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 ..............count.=.0;........
15c0 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 76 6f 69 ..}............public.static.voi
15e0 64 20 45 6e 73 75 72 65 43 61 70 61 63 69 74 79 3c 54 56 61 6c 75 65 3e 28 72 65 66 20 54 56 61 d.EnsureCapacity<TValue>(ref.TVa
1600 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 69 6e 74 20 63 6f 75 6e 74 2c 20 69 6e 74 20 63 61 70 61 lue[].array,.int.count,.int.capa
1620 63 69 74 79 2c 20 69 6e 74 20 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d 65 6e 74 20 3d 20 31 30 city,.int.capacityIncrement.=.10
1640 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 61 )..........{..............if.(ca
1660 70 61 63 69 74 79 20 3d 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 pacity.==.0)..................re
1680 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 61 72 72 61 79 20 3d turn;................if.(array.=
16a0 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 =.null)..............{..........
16c0 20 20 20 20 20 20 20 20 61 72 72 61 79 20 3d 20 6e 65 77 20 54 56 61 6c 75 65 5b 4d 61 74 68 2e ........array.=.new.TValue[Math.
16e0 4d 61 78 28 63 61 70 61 63 69 74 79 2c 20 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d 65 6e 74 29 Max(capacity,.capacityIncrement)
1700 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 ];..................return;.....
1720 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 75 .........}................var.cu
1740 72 72 65 6e 74 43 61 70 61 63 69 74 79 20 3d 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 20 2d 20 63 rrentCapacity.=.array.Length.-.c
1760 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 75 72 72 65 6e 74 43 61 ount;..............if.(currentCa
1780 70 61 63 69 74 79 20 3e 3d 20 63 61 70 61 63 69 74 79 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 pacity.>=.capacity).............
17a0 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 75 70 6c .....return;................Dupl
17c0 69 63 61 74 65 57 69 74 68 43 61 70 61 63 69 74 79 28 72 65 66 20 61 72 72 61 79 2c 20 63 6f 75 icateWithCapacity(ref.array,.cou
17e0 6e 74 2c 20 63 61 70 61 63 69 74 79 2c 20 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d 65 6e 74 29 nt,.capacity,.capacityIncrement)
1800 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 ;..........}............public.s
1820 74 61 74 69 63 20 76 6f 69 64 20 44 75 70 6c 69 63 61 74 65 57 69 74 68 43 61 70 61 63 69 74 79 tatic.void.DuplicateWithCapacity
1840 3c 54 56 61 6c 75 65 3e 28 72 65 66 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 69 6e 74 <TValue>(ref.TValue[].array,.int
1860 20 63 6f 75 6e 74 2c 20 69 6e 74 20 63 61 70 61 63 69 74 79 2c 20 69 6e 74 20 63 61 70 61 63 69 .count,.int.capacity,.int.capaci
1880 74 79 49 6e 63 72 65 6d 65 6e 74 20 3d 20 31 30 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 tyIncrement.=.10)..........{....
18a0 20 20 20 20 20 20 20 20 20 20 69 66 20 28 61 72 72 61 79 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 ..........if.(array.==.null)....
18c0 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 ..........{..................arr
18e0 61 79 20 3d 20 6e 65 77 20 54 56 61 6c 75 65 5b 4d 61 74 68 2e 4d 61 78 28 63 61 70 61 63 69 74 ay.=.new.TValue[Math.Max(capacit
1900 79 2c 20 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d 65 6e 74 29 5d 3b 0d 0a 20 20 20 20 20 20 20 y,.capacityIncrement)];.........
1920 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d .........return;..............}.
1940 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6e 65 77 53 69 7a 65 20 3d 20 63 6f 75 ...............var.newSize.=.cou
1960 6e 74 20 2b 20 4d 61 74 68 2e 4d 61 78 28 63 61 70 61 63 69 74 79 2c 20 63 61 70 61 63 69 74 79 nt.+.Math.Max(capacity,.capacity
1980 49 6e 63 72 65 6d 65 6e 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6e 65 77 Increment);..............var.new
19a0 41 72 72 61 79 20 3d 20 6e 65 77 20 54 56 61 6c 75 65 5b 6e 65 77 53 69 7a 65 5d 3b 0d 0a 20 20 Array.=.new.TValue[newSize];....
19c0 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 43 6f 70 79 28 61 72 72 61 79 2c 20 6e 65 77 41 ..........Array.Copy(array,.newA
19e0 72 72 61 79 2c 20 63 6f 75 6e 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 rray,.count);..............array
1a00 20 3d 20 6e 65 77 41 72 72 61 79 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 .=.newArray;..........}.........
1a20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 62 6f 6f 6c 20 43 6f 6e 74 61 69 6e 73 3c 54 ...public.static.bool.Contains<T
1a40 56 61 6c 75 65 3e 28 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 54 56 61 6c 75 65 20 76 61 Value>(TValue[].array,.TValue.va
1a60 6c 75 65 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 lue)..........{..............if.
1a80 28 61 72 72 61 79 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (array.==.null).................
1aa0 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 .return.false;................va
1ac0 72 20 63 6f 6d 70 61 72 65 72 20 3d 20 45 71 75 61 6c 69 74 79 43 6f 6d 70 61 72 65 72 3c 54 56 r.comparer.=.EqualityComparer<TV
1ae0 61 6c 75 65 3e 2e 44 65 66 61 75 6c 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 alue>.Default;..............for.
1b00 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 3b 20 2b 2b (var.i.=.0;.i.<.array.Length;.++
1b20 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 6f 6d 70 61 72 65 72 i)..................if.(comparer
1b40 2e 45 71 75 61 6c 73 28 61 72 72 61 79 5b 69 5d 2c 20 76 61 6c 75 65 29 29 0d 0a 20 20 20 20 20 .Equals(array[i],.value)).......
1b60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0d 0a 0d 0a 20 ...............return.true;.....
1b80 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 ...........return.false;........
1ba0 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 62 6f 6f ..}............public.static.boo
1bc0 6c 20 43 6f 6e 74 61 69 6e 73 52 65 66 65 72 65 6e 63 65 3c 54 56 61 6c 75 65 3e 28 54 56 61 6c l.ContainsReference<TValue>(TVal
1be0 75 65 5b 5d 20 61 72 72 61 79 2c 20 54 56 61 6c 75 65 20 76 61 6c 75 65 29 0d 0a 20 20 20 20 20 ue[].array,.TValue.value).......
1c00 20 20 20 20 20 20 20 77 68 65 72 65 20 54 56 61 6c 75 65 20 3a 20 63 6c 61 73 73 0d 0a 20 20 20 .......where.TValue.:.class.....
1c20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 61 72 72 61 79 20 3d 3d .....{..............if.(array.==
1c40 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 .null)..................return.f
1c60 61 6c 73 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 43 6f 6e 74 alse;................return.Cont
1c80 61 69 6e 73 52 65 66 65 72 65 6e 63 65 28 61 72 72 61 79 2c 20 61 72 72 61 79 2e 4c 65 6e 67 74 ainsReference(array,.array.Lengt
1ca0 68 2c 20 76 61 6c 75 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 h,.value);..........}...........
1cc0 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 62 6f 6f 6c 20 43 6f 6e 74 61 69 6e 73 52 65 66 65 .public.static.bool.ContainsRefe
1ce0 72 65 6e 63 65 3c 54 56 61 6c 75 65 3e 28 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 69 6e rence<TValue>(TValue[].array,.in
1d00 74 20 63 6f 75 6e 74 2c 20 54 56 61 6c 75 65 20 76 61 6c 75 65 29 0d 0a 20 20 20 20 20 20 20 20 t.count,.TValue.value)..........
1d20 20 20 20 20 77 68 65 72 65 20 54 56 61 6c 75 65 20 3a 20 63 6c 61 73 73 0d 0a 20 20 20 20 20 20 ....where.TValue.:.class........
1d40 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 49 6e 64 65 78 4f 66 52 ..{..............return.IndexOfR
1d60 65 66 65 72 65 6e 63 65 28 61 72 72 61 79 2c 20 76 61 6c 75 65 2c 20 63 6f 75 6e 74 29 20 21 3d eference(array,.value,.count).!=
1d80 20 2d 31 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 .-1;..........}............publi
1da0 63 20 73 74 61 74 69 63 20 62 6f 6f 6c 20 48 61 76 65 45 71 75 61 6c 45 6c 65 6d 65 6e 74 73 3c c.static.bool.HaveEqualElements<
1dc0 54 56 61 6c 75 65 3e 28 54 56 61 6c 75 65 5b 5d 20 66 69 72 73 74 2c 20 54 56 61 6c 75 65 5b 5d TValue>(TValue[].first,.TValue[]
1de0 20 73 65 63 6f 6e 64 2c 20 69 6e 74 20 63 6f 75 6e 74 20 3d 20 69 6e 74 2e 4d 61 78 56 61 6c 75 .second,.int.count.=.int.MaxValu
1e00 65 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 66 e)..........{..............if.(f
1e20 69 72 73 74 20 3d 3d 20 6e 75 6c 6c 20 7c 7c 20 73 65 63 6f 6e 64 20 3d 3d 20 6e 75 6c 6c 29 0d irst.==.null.||.second.==.null).
1e40 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 73 65 63 6f 6e 64 20 3d .................return.second.=
1e60 3d 20 66 69 72 73 74 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6c 65 6e 67 =.first;................var.leng
1e80 74 68 46 69 72 73 74 20 3d 20 4d 61 74 68 2e 4d 69 6e 28 63 6f 75 6e 74 2c 20 66 69 72 73 74 2e thFirst.=.Math.Min(count,.first.
1ea0 4c 65 6e 67 74 68 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6c 65 6e 67 74 68 Length);..............var.length
1ec0 53 65 63 6f 6e 64 20 3d 20 4d 61 74 68 2e 4d 69 6e 28 63 6f 75 6e 74 2c 20 73 65 63 6f 6e 64 2e Second.=.Math.Min(count,.second.
1ee0 4c 65 6e 67 74 68 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6c 65 6e 67 Length);................if.(leng
1f00 74 68 46 69 72 73 74 20 21 3d 20 6c 65 6e 67 74 68 53 65 63 6f 6e 64 29 0d 0a 20 20 20 20 20 20 thFirst.!=.lengthSecond)........
1f20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0d 0a 0d 0a 20 20 20 20 20 ..........return.false;.........
1f40 20 20 20 20 20 20 20 76 61 72 20 63 6f 6d 70 61 72 65 72 20 3d 20 45 71 75 61 6c 69 74 79 43 6f .......var.comparer.=.EqualityCo
1f60 6d 70 61 72 65 72 3c 54 56 61 6c 75 65 3e 2e 44 65 66 61 75 6c 74 3b 0d 0a 20 20 20 20 20 20 20 mparer<TValue>.Default;.........
1f80 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 6c 65 6e 67 74 68 46 .....for.(var.i.=.0;.i.<.lengthF
1fa0 69 72 73 74 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 irst;.++i)..................if.(
1fc0 21 63 6f 6d 70 61 72 65 72 2e 45 71 75 61 6c 73 28 66 69 72 73 74 5b 69 5d 2c 20 73 65 63 6f 6e !comparer.Equals(first[i],.secon
1fe0 64 5b 69 5d 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 d[i]))......................retu
2000 72 6e 20 66 61 6c 73 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 rn.false;................return.
2020 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 2f true;..........}............////
2040 52 45 56 49 45 57 3a 20 72 65 6d 6f 76 65 20 74 68 69 73 20 74 6f 20 67 65 74 20 72 69 64 20 6f REVIEW:.remove.this.to.get.rid.o
2060 66 20 64 65 66 61 75 6c 74 20 65 71 75 61 6c 69 74 79 20 63 6f 6d 70 61 72 65 72 3f 0d 0a 20 20 f.default.equality.comparer?....
2080 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 69 6e 74 20 49 6e 64 65 78 4f 66 3c ......public.static.int.IndexOf<
20a0 54 56 61 6c 75 65 3e 28 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 54 56 61 6c 75 65 20 76 TValue>(TValue[].array,.TValue.v
20c0 61 6c 75 65 2c 20 69 6e 74 20 73 74 61 72 74 49 6e 64 65 78 20 3d 20 30 2c 20 69 6e 74 20 63 6f alue,.int.startIndex.=.0,.int.co
20e0 75 6e 74 20 3d 20 2d 31 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 unt.=.-1)..........{............
2100 20 20 69 66 20 28 61 72 72 61 79 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 ..if.(array.==.null)............
2120 20 20 20 20 20 20 72 65 74 75 72 6e 20 2d 31 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ......return.-1;................
2140 69 66 20 28 63 6f 75 6e 74 20 3c 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 if.(count.<.0)..................
2160 63 6f 75 6e 74 20 3d 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 20 2d 20 73 74 61 72 74 49 6e 64 65 count.=.array.Length.-.startInde
2180 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 6f 6d 70 61 72 65 72 20 3d 20 45 x;..............var.comparer.=.E
21a0 71 75 61 6c 69 74 79 43 6f 6d 70 61 72 65 72 3c 54 56 61 6c 75 65 3e 2e 44 65 66 61 75 6c 74 3b qualityComparer<TValue>.Default;
21c0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 73 74 61 72 74 ..............for.(var.i.=.start
21e0 49 6e 64 65 78 3b 20 69 20 3c 20 73 74 61 72 74 49 6e 64 65 78 20 2b 20 63 6f 75 6e 74 3b 20 2b Index;.i.<.startIndex.+.count;.+
2200 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 6f 6d 70 61 72 65 +i)..................if.(compare
2220 72 2e 45 71 75 61 6c 73 28 61 72 72 61 79 5b 69 5d 2c 20 76 61 6c 75 65 29 29 0d 0a 20 20 20 20 r.Equals(array[i],.value))......
2240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 69 3b 0d 0a 0d 0a 20 20 20 ................return.i;.......
2260 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 2d 31 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a .........return.-1;..........}..
2280 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 69 6e 74 20 49 6e 64 65 ..........public.static.int.Inde
22a0 78 4f 66 3c 54 56 61 6c 75 65 3e 28 74 68 69 73 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c xOf<TValue>(this.TValue[].array,
22c0 20 50 72 65 64 69 63 61 74 65 3c 54 56 61 6c 75 65 3e 20 70 72 65 64 69 63 61 74 65 29 0d 0a 20 .Predicate<TValue>.predicate)...
22e0 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 61 72 72 61 79 20 .......{..............if.(array.
2300 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e ==.null)..................return
2320 20 2d 31 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6c 65 6e 67 74 68 20 3d .-1;................var.length.=
2340 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 .array.Length;..............for.
2360 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 6c 65 6e 67 74 68 3b 20 2b 2b 69 29 0d 0a 20 20 (var.i.=.0;.i.<.length;.++i)....
2380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 70 72 65 64 69 63 61 74 65 28 61 72 72 61 ..............if.(predicate(arra
23a0 79 5b 69 5d 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 y[i]))......................retu
23c0 72 6e 20 69 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 2d 31 3b 0d rn.i;................return.-1;.
23e0 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 .........}............public.sta
2400 74 69 63 20 69 6e 74 20 49 6e 64 65 78 4f 66 52 65 66 65 72 65 6e 63 65 3c 54 56 61 6c 75 65 3e tic.int.IndexOfReference<TValue>
2420 28 74 68 69 73 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 54 56 61 6c 75 65 20 76 61 6c (this.TValue[].array,.TValue.val
2440 75 65 2c 20 69 6e 74 20 63 6f 75 6e 74 20 3d 20 2d 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ue,.int.count.=.-1).............
2460 20 77 68 65 72 65 20 54 56 61 6c 75 65 20 3a 20 63 6c 61 73 73 0d 0a 20 20 20 20 20 20 20 20 7b .where.TValue.:.class..........{
2480 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 49 6e 64 65 78 4f 66 52 65 66 65 ..............return.IndexOfRefe
24a0 72 65 6e 63 65 28 61 72 72 61 79 2c 20 76 61 6c 75 65 2c 20 30 2c 20 63 6f 75 6e 74 29 3b 0d 0a rence(array,.value,.0,.count);..
24c0 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 ........}............public.stat
24e0 69 63 20 69 6e 74 20 49 6e 64 65 78 4f 66 52 65 66 65 72 65 6e 63 65 3c 54 56 61 6c 75 65 3e 28 ic.int.IndexOfReference<TValue>(
2500 74 68 69 73 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 54 56 61 6c 75 65 20 76 61 6c 75 this.TValue[].array,.TValue.valu
2520 65 2c 20 69 6e 74 20 73 74 61 72 74 49 6e 64 65 78 2c 20 69 6e 74 20 63 6f 75 6e 74 29 0d 0a 20 e,.int.startIndex,.int.count)...
2540 20 20 20 20 20 20 20 20 20 20 20 77 68 65 72 65 20 54 56 61 6c 75 65 20 3a 20 63 6c 61 73 73 0d ...........where.TValue.:.class.
2560 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 61 72 72 61 .........{..............if.(arra
2580 79 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 y.==.null)..................retu
25a0 72 6e 20 2d 31 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 6f 75 6e 74 20 rn.-1;................if.(count.
25c0 3c 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 75 6e 74 20 3d 20 61 72 <.0)..................count.=.ar
25e0 72 61 79 2e 4c 65 6e 67 74 68 20 2d 20 73 74 61 72 74 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 ray.Length.-.startIndex;........
2600 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 73 74 61 72 74 49 6e 64 65 78 3b 20 69 ......for.(var.i.=.startIndex;.i
2620 20 3c 20 73 74 61 72 74 49 6e 64 65 78 20 2b 20 63 6f 75 6e 74 3b 20 2b 2b 69 29 0d 0a 20 20 20 .<.startIndex.+.count;.++i).....
2640 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 52 65 66 65 72 65 6e 63 65 45 71 75 61 6c 73 .............if.(ReferenceEquals
2660 28 61 72 72 61 79 5b 69 5d 2c 20 76 61 6c 75 65 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 (array[i],.value))..............
2680 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 69 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ........return.i;...............
26a0 20 72 65 74 75 72 6e 20 2d 31 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 .return.-1;..........}..........
26c0 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 69 6e 74 20 49 6e 64 65 78 4f 66 56 61 6c 75 65 ..public.static.int.IndexOfValue
26e0 3c 54 56 61 6c 75 65 3e 28 74 68 69 73 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 54 56 <TValue>(this.TValue[].array,.TV
2700 61 6c 75 65 20 76 61 6c 75 65 2c 20 69 6e 74 20 73 74 61 72 74 49 6e 64 65 78 20 3d 20 30 2c 20 alue.value,.int.startIndex.=.0,.
2720 69 6e 74 20 63 6f 75 6e 74 20 3d 20 2d 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 68 65 int.count.=.-1)..............whe
2740 72 65 20 54 56 61 6c 75 65 20 3a 20 73 74 72 75 63 74 2c 20 49 45 71 75 61 74 61 62 6c 65 3c 54 re.TValue.:.struct,.IEquatable<T
2760 56 61 6c 75 65 3e 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 Value>..........{..............i
2780 66 20 28 61 72 72 61 79 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 f.(array.==.null)...............
27a0 20 20 20 72 65 74 75 72 6e 20 2d 31 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 ...return.-1;................if.
27c0 28 63 6f 75 6e 74 20 3c 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 75 (count.<.0)..................cou
27e0 6e 74 20 3d 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 20 2d 20 73 74 61 72 74 49 6e 64 65 78 3b 0d nt.=.array.Length.-.startIndex;.
2800 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 73 74 61 72 74 49 .............for.(var.i.=.startI
2820 6e 64 65 78 3b 20 69 20 3c 20 73 74 61 72 74 49 6e 64 65 78 20 2b 20 63 6f 75 6e 74 3b 20 2b 2b ndex;.i.<.startIndex.+.count;.++
2840 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 76 61 6c 75 65 2e 45 71 i)..................if.(value.Eq
2860 75 61 6c 73 28 61 72 72 61 79 5b 69 5d 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 uals(array[i])).................
2880 20 20 20 20 20 72 65 74 75 72 6e 20 69 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 .....return.i;................re
28a0 74 75 72 6e 20 2d 31 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 turn.-1;..........}............p
28c0 75 62 6c 69 63 20 73 74 61 74 69 63 20 75 6e 73 61 66 65 20 76 6f 69 64 20 52 65 73 69 7a 65 3c ublic.static.unsafe.void.Resize<
28e0 54 56 61 6c 75 65 3e 28 72 65 66 20 4e 61 74 69 76 65 41 72 72 61 79 3c 54 56 61 6c 75 65 3e 20 TValue>(ref.NativeArray<TValue>.
2900 61 72 72 61 79 2c 20 69 6e 74 20 6e 65 77 53 69 7a 65 2c 20 41 6c 6c 6f 63 61 74 6f 72 20 61 6c array,.int.newSize,.Allocator.al
2920 6c 6f 63 61 74 6f 72 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 68 65 72 65 20 54 56 61 6c locator)..............where.TVal
2940 75 65 20 3a 20 73 74 72 75 63 74 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 ue.:.struct..........{..........
2960 20 20 20 20 76 61 72 20 6f 6c 64 53 69 7a 65 20 3d 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 3b 0d ....var.oldSize.=.array.Length;.
2980 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6f 6c 64 53 69 7a 65 20 3d 3d 20 6e 65 77 53 .............if.(oldSize.==.newS
29a0 69 7a 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 0d ize)..................return;...
29c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6e 65 77 53 69 7a 65 20 3d 3d 20 30 29 0d 0a .............if.(newSize.==.0)..
29e0 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 ............{..................i
2a00 66 20 28 61 72 72 61 79 2e 49 73 43 72 65 61 74 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 f.(array.IsCreated).............
2a20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 2e 44 69 73 70 6f 73 65 28 29 3b 0d 0a 20 20 20 20 20 .........array.Dispose();.......
2a40 20 20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 20 3d 20 6e 65 77 20 4e 61 74 69 76 65 41 72 72 ...........array.=.new.NativeArr
2a60 61 79 3c 54 56 61 6c 75 65 3e 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 ay<TValue>();..................r
2a80 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 eturn;..............}...........
2aa0 20 20 20 20 20 76 61 72 20 6e 65 77 41 72 72 61 79 20 3d 20 6e 65 77 20 4e 61 74 69 76 65 41 72 .....var.newArray.=.new.NativeAr
2ac0 72 61 79 3c 54 56 61 6c 75 65 3e 28 6e 65 77 53 69 7a 65 2c 20 61 6c 6c 6f 63 61 74 6f 72 29 3b ray<TValue>(newSize,.allocator);
2ae0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6f 6c 64 53 69 7a 65 20 21 3d 20 30 29 0d ..............if.(oldSize.!=.0).
2b00 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............{..................
2b20 2f 2f 20 43 6f 70 79 20 63 6f 6e 74 65 6e 74 73 20 66 72 6f 6d 20 6f 6c 64 20 61 72 72 61 79 2e //.Copy.contents.from.old.array.
2b40 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 55 6e 73 61 66 65 55 74 69 6c 69 74 79 2e ..................UnsafeUtility.
2b60 4d 65 6d 43 70 79 28 6e 65 77 41 72 72 61 79 2e 47 65 74 55 6e 73 61 66 65 50 74 72 28 29 2c 20 MemCpy(newArray.GetUnsafePtr(),.
2b80 61 72 72 61 79 2e 47 65 74 55 6e 73 61 66 65 52 65 61 64 4f 6e 6c 79 50 74 72 28 29 2c 0d 0a 20 array.GetUnsafeReadOnlyPtr(),...
2ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 55 6e 73 61 66 65 55 74 69 6c 69 74 79 ...................UnsafeUtility
2bc0 2e 53 69 7a 65 4f 66 3c 54 56 61 6c 75 65 3e 28 29 20 2a 20 28 6e 65 77 53 69 7a 65 20 3c 20 6f .SizeOf<TValue>().*.(newSize.<.o
2be0 6c 64 53 69 7a 65 20 3f 20 6e 65 77 53 69 7a 65 20 3a 20 6f 6c 64 53 69 7a 65 29 29 3b 0d 0a 20 ldSize.?.newSize.:.oldSize));...
2c00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 2e 44 69 73 70 6f 73 65 28 29 3b 0d ...............array.Dispose();.
2c20 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 61 .............}..............arra
2c40 79 20 3d 20 6e 65 77 41 72 72 61 79 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 y.=.newArray;..........}........
2c60 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 69 6e 74 20 41 70 70 65 6e 64 3c 54 56 61 ....public.static.int.Append<TVa
2c80 6c 75 65 3e 28 72 65 66 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 54 56 61 6c 75 65 20 lue>(ref.TValue[].array,.TValue.
2ca0 76 61 6c 75 65 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 value)..........{..............i
2cc0 66 20 28 61 72 72 61 79 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b f.(array.==.null)..............{
2ce0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 20 3d 20 6e 65 77 20 54 56 ..................array.=.new.TV
2d00 61 6c 75 65 5b 31 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 5b alue[1];..................array[
2d20 30 5d 20 3d 20 76 61 6c 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 0].=.value;..................ret
2d40 75 72 6e 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 urn.0;..............}...........
2d60 20 20 20 20 20 76 61 72 20 6c 65 6e 67 74 68 20 3d 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 3b 0d .....var.length.=.array.Length;.
2d80 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 52 65 73 69 7a 65 28 72 65 66 20 61 72 .............Array.Resize(ref.ar
2da0 72 61 79 2c 20 6c 65 6e 67 74 68 20 2b 20 31 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 61 ray,.length.+.1);..............a
2dc0 72 72 61 79 5b 6c 65 6e 67 74 68 5d 20 3d 20 76 61 6c 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 rray[length].=.value;...........
2de0 20 20 20 72 65 74 75 72 6e 20 6c 65 6e 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a ...return.length;..........}....
2e00 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 69 6e 74 20 41 70 70 65 6e 64 ........public.static.int.Append
2e20 3c 54 56 61 6c 75 65 3e 28 72 65 66 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 49 45 6e <TValue>(ref.TValue[].array,.IEn
2e40 75 6d 65 72 61 62 6c 65 3c 54 56 61 6c 75 65 3e 20 76 61 6c 75 65 73 29 0d 0a 20 20 20 20 20 20 umerable<TValue>.values)........
2e60 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 61 72 72 61 79 20 3d 3d 20 6e 75 ..{..............if.(array.==.nu
2e80 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ll)..............{..............
2ea0 20 20 20 20 61 72 72 61 79 20 3d 20 76 61 6c 75 65 73 2e 54 6f 41 72 72 61 79 28 29 3b 0d 0a 20 ....array.=.values.ToArray();...
2ec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 30 3b 0d 0a 20 20 20 20 20 20 ...............return.0;........
2ee0 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6f 6c 64 4c 65 ......}................var.oldLe
2f00 6e 67 74 68 20 3d 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 ngth.=.array.Length;............
2f20 20 20 76 61 72 20 76 61 6c 75 65 43 6f 75 6e 74 20 3d 20 76 61 6c 75 65 73 2e 43 6f 75 6e 74 28 ..var.valueCount.=.values.Count(
2f40 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 52 65 73 69 7a 65 28 72 );................Array.Resize(r
2f60 65 66 20 61 72 72 61 79 2c 20 6f 6c 64 4c 65 6e 67 74 68 20 2b 20 76 61 6c 75 65 43 6f 75 6e 74 ef.array,.oldLength.+.valueCount
2f80 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 69 6e 64 65 78 20 3d 20 6f 6c );................var.index.=.ol
2fa0 64 4c 65 6e 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 76 dLength;..............foreach.(v
2fc0 61 72 20 76 61 6c 75 65 20 69 6e 20 76 61 6c 75 65 73 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ar.value.in.values).............
2fe0 20 20 20 20 20 61 72 72 61 79 5b 69 6e 64 65 78 2b 2b 5d 20 3d 20 76 61 6c 75 65 3b 0d 0a 0d 0a .....array[index++].=.value;....
3000 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6f 6c 64 4c 65 6e 67 74 68 3b 0d 0a 20 ............return.oldLength;...
3020 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 41 70 70 65 6e 64 20 74 6f .......}............//.Append.to
3040 20 61 6e 20 61 72 72 61 79 20 74 68 61 74 20 69 73 20 63 6f 6e 73 69 64 65 72 65 64 20 69 6d 6d .an.array.that.is.considered.imm
3060 75 74 61 62 6c 65 2e 20 54 68 69 73 20 61 6c 6c 6f 77 73 20 75 73 69 6e 67 20 27 76 61 6c 75 65 utable..This.allows.using.'value
3080 73 27 20 61 73 20 69 73 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 69 66 20 27 61 72 72 61 79 27 20 s'.as.is..........//.if.'array'.
30a0 69 73 20 6e 75 6c 6c 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 52 65 74 75 72 6e 73 20 74 68 65 is.null...........//.Returns.the
30c0 20 69 6e 64 65 78 20 6f 66 20 74 68 65 20 66 69 72 73 74 20 6e 65 77 6c 79 20 61 64 64 65 64 20 .index.of.the.first.newly.added.
30e0 65 6c 65 6d 65 6e 74 20 69 6e 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67 20 61 72 72 61 79 2e 0d element.in.the.resulting.array..
3100 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 69 6e 74 20 41 70 70 65 6e .........public.static.int.Appen
3120 64 54 6f 49 6d 6d 75 74 61 62 6c 65 3c 54 56 61 6c 75 65 3e 28 72 65 66 20 54 56 61 6c 75 65 5b dToImmutable<TValue>(ref.TValue[
3140 5d 20 61 72 72 61 79 2c 20 54 56 61 6c 75 65 5b 5d 20 76 61 6c 75 65 73 29 0d 0a 20 20 20 20 20 ].array,.TValue[].values).......
3160 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 61 72 72 61 79 20 3d 3d 20 6e ...{..............if.(array.==.n
3180 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ull)..............{.............
31a0 20 20 20 20 20 61 72 72 61 79 20 3d 20 76 61 6c 75 65 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 .....array.=.values;............
31c0 20 20 20 20 20 20 72 65 74 75 72 6e 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a ......return.0;..............}..
31e0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 76 61 6c 75 65 73 20 21 3d 20 6e 75 6c 6c ..............if.(values.!=.null
3200 20 26 26 20 76 61 6c 75 65 73 2e 4c 65 6e 67 74 68 20 3e 20 30 29 0d 0a 20 20 20 20 20 20 20 20 .&&.values.Length.>.0)..........
3220 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6f 6c 64 43 6f ....{..................var.oldCo
3240 75 6e 74 20 3d 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 unt.=.array.Length;.............
3260 20 20 20 20 20 76 61 72 20 76 61 6c 75 65 43 6f 75 6e 74 20 3d 20 76 61 6c 75 65 73 2e 4c 65 6e .....var.valueCount.=.values.Len
3280 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 52 65 73 69 gth;..................Array.Resi
32a0 7a 65 28 72 65 66 20 61 72 72 61 79 2c 20 6f 6c 64 43 6f 75 6e 74 20 2b 20 76 61 6c 75 65 43 6f ze(ref.array,.oldCount.+.valueCo
32c0 75 6e 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 43 6f 70 unt);..................Array.Cop
32e0 79 28 76 61 6c 75 65 73 2c 20 30 2c 20 61 72 72 61 79 2c 20 6f 6c 64 43 6f 75 6e 74 2c 20 76 61 y(values,.0,.array,.oldCount,.va
3300 6c 75 65 43 6f 75 6e 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 lueCount);..................retu
3320 72 6e 20 6f 6c 64 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 rn.oldCount;..............}.....
3340 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 3b 0d ...........return.array.Length;.
3360 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 .........}............public.sta
3380 74 69 63 20 69 6e 74 20 41 70 70 65 6e 64 57 69 74 68 43 61 70 61 63 69 74 79 3c 54 56 61 6c 75 tic.int.AppendWithCapacity<TValu
33a0 65 3e 28 72 65 66 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 72 65 66 20 69 6e 74 20 63 e>(ref.TValue[].array,.ref.int.c
33c0 6f 75 6e 74 2c 20 54 56 61 6c 75 65 20 76 61 6c 75 65 2c 20 69 6e 74 20 63 61 70 61 63 69 74 79 ount,.TValue.value,.int.capacity
33e0 49 6e 63 72 65 6d 65 6e 74 20 3d 20 31 30 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 Increment.=.10)..........{......
3400 20 20 20 20 20 20 20 20 69 66 20 28 61 72 72 61 79 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 ........if.(array.==.null)......
3420 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 ........{..................array
3440 20 3d 20 6e 65 77 20 54 56 61 6c 75 65 5b 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d 65 6e 74 5d .=.new.TValue[capacityIncrement]
3460 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 5b 30 5d 20 3d 20 76 61 ;..................array[0].=.va
3480 6c 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2b 2b 63 6f 75 6e 74 3b 0d 0a lue;..................++count;..
34a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 30 3b 0d 0a 20 20 20 20 20 ................return.0;.......
34c0 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 61 70 61 .......}................var.capa
34e0 63 69 74 79 20 3d 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 city.=.array.Length;............
3500 20 20 69 66 20 28 63 61 70 61 63 69 74 79 20 3d 3d 20 63 6f 75 6e 74 29 0d 0a 20 20 20 20 20 20 ..if.(capacity.==.count)........
3520 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 70 61 63 69 74 ......{..................capacit
3540 79 20 2b 3d 20 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d 65 6e 74 3b 0d 0a 20 20 20 20 20 20 20 y.+=.capacityIncrement;.........
3560 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 52 65 73 69 7a 65 28 72 65 66 20 61 72 72 61 79 2c .........Array.Resize(ref.array,
3580 20 63 61 70 61 63 69 74 79 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 .capacity);..............}......
35a0 20 20 20 20 20 20 20 20 20 20 76 61 72 20 69 6e 64 65 78 20 3d 20 63 6f 75 6e 74 3b 0d 0a 20 20 ..........var.index.=.count;....
35c0 20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 5b 69 6e 64 65 78 5d 20 3d 20 76 61 6c 75 65 3b 0d ..........array[index].=.value;.
35e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 2b 2b 63 6f 75 6e 74 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 .............++count;...........
3600 20 20 20 20 20 72 65 74 75 72 6e 20 69 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d .....return.index;..........}...
3620 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 69 6e 74 20 41 70 70 65 6e .........public.static.int.Appen
3640 64 4c 69 73 74 57 69 74 68 43 61 70 61 63 69 74 79 3c 54 56 61 6c 75 65 2c 20 54 56 61 6c 75 65 dListWithCapacity<TValue,.TValue
3660 73 3e 28 72 65 66 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 72 65 66 20 69 6e 74 20 6c s>(ref.TValue[].array,.ref.int.l
3680 65 6e 67 74 68 2c 20 54 56 61 6c 75 65 73 20 76 61 6c 75 65 73 2c 20 69 6e 74 20 63 61 70 61 63 ength,.TValues.values,.int.capac
36a0 69 74 79 49 6e 63 72 65 6d 65 6e 74 20 3d 20 31 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ityIncrement.=.10)..............
36c0 77 68 65 72 65 20 54 56 61 6c 75 65 73 20 3a 20 49 52 65 61 64 4f 6e 6c 79 4c 69 73 74 3c 54 56 where.TValues.:.IReadOnlyList<TV
36e0 61 6c 75 65 3e 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 alue>..........{..............va
3700 72 20 6e 75 6d 54 6f 41 64 64 20 3d 20 76 61 6c 75 65 73 2e 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 r.numToAdd.=.values.Count;......
3720 20 20 20 20 20 20 20 20 69 66 20 28 61 72 72 61 79 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 ........if.(array.==.null)......
3740 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 73 ........{..................var.s
3760 69 7a 65 20 3d 20 4d 61 74 68 2e 4d 61 78 28 6e 75 6d 54 6f 41 64 64 2c 20 63 61 70 61 63 69 74 ize.=.Math.Max(numToAdd,.capacit
3780 79 49 6e 63 72 65 6d 65 6e 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72 yIncrement);..................ar
37a0 72 61 79 20 3d 20 6e 65 77 20 54 56 61 6c 75 65 5b 73 69 7a 65 5d 3b 0d 0a 20 20 20 20 20 20 20 ray.=.new.TValue[size];.........
37c0 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 6e 75 6d .........for.(var.i.=.0;.i.<.num
37e0 54 6f 41 64 64 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ToAdd;.++i).....................
3800 20 61 72 72 61 79 5b 69 5d 20 3d 20 76 61 6c 75 65 73 5b 69 5d 3b 0d 0a 20 20 20 20 20 20 20 20 .array[i].=.values[i];..........
3820 20 20 20 20 20 20 20 20 6c 65 6e 67 74 68 20 2b 3d 20 6e 75 6d 54 6f 41 64 64 3b 0d 0a 20 20 20 ........length.+=.numToAdd;.....
3840 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 .............return.0;..........
3860 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 61 70 61 63 69 74 ....}................var.capacit
3880 79 20 3d 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 y.=.array.Length;..............i
38a0 66 20 28 63 61 70 61 63 69 74 79 20 3c 20 6c 65 6e 67 74 68 20 2b 20 6e 75 6d 54 6f 41 64 64 29 f.(capacity.<.length.+.numToAdd)
38c0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............{.................
38e0 20 63 61 70 61 63 69 74 79 20 2b 3d 20 4d 61 74 68 2e 4d 61 78 28 6c 65 6e 67 74 68 20 2b 20 6e .capacity.+=.Math.Max(length.+.n
3900 75 6d 54 6f 41 64 64 2c 20 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d 65 6e 74 29 3b 0d 0a 20 20 umToAdd,.capacityIncrement);....
3920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 52 65 73 69 7a 65 28 72 65 66 20 61 ..............Array.Resize(ref.a
3940 72 72 61 79 2c 20 63 61 70 61 63 69 74 79 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d rray,.capacity);..............}.
3960 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 69 6e 64 65 78 20 3d 20 6c 65 6e 67 74 ...............var.index.=.lengt
3980 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 h;..............for.(var.i.=.0;.
39a0 69 20 3c 20 6e 75 6d 54 6f 41 64 64 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 i.<.numToAdd;.++i)..............
39c0 20 20 20 20 61 72 72 61 79 5b 69 6e 64 65 78 20 2b 20 69 5d 20 3d 20 76 61 6c 75 65 73 5b 69 5d ....array[index.+.i].=.values[i]
39e0 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6c 65 6e 67 74 68 20 2b 3d 20 6e 75 6d 54 6f 41 64 ;..............length.+=.numToAd
3a00 64 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 69 6e 64 65 78 3b 0d d;................return.index;.
3a20 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 .........}............public.sta
3a40 74 69 63 20 69 6e 74 20 41 70 70 65 6e 64 57 69 74 68 43 61 70 61 63 69 74 79 3c 54 56 61 6c 75 tic.int.AppendWithCapacity<TValu
3a60 65 3e 28 72 65 66 20 4e 61 74 69 76 65 41 72 72 61 79 3c 54 56 61 6c 75 65 3e 20 61 72 72 61 79 e>(ref.NativeArray<TValue>.array
3a80 2c 20 72 65 66 20 69 6e 74 20 63 6f 75 6e 74 2c 20 54 56 61 6c 75 65 20 76 61 6c 75 65 2c 0d 0a ,.ref.int.count,.TValue.value,..
3aa0 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 20 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d 65 6e ............int.capacityIncremen
3ac0 74 20 3d 20 31 30 2c 20 41 6c 6c 6f 63 61 74 6f 72 20 61 6c 6c 6f 63 61 74 6f 72 20 3d 20 41 6c t.=.10,.Allocator.allocator.=.Al
3ae0 6c 6f 63 61 74 6f 72 2e 50 65 72 73 69 73 74 65 6e 74 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 locator.Persistent).............
3b00 20 77 68 65 72 65 20 54 56 61 6c 75 65 20 3a 20 73 74 72 75 63 74 0d 0a 20 20 20 20 20 20 20 20 .where.TValue.:.struct..........
3b20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 61 70 61 63 69 74 79 20 3d 20 61 72 {..............var.capacity.=.ar
3b40 72 61 79 2e 4c 65 6e 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 61 70 ray.Length;..............if.(cap
3b60 61 63 69 74 79 20 3d 3d 20 63 6f 75 6e 74 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 acity.==.count).................
3b80 20 47 72 6f 77 42 79 28 72 65 66 20 61 72 72 61 79 2c 20 63 61 70 61 63 69 74 79 49 6e 63 72 65 .GrowBy(ref.array,.capacityIncre
3ba0 6d 65 6e 74 20 3e 20 31 20 3f 20 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d 65 6e 74 20 3a 20 31 ment.>.1.?.capacityIncrement.:.1
3bc0 2c 20 61 6c 6c 6f 63 61 74 6f 72 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 ,.allocator);................var
3be0 20 69 6e 64 65 78 20 3d 20 63 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 .index.=.count;..............arr
3c00 61 79 5b 69 6e 64 65 78 5d 20 3d 20 76 61 6c 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ay[index].=.value;..............
3c20 2b 2b 63 6f 75 6e 74 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 69 ++count;................return.i
3c40 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c ndex;..........}............publ
3c60 69 63 20 73 74 61 74 69 63 20 76 6f 69 64 20 49 6e 73 65 72 74 41 74 3c 54 56 61 6c 75 65 3e 28 ic.static.void.InsertAt<TValue>(
3c80 72 65 66 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 69 6e 74 20 69 6e 64 65 78 2c 20 54 ref.TValue[].array,.int.index,.T
3ca0 56 61 6c 75 65 20 76 61 6c 75 65 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 Value.value)..........{.........
3cc0 20 20 20 20 20 69 66 20 28 61 72 72 61 79 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 .....if.(array.==.null).........
3ce0 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 2f 2f 52 45 56 49 .....{..................////REVI
3d00 45 57 3a 20 61 6c 6c 6f 77 20 67 72 6f 77 69 6e 67 20 61 72 72 61 79 20 74 6f 20 73 70 65 63 69 EW:.allow.growing.array.to.speci
3d20 66 69 63 20 73 69 7a 65 20 62 79 20 69 6e 73 65 72 74 69 6e 67 20 61 74 20 61 72 62 69 74 72 61 fic.size.by.inserting.at.arbitra
3d40 72 79 20 69 6e 64 65 78 3f 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 ry.index?..................if.(i
3d60 6e 64 65 78 20 21 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ndex.!=.0)......................
3d80 74 68 72 6f 77 20 6e 65 77 20 41 72 67 75 6d 65 6e 74 4f 75 74 4f 66 52 61 6e 67 65 45 78 63 65 throw.new.ArgumentOutOfRangeExce
3da0 70 74 69 6f 6e 28 6e 61 6d 65 6f 66 28 69 6e 64 65 78 29 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 ption(nameof(index));...........
3dc0 20 20 20 20 20 20 20 20 20 61 72 72 61 79 20 3d 20 6e 65 77 20 54 56 61 6c 75 65 5b 31 5d 3b 0d .........array.=.new.TValue[1];.
3de0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 5b 30 5d 20 3d 20 76 61 6c 75 .................array[0].=.valu
3e00 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 e;..................return;.....
3e20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 52 65 61 .........}................//.Rea
3e40 6c 6c 6f 63 61 74 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6f 6c 64 4c 65 6e llocate...............var.oldLen
3e60 67 74 68 20 3d 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 gth.=.array.Length;.............
3e80 20 41 72 72 61 79 2e 52 65 73 69 7a 65 28 72 65 66 20 61 72 72 61 79 2c 20 6f 6c 64 4c 65 6e 67 .Array.Resize(ref.array,.oldLeng
3ea0 74 68 20 2b 20 31 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4d 61 6b 65 20 th.+.1);................//.Make.
3ec0 72 6f 6f 6d 20 66 6f 72 20 65 6c 65 6d 65 6e 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 room.for.element...............i
3ee0 66 20 28 69 6e 64 65 78 20 21 3d 20 6f 6c 64 4c 65 6e 67 74 68 29 0d 0a 20 20 20 20 20 20 20 20 f.(index.!=.oldLength)..........
3f00 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 43 6f 70 79 28 61 72 72 61 79 2c 20 69 6e 64 65 78 2c ........Array.Copy(array,.index,
3f20 20 61 72 72 61 79 2c 20 69 6e 64 65 78 20 2b 20 31 2c 20 6f 6c 64 4c 65 6e 67 74 68 20 2d 20 69 .array,.index.+.1,.oldLength.-.i
3f40 6e 64 65 78 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 5b 69 6e 64 65 ndex);................array[inde
3f60 78 5d 20 3d 20 76 61 6c 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 x].=.value;..........}..........
3f80 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 76 6f 69 64 20 49 6e 73 65 72 74 41 74 57 69 74 ..public.static.void.InsertAtWit
3fa0 68 43 61 70 61 63 69 74 79 3c 54 56 61 6c 75 65 3e 28 72 65 66 20 54 56 61 6c 75 65 5b 5d 20 61 hCapacity<TValue>(ref.TValue[].a
3fc0 72 72 61 79 2c 20 72 65 66 20 69 6e 74 20 63 6f 75 6e 74 2c 20 69 6e 74 20 69 6e 64 65 78 2c 20 rray,.ref.int.count,.int.index,.
3fe0 54 56 61 6c 75 65 20 76 61 6c 75 65 2c 20 69 6e 74 20 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d TValue.value,.int.capacityIncrem
4000 65 6e 74 20 3d 20 31 30 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 ent.=.10)..........{............
4020 20 20 45 6e 73 75 72 65 43 61 70 61 63 69 74 79 28 72 65 66 20 61 72 72 61 79 2c 20 63 6f 75 6e ..EnsureCapacity(ref.array,.coun
4040 74 2c 20 63 6f 75 6e 74 20 2b 20 31 2c 20 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d 65 6e 74 29 t,.count.+.1,.capacityIncrement)
4060 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 6e 64 65 78 20 21 3d 20 63 6f ;................if.(index.!=.co
4080 75 6e 74 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 43 6f 70 79 unt)..................Array.Copy
40a0 28 61 72 72 61 79 2c 20 69 6e 64 65 78 2c 20 61 72 72 61 79 2c 20 69 6e 64 65 78 20 2b 20 31 2c (array,.index,.array,.index.+.1,
40c0 20 63 6f 75 6e 74 20 2d 20 69 6e 64 65 78 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 .count.-.index);................
40e0 61 72 72 61 79 5b 69 6e 64 65 78 5d 20 3d 20 76 61 6c 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 array[index].=.value;...........
4100 20 20 20 2b 2b 63 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 ...++count;..........}..........
4120 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 76 6f 69 64 20 50 75 74 41 74 49 66 4e 6f 74 53 ..public.static.void.PutAtIfNotS
4140 65 74 3c 54 56 61 6c 75 65 3e 28 72 65 66 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 69 et<TValue>(ref.TValue[].array,.i
4160 6e 74 20 69 6e 64 65 78 2c 20 46 75 6e 63 3c 54 56 61 6c 75 65 3e 20 76 61 6c 75 65 46 6e 29 0d nt.index,.Func<TValue>.valueFn).
4180 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 61 72 72 61 .........{..............if.(arra
41a0 79 2e 4c 65 6e 67 74 68 53 61 66 65 28 29 20 3c 20 69 6e 64 65 78 20 2b 20 31 29 0d 0a 20 20 20 y.LengthSafe().<.index.+.1).....
41c0 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 52 65 73 69 7a 65 28 72 65 66 20 61 72 .............Array.Resize(ref.ar
41e0 72 61 79 2c 20 69 6e 64 65 78 20 2b 20 31 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ray,.index.+.1);................
4200 69 66 20 28 45 71 75 61 6c 69 74 79 43 6f 6d 70 61 72 65 72 3c 54 56 61 6c 75 65 3e 2e 44 65 66 if.(EqualityComparer<TValue>.Def
4220 61 75 6c 74 2e 45 71 75 61 6c 73 28 61 72 72 61 79 5b 69 6e 64 65 78 5d 2c 20 64 65 66 61 75 6c ault.Equals(array[index],.defaul
4240 74 28 54 56 61 6c 75 65 29 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 t(TValue)))..................arr
4260 61 79 5b 69 6e 64 65 78 5d 20 3d 20 76 61 6c 75 65 46 6e 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 ay[index].=.valueFn();..........
4280 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 73 20 27 63 6f 75 6e 74 27 20 65 6e 74 }............//.Adds.'count'.ent
42a0 72 69 65 73 20 74 6f 20 74 68 65 20 61 72 72 61 79 2e 20 52 65 74 75 72 6e 73 20 66 69 72 73 74 ries.to.the.array..Returns.first
42c0 20 69 6e 64 65 78 20 6f 66 20 6e 65 77 6c 79 20 61 64 64 65 64 20 65 6e 74 72 69 65 73 2e 0d 0a .index.of.newly.added.entries...
42e0 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 69 6e 74 20 47 72 6f 77 42 79 ........public.static.int.GrowBy
4300 3c 54 56 61 6c 75 65 3e 28 72 65 66 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 69 6e 74 <TValue>(ref.TValue[].array,.int
4320 20 63 6f 75 6e 74 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 .count)..........{..............
4340 69 66 20 28 61 72 72 61 79 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 if.(array.==.null)..............
4360 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 20 3d 20 6e 65 77 20 54 {..................array.=.new.T
4380 56 61 6c 75 65 5b 63 6f 75 6e 74 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 Value[count];..................r
43a0 65 74 75 72 6e 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 eturn.0;..............}.........
43c0 20 20 20 20 20 20 20 76 61 72 20 6f 6c 64 4c 65 6e 67 74 68 20 3d 20 61 72 72 61 79 2e 4c 65 6e .......var.oldLength.=.array.Len
43e0 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 52 65 73 69 7a 65 28 72 gth;..............Array.Resize(r
4400 65 66 20 61 72 72 61 79 2c 20 6f 6c 64 4c 65 6e 67 74 68 20 2b 20 63 6f 75 6e 74 29 3b 0d 0a 20 ef.array,.oldLength.+.count);...
4420 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6f 6c 64 4c 65 6e 67 74 68 3b 0d 0a 20 20 ...........return.oldLength;....
4440 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 ......}............public.static
4460 20 75 6e 73 61 66 65 20 69 6e 74 20 47 72 6f 77 42 79 3c 54 56 61 6c 75 65 3e 28 72 65 66 20 4e .unsafe.int.GrowBy<TValue>(ref.N
4480 61 74 69 76 65 41 72 72 61 79 3c 54 56 61 6c 75 65 3e 20 61 72 72 61 79 2c 20 69 6e 74 20 63 6f ativeArray<TValue>.array,.int.co
44a0 75 6e 74 2c 20 41 6c 6c 6f 63 61 74 6f 72 20 61 6c 6c 6f 63 61 74 6f 72 20 3d 20 41 6c 6c 6f 63 unt,.Allocator.allocator.=.Alloc
44c0 61 74 6f 72 2e 50 65 72 73 69 73 74 65 6e 74 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 68 ator.Persistent)..............wh
44e0 65 72 65 20 54 56 61 6c 75 65 20 3a 20 73 74 72 75 63 74 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a ere.TValue.:.struct..........{..
4500 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6c 65 6e 67 74 68 20 3d 20 61 72 72 61 79 2e 4c ............var.length.=.array.L
4520 65 6e 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6c 65 6e 67 74 68 20 3d ength;..............if.(length.=
4540 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 =.0)..............{.............
4560 20 20 20 20 20 61 72 72 61 79 20 3d 20 6e 65 77 20 4e 61 74 69 76 65 41 72 72 61 79 3c 54 56 61 .....array.=.new.NativeArray<TVa
4580 6c 75 65 3e 28 63 6f 75 6e 74 2c 20 61 6c 6c 6f 63 61 74 6f 72 29 3b 0d 0a 20 20 20 20 20 20 20 lue>(count,.allocator);.........
45a0 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 .........return.0;..............
45c0 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6e 65 77 41 72 72 61 79 20 3d 20 }................var.newArray.=.
45e0 6e 65 77 20 4e 61 74 69 76 65 41 72 72 61 79 3c 54 56 61 6c 75 65 3e 28 6c 65 6e 67 74 68 20 2b new.NativeArray<TValue>(length.+
4600 20 63 6f 75 6e 74 2c 20 61 6c 6c 6f 63 61 74 6f 72 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .count,.allocator);.............
4620 20 2f 2f 20 43 6f 70 79 46 72 6f 6d 28 29 20 65 78 70 65 63 74 73 20 6c 65 6e 67 74 68 20 74 6f .//.CopyFrom().expects.length.to
4640 20 6d 61 74 63 68 2e 20 43 6f 70 79 20 6d 61 6e 75 61 6c 6c 79 2e 0d 0a 20 20 20 20 20 20 20 20 .match..Copy.manually...........
4660 20 20 20 20 55 6e 73 61 66 65 55 74 69 6c 69 74 79 2e 4d 65 6d 43 70 79 28 6e 65 77 41 72 72 61 ....UnsafeUtility.MemCpy(newArra
4680 79 2e 47 65 74 55 6e 73 61 66 65 50 74 72 28 29 2c 20 61 72 72 61 79 2e 47 65 74 55 6e 73 61 66 y.GetUnsafePtr(),.array.GetUnsaf
46a0 65 52 65 61 64 4f 6e 6c 79 50 74 72 28 29 2c 20 28 6c 6f 6e 67 29 6c 65 6e 67 74 68 20 2a 20 55 eReadOnlyPtr(),.(long)length.*.U
46c0 6e 73 61 66 65 55 74 69 6c 69 74 79 2e 53 69 7a 65 4f 66 3c 54 56 61 6c 75 65 3e 28 29 29 3b 0d nsafeUtility.SizeOf<TValue>());.
46e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 2e 44 69 73 70 6f 73 65 28 29 3b 0d 0a 20 .............array.Dispose();...
4700 20 20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 20 3d 20 6e 65 77 41 72 72 61 79 3b 0d 0a 0d 0a ...........array.=.newArray;....
4720 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6c 65 6e 67 74 68 3b 0d 0a 20 20 20 20 ............return.length;......
4740 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 69 ....}............public.static.i
4760 6e 74 20 47 72 6f 77 57 69 74 68 43 61 70 61 63 69 74 79 3c 54 56 61 6c 75 65 3e 28 72 65 66 20 nt.GrowWithCapacity<TValue>(ref.
4780 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 72 65 66 20 69 6e 74 20 63 6f 75 6e 74 2c 20 69 TValue[].array,.ref.int.count,.i
47a0 6e 74 20 67 72 6f 77 42 79 2c 20 69 6e 74 20 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d 65 6e 74 nt.growBy,.int.capacityIncrement
47c0 20 3d 20 31 30 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 .=.10)..........{..............v
47e0 61 72 20 6c 65 6e 67 74 68 20 3d 20 61 72 72 61 79 20 21 3d 20 6e 75 6c 6c 20 3f 20 61 72 72 61 ar.length.=.array.!=.null.?.arra
4800 79 2e 4c 65 6e 67 74 68 20 3a 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6c y.Length.:.0;..............if.(l
4820 65 6e 67 74 68 20 3c 20 63 6f 75 6e 74 20 2b 20 67 72 6f 77 42 79 29 0d 0a 20 20 20 20 20 20 20 ength.<.count.+.growBy).........
4840 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 61 70 61 .....{..................if.(capa
4860 63 69 74 79 49 6e 63 72 65 6d 65 6e 74 20 3c 20 67 72 6f 77 42 79 29 0d 0a 20 20 20 20 20 20 20 cityIncrement.<.growBy).........
4880 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d 65 6e 74 20 3d .............capacityIncrement.=
48a0 20 67 72 6f 77 42 79 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 72 6f 77 42 79 .growBy;..................GrowBy
48c0 28 72 65 66 20 61 72 72 61 79 2c 20 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d 65 6e 74 29 3b 0d (ref.array,.capacityIncrement);.
48e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 .............}................va
4900 72 20 6f 66 66 73 65 74 20 3d 20 63 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 r.offset.=.count;..............c
4920 6f 75 6e 74 20 2b 3d 20 67 72 6f 77 42 79 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 ount.+=.growBy;..............ret
4940 75 72 6e 20 6f 66 66 73 65 74 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 urn.offset;..........}..........
4960 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 69 6e 74 20 47 72 6f 77 57 69 74 68 43 61 70 61 ..public.static.int.GrowWithCapa
4980 63 69 74 79 3c 54 56 61 6c 75 65 3e 28 72 65 66 20 4e 61 74 69 76 65 41 72 72 61 79 3c 54 56 61 city<TValue>(ref.NativeArray<TVa
49a0 6c 75 65 3e 20 61 72 72 61 79 2c 20 72 65 66 20 69 6e 74 20 63 6f 75 6e 74 2c 20 69 6e 74 20 67 lue>.array,.ref.int.count,.int.g
49c0 72 6f 77 42 79 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 20 63 61 70 61 63 69 74 79 rowBy,..............int.capacity
49e0 49 6e 63 72 65 6d 65 6e 74 20 3d 20 31 30 2c 20 41 6c 6c 6f 63 61 74 6f 72 20 61 6c 6c 6f 63 61 Increment.=.10,.Allocator.alloca
4a00 74 6f 72 20 3d 20 41 6c 6c 6f 63 61 74 6f 72 2e 50 65 72 73 69 73 74 65 6e 74 29 0d 0a 20 20 20 tor.=.Allocator.Persistent).....
4a20 20 20 20 20 20 20 20 20 20 77 68 65 72 65 20 54 56 61 6c 75 65 20 3a 20 73 74 72 75 63 74 0d 0a .........where.TValue.:.struct..
4a40 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6c 65 6e 67 74 ........{..............var.lengt
4a60 68 20 3d 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 h.=.array.Length;..............i
4a80 66 20 28 6c 65 6e 67 74 68 20 3c 20 63 6f 75 6e 74 20 2b 20 67 72 6f 77 42 79 29 0d 0a 20 20 20 f.(length.<.count.+.growBy).....
4aa0 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 .........{..................if.(
4ac0 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d 65 6e 74 20 3c 20 67 72 6f 77 42 79 29 0d 0a 20 20 20 capacityIncrement.<.growBy).....
4ae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d 65 .................capacityIncreme
4b00 6e 74 20 3d 20 67 72 6f 77 42 79 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 72 nt.=.growBy;..................Gr
4b20 6f 77 42 79 28 72 65 66 20 61 72 72 61 79 2c 20 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d 65 6e owBy(ref.array,.capacityIncremen
4b40 74 2c 20 61 6c 6c 6f 63 61 74 6f 72 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d t,.allocator);..............}...
4b60 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6f 66 66 73 65 74 20 3d 20 63 6f 75 6e 74 3b .............var.offset.=.count;
4b80 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 75 6e 74 20 2b 3d 20 67 72 6f 77 42 79 3b 0d 0a ..............count.+=.growBy;..
4ba0 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6f 66 66 73 65 74 3b 0d 0a 20 20 20 20 ............return.offset;......
4bc0 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 54 ....}............public.static.T
4be0 56 61 6c 75 65 5b 5d 20 4a 6f 69 6e 3c 54 56 61 6c 75 65 3e 28 54 56 61 6c 75 65 20 76 61 6c 75 Value[].Join<TValue>(TValue.valu
4c00 65 2c 20 70 61 72 61 6d 73 20 54 56 61 6c 75 65 5b 5d 20 76 61 6c 75 65 73 29 0d 0a 20 20 20 20 e,.params.TValue[].values)......
4c20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 44 65 74 65 72 6d 69 6e 65 20 ....{..............//.Determine.
4c40 6c 65 6e 67 74 68 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6c 65 6e 67 74 68 20 length...............var.length.
4c60 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 76 61 6c 75 65 20 21 3d 20 6e =.0;..............if.(value.!=.n
4c80 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2b 2b 6c 65 6e 67 74 68 3b 0d ull)..................++length;.
4ca0 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 76 61 6c 75 65 73 20 21 3d 20 6e 75 6c 6c 29 .............if.(values.!=.null)
4cc0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 65 6e 67 74 68 20 2b 3d 20 76 61 6c 75 ..................length.+=.valu
4ce0 65 73 2e 4c 65 6e 67 74 68 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6c 65 es.Length;................if.(le
4d00 6e 67 74 68 20 3d 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 ngth.==.0)..................retu
4d20 72 6e 20 6e 75 6c 6c 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 61 72 72 61 rn.null;................var.arra
4d40 79 20 3d 20 6e 65 77 20 54 56 61 6c 75 65 5b 6c 65 6e 67 74 68 5d 3b 0d 0a 0d 0a 20 20 20 20 20 y.=.new.TValue[length];.........
4d60 20 20 20 20 20 20 20 2f 2f 20 50 6f 70 75 6c 61 74 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .......//.Populate..............
4d80 20 76 61 72 20 69 6e 64 65 78 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 .var.index.=.0;..............if.
4da0 28 76 61 6c 75 65 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (value.!=.null).................
4dc0 20 61 72 72 61 79 5b 69 6e 64 65 78 2b 2b 5d 20 3d 20 76 61 6c 75 65 3b 0d 0a 0d 0a 20 20 20 20 .array[index++].=.value;........
4de0 20 20 20 20 20 20 20 20 69 66 20 28 76 61 6c 75 65 73 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 ........if.(values.!=.null).....
4e00 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 43 6f 70 79 28 76 61 6c 75 65 73 2c 20 .............Array.Copy(values,.
4e20 30 2c 20 61 72 72 61 79 2c 20 69 6e 64 65 78 2c 20 76 61 6c 75 65 73 2e 4c 65 6e 67 74 68 29 3b 0,.array,.index,.values.Length);
4e40 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 61 72 72 61 79 3b 0d 0a 20 ................return.array;...
4e60 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 .......}............public.stati
4e80 63 20 54 56 61 6c 75 65 5b 5d 20 4d 65 72 67 65 3c 54 56 61 6c 75 65 3e 28 54 56 61 6c 75 65 5b c.TValue[].Merge<TValue>(TValue[
4ea0 5d 20 66 69 72 73 74 2c 20 54 56 61 6c 75 65 5b 5d 20 73 65 63 6f 6e 64 29 0d 0a 20 20 20 20 20 ].first,.TValue[].second).......
4ec0 20 20 20 20 20 20 20 77 68 65 72 65 20 54 56 61 6c 75 65 20 3a 20 49 45 71 75 61 74 61 62 6c 65 .......where.TValue.:.IEquatable
4ee0 3c 54 56 61 6c 75 65 3e 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 <TValue>..........{.............
4f00 20 69 66 20 28 66 69 72 73 74 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .if.(first.==.null).............
4f20 20 20 20 20 20 72 65 74 75 72 6e 20 73 65 63 6f 6e 64 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .....return.second;.............
4f40 20 69 66 20 28 73 65 63 6f 6e 64 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 .if.(second.==.null)............
4f60 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 69 72 73 74 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 ......return.first;.............
4f80 20 20 20 76 61 72 20 6d 65 72 67 65 64 20 3d 20 6e 65 77 20 4c 69 73 74 3c 54 56 61 6c 75 65 3e ...var.merged.=.new.List<TValue>
4fa0 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 65 72 67 65 64 2e 41 64 64 52 61 6e 67 65 ();..............merged.AddRange
4fc0 28 66 69 72 73 74 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 (first);................for.(var
4fe0 20 69 20 3d 20 30 3b 20 69 20 3c 20 73 65 63 6f 6e 64 2e 4c 65 6e 67 74 68 3b 20 2b 2b 69 29 0d .i.=.0;.i.<.second.Length;.++i).
5000 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............{..................
5020 76 61 72 20 73 65 63 6f 6e 64 56 61 6c 75 65 20 3d 20 73 65 63 6f 6e 64 5b 69 5d 3b 0d 0a 20 20 var.secondValue.=.second[i];....
5040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 6d 65 72 67 65 64 2e 45 78 69 73 74 73 ..............if.(!merged.Exists
5060 28 78 20 3d 3e 20 78 2e 45 71 75 61 6c 73 28 73 65 63 6f 6e 64 56 61 6c 75 65 29 29 29 0d 0a 20 (x.=>.x.Equals(secondValue)))...
5080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...............{................
50a0 20 20 20 20 20 20 6d 65 72 67 65 64 2e 41 64 64 28 73 65 63 6f 6e 64 56 61 6c 75 65 29 3b 0d 0a ......merged.Add(secondValue);..
50c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d ................}..............}
50e0 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 65 72 67 65 64 2e 54 6f ................return.merged.To
5100 41 72 72 61 79 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 Array();..........}............p
5120 75 62 6c 69 63 20 73 74 61 74 69 63 20 54 56 61 6c 75 65 5b 5d 20 4d 65 72 67 65 3c 54 56 61 6c ublic.static.TValue[].Merge<TVal
5140 75 65 3e 28 54 56 61 6c 75 65 5b 5d 20 66 69 72 73 74 2c 20 54 56 61 6c 75 65 5b 5d 20 73 65 63 ue>(TValue[].first,.TValue[].sec
5160 6f 6e 64 2c 20 49 45 71 75 61 6c 69 74 79 43 6f 6d 70 61 72 65 72 3c 54 56 61 6c 75 65 3e 20 63 ond,.IEqualityComparer<TValue>.c
5180 6f 6d 70 61 72 65 72 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 omparer)..........{.............
51a0 20 69 66 20 28 66 69 72 73 74 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .if.(first.==.null).............
51c0 20 20 20 20 20 72 65 74 75 72 6e 20 73 65 63 6f 6e 64 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .....return.second;.............
51e0 20 69 66 20 28 73 65 63 6f 6e 64 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 .if.(second.==.null)............
5200 20 20 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 ......return.null;..............
5220 20 20 76 61 72 20 6d 65 72 67 65 64 20 3d 20 6e 65 77 20 4c 69 73 74 3c 54 56 61 6c 75 65 3e 28 ..var.merged.=.new.List<TValue>(
5240 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 65 72 67 65 64 2e 41 64 64 52 61 6e 67 65 28 );..............merged.AddRange(
5260 66 69 72 73 74 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 first);................for.(var.
5280 69 20 3d 20 30 3b 20 69 20 3c 20 73 65 63 6f 6e 64 2e 4c 65 6e 67 74 68 3b 20 2b 2b 69 29 0d 0a i.=.0;.i.<.second.Length;.++i)..
52a0 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 ............{..................v
52c0 61 72 20 73 65 63 6f 6e 64 56 61 6c 75 65 20 3d 20 73 65 63 6f 6e 64 5b 69 5d 3b 0d 0a 20 20 20 ar.secondValue.=.second[i];.....
52e0 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 6d 65 72 67 65 64 2e 45 78 69 73 74 73 28 .............if.(!merged.Exists(
5300 78 20 3d 3e 20 63 6f 6d 70 61 72 65 72 2e 45 71 75 61 6c 73 28 73 65 63 6f 6e 64 56 61 6c 75 65 x.=>.comparer.Equals(secondValue
5320 29 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 )))..................{..........
5340 20 20 20 20 20 20 20 20 20 20 20 20 6d 65 72 67 65 64 2e 41 64 64 28 73 65 63 6f 6e 64 56 61 6c ............merged.Add(secondVal
5360 75 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 ue);..................}.........
5380 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 65 72 .....}................return.mer
53a0 67 65 64 2e 54 6f 41 72 72 61 79 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 ged.ToArray();..........}.......
53c0 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 76 6f 69 64 20 45 72 61 73 65 41 74 3c .....public.static.void.EraseAt<
53e0 54 56 61 6c 75 65 3e 28 72 65 66 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 69 6e 74 20 TValue>(ref.TValue[].array,.int.
5400 69 6e 64 65 78 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 index)..........{..............D
5420 65 62 75 67 2e 41 73 73 65 72 74 28 61 72 72 61 79 20 21 3d 20 6e 75 6c 6c 29 3b 0d 0a 20 20 20 ebug.Assert(array.!=.null);.....
5440 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 72 74 28 69 6e 64 65 78 20 3e 3d 20 30 .........Debug.Assert(index.>=.0
5460 20 26 26 20 69 6e 64 65 78 20 3c 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 29 3b 0d 0a 0d 0a 20 20 .&&.index.<.array.Length);......
5480 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6c 65 6e 67 74 68 20 3d 20 61 72 72 61 79 2e 4c 65 6e ..........var.length.=.array.Len
54a0 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 6e 64 65 78 20 3d 3d 20 30 gth;..............if.(index.==.0
54c0 20 26 26 20 6c 65 6e 67 74 68 20 3d 3d 20 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d .&&.length.==.1)..............{.
54e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 20 3d 20 6e 75 6c 6c 3b 0d 0a .................array.=.null;..
5500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 ................return;.........
5520 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 6e 64 65 78 20 .....}................if.(index.
5540 3c 20 6c 65 6e 67 74 68 20 2d 20 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 <.length.-.1)..................A
5560 72 72 61 79 2e 43 6f 70 79 28 61 72 72 61 79 2c 20 69 6e 64 65 78 20 2b 20 31 2c 20 61 72 72 61 rray.Copy(array,.index.+.1,.arra
5580 79 2c 20 69 6e 64 65 78 2c 20 6c 65 6e 67 74 68 20 2d 20 69 6e 64 65 78 20 2d 20 31 29 3b 0d 0a y,.index,.length.-.index.-.1);..
55a0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 52 65 73 69 7a 65 28 72 65 66 20 61 ..............Array.Resize(ref.a
55c0 72 72 61 79 2c 20 6c 65 6e 67 74 68 20 2d 20 31 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d rray,.length.-.1);..........}...
55e0 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 76 6f 69 64 20 45 72 61 73 .........public.static.void.Eras
5600 65 41 74 57 69 74 68 43 61 70 61 63 69 74 79 3c 54 56 61 6c 75 65 3e 28 54 56 61 6c 75 65 5b 5d eAtWithCapacity<TValue>(TValue[]
5620 20 61 72 72 61 79 2c 20 72 65 66 20 69 6e 74 20 63 6f 75 6e 74 2c 20 69 6e 74 20 69 6e 64 65 78 .array,.ref.int.count,.int.index
5640 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e )..........{..............Debug.
5660 41 73 73 65 72 74 28 61 72 72 61 79 20 21 3d 20 6e 75 6c 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 Assert(array.!=.null);..........
5680 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 72 74 28 63 6f 75 6e 74 20 3c 3d 20 61 72 72 61 79 2e ....Debug.Assert(count.<=.array.
56a0 4c 65 6e 67 74 68 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 Length);..............Debug.Asse
56c0 72 74 28 69 6e 64 65 78 20 3e 3d 20 30 20 26 26 20 69 6e 64 65 78 20 3c 20 63 6f 75 6e 74 29 3b rt(index.>=.0.&&.index.<.count);
56e0 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 66 20 77 65 27 72 65 20 65 72 61 73 ................//.If.we're.eras
5700 69 6e 67 20 66 72 6f 6d 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 72 20 73 6f 6d 65 77 68 ing.from.the.beginning.or.somewh
5720 65 72 65 20 69 6e 20 74 68 65 20 6d 69 64 64 6c 65 2c 20 6d 6f 76 65 0d 0a 20 20 20 20 20 20 20 ere.in.the.middle,.move.........
5740 20 20 20 20 20 2f 2f 20 74 68 65 20 61 72 72 61 79 20 63 6f 6e 74 65 6e 74 73 20 64 6f 77 6e 20 .....//.the.array.contents.down.
5760 66 72 6f 6d 20 61 66 74 65 72 20 74 68 65 20 69 6e 64 65 78 2e 0d 0a 20 20 20 20 20 20 20 20 20 from.after.the.index............
5780 20 20 20 69 66 20 28 69 6e 64 65 78 20 3c 20 63 6f 75 6e 74 20 2d 20 31 29 0d 0a 20 20 20 20 20 ...if.(index.<.count.-.1).......
57a0 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e .......{..................Array.
57c0 43 6f 70 79 28 61 72 72 61 79 2c 20 69 6e 64 65 78 20 2b 20 31 2c 20 61 72 72 61 79 2c 20 69 6e Copy(array,.index.+.1,.array,.in
57e0 64 65 78 2c 20 63 6f 75 6e 74 20 2d 20 69 6e 64 65 78 20 2d 20 31 29 3b 0d 0a 20 20 20 20 20 20 dex,.count.-.index.-.1);........
5800 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 5b 63 6f 75 ......}................array[cou
5820 6e 74 20 2d 20 31 5d 20 3d 20 64 65 66 61 75 6c 74 3b 20 2f 2f 20 54 61 69 6c 20 68 61 73 20 62 nt.-.1].=.default;.//.Tail.has.b
5840 65 65 6e 20 6d 6f 76 65 64 20 64 6f 77 6e 20 62 79 20 6f 6e 65 2e 0d 0a 20 20 20 20 20 20 20 20 een.moved.down.by.one...........
5860 20 20 20 20 2d 2d 63 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 ....--count;..........}.........
5880 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 75 6e 73 61 66 65 20 76 6f 69 64 20 45 72 61 ...public.static.unsafe.void.Era
58a0 73 65 41 74 57 69 74 68 43 61 70 61 63 69 74 79 3c 54 56 61 6c 75 65 3e 28 4e 61 74 69 76 65 41 seAtWithCapacity<TValue>(NativeA
58c0 72 72 61 79 3c 54 56 61 6c 75 65 3e 20 61 72 72 61 79 2c 20 72 65 66 20 69 6e 74 20 63 6f 75 6e rray<TValue>.array,.ref.int.coun
58e0 74 2c 20 69 6e 74 20 69 6e 64 65 78 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 68 65 72 65 t,.int.index)..............where
5900 20 54 56 61 6c 75 65 20 3a 20 73 74 72 75 63 74 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 .TValue.:.struct..........{.....
5920 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 72 74 28 61 72 72 61 79 2e 49 73 43 72 .........Debug.Assert(array.IsCr
5940 65 61 74 65 64 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 72 eated);..............Debug.Asser
5960 74 28 63 6f 75 6e 74 20 3c 3d 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 29 3b 0d 0a 20 20 20 20 20 t(count.<=.array.Length);.......
5980 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 72 74 28 69 6e 64 65 78 20 3e 3d 20 30 20 26 .......Debug.Assert(index.>=.0.&
59a0 26 20 69 6e 64 65 78 20 3c 20 63 6f 75 6e 74 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 &.index.<.count);...............
59c0 20 2f 2f 20 49 66 20 77 65 27 72 65 20 65 72 61 73 69 6e 67 20 66 72 6f 6d 20 74 68 65 20 62 65 .//.If.we're.erasing.from.the.be
59e0 67 69 6e 6e 69 6e 67 20 6f 72 20 73 6f 6d 65 77 68 65 72 65 20 69 6e 20 74 68 65 20 6d 69 64 64 ginning.or.somewhere.in.the.midd
5a00 6c 65 2c 20 6d 6f 76 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 74 68 65 20 61 72 72 le,.move..............//.the.arr
5a20 61 79 20 63 6f 6e 74 65 6e 74 73 20 64 6f 77 6e 20 66 72 6f 6d 20 61 66 74 65 72 20 74 68 65 20 ay.contents.down.from.after.the.
5a40 69 6e 64 65 78 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 6e 64 65 78 20 3c 20 index...............if.(index.<.
5a60 63 6f 75 6e 74 20 2d 20 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 count.-.1)..............{.......
5a80 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 65 6c 65 6d 65 6e 74 53 69 7a 65 20 3d 20 55 6e 73 ...........var.elementSize.=.Uns
5aa0 61 66 65 55 74 69 6c 69 74 79 2e 53 69 7a 65 4f 66 3c 54 56 61 6c 75 65 3e 28 29 3b 0d 0a 20 20 afeUtility.SizeOf<TValue>();....
5ac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 61 72 72 61 79 50 74 72 20 3d 20 28 62 79 ..............var.arrayPtr.=.(by
5ae0 74 65 2a 29 61 72 72 61 79 2e 47 65 74 55 6e 73 61 66 65 50 74 72 28 29 3b 0d 0a 0d 0a 20 20 20 te*)array.GetUnsafePtr();.......
5b00 20 20 20 20 20 20 20 20 20 20 20 20 20 55 6e 73 61 66 65 55 74 69 6c 69 74 79 2e 4d 65 6d 43 70 .............UnsafeUtility.MemCp
5b20 79 28 61 72 72 61 79 50 74 72 20 2b 20 65 6c 65 6d 65 6e 74 53 69 7a 65 20 2a 20 69 6e 64 65 78 y(arrayPtr.+.elementSize.*.index
5b40 2c 20 61 72 72 61 79 50 74 72 20 2b 20 65 6c 65 6d 65 6e 74 53 69 7a 65 20 2a 20 28 69 6e 64 65 ,.arrayPtr.+.elementSize.*.(inde
5b60 78 20 2b 20 31 29 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f x.+.1),......................(co
5b80 75 6e 74 20 2d 20 69 6e 64 65 78 20 2d 20 31 29 20 2a 20 65 6c 65 6d 65 6e 74 53 69 7a 65 29 3b unt.-.index.-.1).*.elementSize);
5ba0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2d ..............}................-
5bc0 2d 63 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 -count;..........}............pu
5be0 62 6c 69 63 20 73 74 61 74 69 63 20 62 6f 6f 6c 20 45 72 61 73 65 3c 54 56 61 6c 75 65 3e 28 72 blic.static.bool.Erase<TValue>(r
5c00 65 66 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 54 56 61 6c 75 65 20 76 61 6c 75 65 29 ef.TValue[].array,.TValue.value)
5c20 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 69 6e 64 ..........{..............var.ind
5c40 65 78 20 3d 20 49 6e 64 65 78 4f 66 28 61 72 72 61 79 2c 20 76 61 6c 75 65 29 3b 0d 0a 20 20 20 ex.=.IndexOf(array,.value);.....
5c60 20 20 20 20 20 20 20 20 20 69 66 20 28 69 6e 64 65 78 20 21 3d 20 2d 31 29 0d 0a 20 20 20 20 20 .........if.(index.!=.-1).......
5c80 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 72 61 73 65 41 .......{..................EraseA
5ca0 74 28 72 65 66 20 61 72 72 61 79 2c 20 69 6e 64 65 78 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 t(ref.array,.index);............
5cc0 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ......return.true;..............
5ce0 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0d 0a 20 20 }..............return.false;....
5d00 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e ......}............///.<summary>
5d20 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 45 72 61 73 65 20 61 6e 20 65 6c 65 6d 65 6e 74 20 66 ..........///.Erase.an.element.f
5d40 72 6f 6d 20 74 68 65 20 61 72 72 61 79 20 62 79 20 6d 6f 76 69 6e 67 20 74 68 65 20 74 61 69 6c rom.the.array.by.moving.the.tail
5d60 20 65 6c 65 6d 65 6e 74 20 69 6e 74 6f 20 69 74 73 20 70 6c 61 63 65 2e 0d 0a 20 20 20 20 20 20 .element.into.its.place.........
5d80 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 70 ..///.</summary>..........///.<p
5da0 61 72 61 6d 20 6e 61 6d 65 3d 22 61 72 72 61 79 22 3e 41 72 72 61 79 20 74 6f 20 6d 6f 64 69 66 aram.name="array">Array.to.modif
5dc0 79 2e 20 4d 61 79 20 62 65 20 6e 6f 74 20 3c 63 3e 6e 75 6c 6c 3c 2f 63 3e 2e 3c 2f 70 61 72 61 y..May.be.not.<c>null</c>.</para
5de0 6d 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 70 61 72 61 6d 20 6e 61 6d 65 3d 22 63 6f 75 m>..........///.<param.name="cou
5e00 6e 74 22 3e 43 75 72 72 65 6e 74 20 6e 75 6d 62 65 72 20 6f 66 20 65 6c 65 6d 65 6e 74 73 20 69 nt">Current.number.of.elements.i
5e20 6e 73 69 64 65 20 6f 66 20 61 72 72 61 79 2e 20 4d 61 79 20 62 65 20 6c 65 73 73 20 74 68 61 6e nside.of.array..May.be.less.than
5e40 20 3c 63 3e 61 72 72 61 79 2e 4c 65 6e 67 74 68 3c 2f 63 3e 2e 3c 2f 70 61 72 61 6d 3e 0d 0a 20 .<c>array.Length</c>.</param>...
5e60 20 20 20 20 20 20 20 2f 2f 2f 20 3c 70 61 72 61 6d 20 6e 61 6d 65 3d 22 69 6e 64 65 78 22 3e 49 .......///.<param.name="index">I
5e80 6e 64 65 78 20 6f 66 20 65 6c 65 6d 65 6e 74 20 74 6f 20 72 65 6d 6f 76 65 2e 20 54 61 69 6c 20 ndex.of.element.to.remove..Tail.
5ea0 65 6c 65 6d 65 6e 74 20 77 69 6c 6c 20 67 65 74 20 6d 6f 76 65 64 20 69 6e 74 6f 20 69 74 73 20 element.will.get.moved.into.its.
5ec0 70 6c 61 63 65 2e 3c 2f 70 61 72 61 6d 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 74 79 70 place.</param>..........///.<typ
5ee0 65 70 61 72 61 6d 20 6e 61 6d 65 3d 22 54 56 61 6c 75 65 22 3e 3c 2f 74 79 70 65 70 61 72 61 6d eparam.name="TValue"></typeparam
5f00 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 >..........///.<remarks>........
5f20 20 20 2f 2f 2f 20 54 68 69 73 20 6d 65 74 68 6f 64 20 64 6f 65 73 20 6e 6f 74 20 72 65 2d 61 6c ..///.This.method.does.not.re-al
5f40 6c 6f 63 61 74 65 20 74 68 65 20 61 72 72 61 79 2e 20 49 6e 73 74 65 61 64 20 3c 70 61 72 61 6d locate.the.array..Instead.<param
5f60 72 65 66 20 6e 61 6d 65 3d 22 63 6f 75 6e 74 22 2f 3e 20 69 73 20 75 73 65 64 0d 0a 20 20 20 20 ref.name="count"/>.is.used......
5f80 20 20 20 20 2f 2f 2f 20 74 6f 20 6b 65 65 70 20 74 72 61 63 6b 20 6f 66 20 68 6f 77 20 6d 61 6e ....///.to.keep.track.of.how.man
5fa0 79 20 65 6c 65 6d 65 6e 74 73 20 74 68 65 72 65 20 61 63 74 75 61 6c 6c 79 20 61 72 65 20 69 6e y.elements.there.actually.are.in
5fc0 20 74 68 65 20 61 72 72 61 79 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 72 65 6d 61 72 .the.array...........///.</remar
5fe0 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 76 6f 69 64 20 ks>..........public.static.void.
6000 45 72 61 73 65 41 74 42 79 4d 6f 76 69 6e 67 54 61 69 6c 3c 54 56 61 6c 75 65 3e 28 54 56 61 6c EraseAtByMovingTail<TValue>(TVal
6020 75 65 5b 5d 20 61 72 72 61 79 2c 20 72 65 66 20 69 6e 74 20 63 6f 75 6e 74 2c 20 69 6e 74 20 69 ue[].array,.ref.int.count,.int.i
6040 6e 64 65 78 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 65 ndex)..........{..............De
6060 62 75 67 2e 41 73 73 65 72 74 28 61 72 72 61 79 20 21 3d 20 6e 75 6c 6c 29 3b 0d 0a 20 20 20 20 bug.Assert(array.!=.null);......
6080 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 72 74 28 69 6e 64 65 78 20 3e 3d 20 30 20 ........Debug.Assert(index.>=.0.
60a0 26 26 20 69 6e 64 65 78 20 3c 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 29 3b 0d 0a 20 20 20 20 20 &&.index.<.array.Length);.......
60c0 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 72 74 28 63 6f 75 6e 74 20 3e 3d 20 30 20 26 .......Debug.Assert(count.>=.0.&
60e0 26 20 63 6f 75 6e 74 20 3c 3d 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 29 3b 0d 0a 20 20 20 20 20 &.count.<=.array.Length);.......
6100 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 72 74 28 69 6e 64 65 78 20 3c 20 63 6f 75 6e .......Debug.Assert(index.<.coun
6120 74 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4d 6f 76 65 20 74 61 69 6c 2c t);................//.Move.tail,
6140 20 69 66 20 6e 65 63 65 73 73 61 72 79 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 .if.necessary...............if.(
6160 69 6e 64 65 78 20 21 3d 20 63 6f 75 6e 74 20 2d 20 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 index.!=.count.-.1).............
6180 20 20 20 20 20 61 72 72 61 79 5b 69 6e 64 65 78 5d 20 3d 20 61 72 72 61 79 5b 63 6f 75 6e 74 20 .....array[index].=.array[count.
61a0 2d 20 31 5d 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 44 65 73 74 72 6f 79 20 -.1];................//.Destroy.
61c0 63 75 72 72 65 6e 74 20 74 61 69 6c 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 current.tail...............if.(c
61e0 6f 75 6e 74 20 3e 3d 20 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 61 ount.>=.1)..................arra
6200 79 5b 63 6f 75 6e 74 20 2d 20 31 5d 20 3d 20 64 65 66 61 75 6c 74 3b 0d 0a 20 20 20 20 20 20 20 y[count.-.1].=.default;.........
6220 20 20 20 20 20 2d 2d 63 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 .....--count;..........}........
6240 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 54 56 61 6c 75 65 5b 5d 20 43 6f 70 79 3c ....public.static.TValue[].Copy<
6260 54 56 61 6c 75 65 3e 28 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 29 0d 0a 20 20 20 20 20 20 20 TValue>(TValue[].array).........
6280 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 61 72 72 61 79 20 3d 3d 20 6e 75 6c .{..............if.(array.==.nul
62a0 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6c 6c 3b l)..................return.null;
62c0 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6c 65 6e 67 74 68 20 3d 20 61 72 72 ................var.length.=.arr
62e0 61 79 2e 4c 65 6e 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 72 65 73 75 ay.Length;..............var.resu
6300 6c 74 20 3d 20 6e 65 77 20 54 56 61 6c 75 65 5b 6c 65 6e 67 74 68 5d 3b 0d 0a 20 20 20 20 20 20 lt.=.new.TValue[length];........
6320 20 20 20 20 20 20 41 72 72 61 79 2e 43 6f 70 79 28 61 72 72 61 79 2c 20 72 65 73 75 6c 74 2c 20 ......Array.Copy(array,.result,.
6340 6c 65 6e 67 74 68 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 72 65 73 length);..............return.res
6360 75 6c 74 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 ult;..........}............publi
6380 63 20 73 74 61 74 69 63 20 54 56 61 6c 75 65 5b 5d 20 43 6c 6f 6e 65 3c 54 56 61 6c 75 65 3e 28 c.static.TValue[].Clone<TValue>(
63a0 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 68 65 TValue[].array)..............whe
63c0 72 65 20 54 56 61 6c 75 65 20 3a 20 49 43 6c 6f 6e 65 61 62 6c 65 0d 0a 20 20 20 20 20 20 20 20 re.TValue.:.ICloneable..........
63e0 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 61 72 72 61 79 20 3d 3d 20 6e 75 6c 6c {..............if.(array.==.null
6400 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0d )..................return.null;.
6420 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 6f 75 6e 74 20 3d 20 61 72 72 61 79 ...............var.count.=.array
6440 2e 4c 65 6e 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 72 65 73 75 6c 74 .Length;..............var.result
6460 20 3d 20 6e 65 77 20 54 56 61 6c 75 65 5b 63 6f 75 6e 74 5d 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 .=.new.TValue[count];...........
6480 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 63 6f 75 6e 74 3b 20 .....for.(var.i.=.0;.i.<.count;.
64a0 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 73 75 6c 74 5b 69 5d 20 ++i)..................result[i].
64c0 3d 20 28 54 56 61 6c 75 65 29 61 72 72 61 79 5b 69 5d 2e 43 6c 6f 6e 65 28 29 3b 0d 0a 0d 0a 20 =.(TValue)array[i].Clone();.....
64e0 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 72 65 73 75 6c 74 3b 0d 0a 20 20 20 20 20 ...........return.result;.......
6500 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 54 4e ...}............public.static.TN
6520 65 77 5b 5d 20 53 65 6c 65 63 74 3c 54 4f 6c 64 2c 20 54 4e 65 77 3e 28 54 4f 6c 64 5b 5d 20 61 ew[].Select<TOld,.TNew>(TOld[].a
6540 72 72 61 79 2c 20 46 75 6e 63 3c 54 4f 6c 64 2c 20 54 4e 65 77 3e 20 63 6f 6e 76 65 72 74 65 72 rray,.Func<TOld,.TNew>.converter
6560 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 61 72 )..........{..............if.(ar
6580 72 61 79 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 ray.==.null)..................re
65a0 74 75 72 6e 20 6e 75 6c 6c 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6c 65 turn.null;................var.le
65c0 6e 67 74 68 20 3d 20 61 72 72 61 79 2e 4c 65 6e 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 ngth.=.array.Length;............
65e0 20 20 76 61 72 20 72 65 73 75 6c 74 20 3d 20 6e 65 77 20 54 4e 65 77 5b 6c 65 6e 67 74 68 5d 3b ..var.result.=.new.TNew[length];
6600 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 ................for.(var.i.=.0;.
6620 69 20 3c 20 6c 65 6e 67 74 68 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 i.<.length;.++i)................
6640 20 20 72 65 73 75 6c 74 5b 69 5d 20 3d 20 63 6f 6e 76 65 72 74 65 72 28 61 72 72 61 79 5b 69 5d ..result[i].=.converter(array[i]
6660 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 72 65 73 75 6c 74 3b );................return.result;
6680 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 73 ..........}............private.s
66a0 74 61 74 69 63 20 76 6f 69 64 20 53 77 61 70 3c 54 56 61 6c 75 65 3e 28 72 65 66 20 54 56 61 6c tatic.void.Swap<TValue>(ref.TVal
66c0 75 65 20 66 69 72 73 74 2c 20 72 65 66 20 54 56 61 6c 75 65 20 73 65 63 6f 6e 64 29 0d 0a 20 20 ue.first,.ref.TValue.second)....
66e0 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 74 65 6d 70 20 3d 20 ......{..............var.temp.=.
6700 66 69 72 73 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 69 72 73 74 20 3d 20 73 65 63 6f first;..............first.=.seco
6720 6e 64 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 63 6f 6e 64 20 3d 20 74 65 6d 70 3b 0d nd;..............second.=.temp;.
6740 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 .........}............///.<summa
6760 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 53 77 61 70 20 74 68 65 20 63 6f 6e 74 65 6e ry>..........///.Swap.the.conten
6780 74 73 20 6f 66 20 74 77 6f 20 70 6f 74 65 6e 74 69 61 6c 6c 79 20 6f 76 65 72 6c 61 70 70 69 6e ts.of.two.potentially.overlappin
67a0 67 20 73 6c 69 63 65 73 20 77 69 74 68 69 6e 20 74 68 65 20 61 72 72 61 79 2e 0d 0a 20 20 20 20 g.slices.within.the.array.......
67c0 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 ....///.</summary>..........///.
67e0 3c 70 61 72 61 6d 20 6e 61 6d 65 3d 22 61 72 72 61 79 22 3e 3c 2f 70 61 72 61 6d 3e 0d 0a 20 20 <param.name="array"></param>....
6800 20 20 20 20 20 20 2f 2f 2f 20 3c 70 61 72 61 6d 20 6e 61 6d 65 3d 22 73 6f 75 72 63 65 49 6e 64 ......///.<param.name="sourceInd
6820 65 78 22 3e 3c 2f 70 61 72 61 6d 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 70 61 72 61 6d ex"></param>..........///.<param
6840 20 6e 61 6d 65 3d 22 64 65 73 74 69 6e 61 74 69 6f 6e 49 6e 64 65 78 22 3e 3c 2f 70 61 72 61 6d .name="destinationIndex"></param
6860 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 70 61 72 61 6d 20 6e 61 6d 65 3d 22 63 6f 75 6e >..........///.<param.name="coun
6880 74 22 3e 3c 2f 70 61 72 61 6d 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 74 79 70 65 70 61 t"></param>..........///.<typepa
68a0 72 61 6d 20 6e 61 6d 65 3d 22 54 56 61 6c 75 65 22 3e 3c 2f 74 79 70 65 70 61 72 61 6d 3e 0d 0a ram.name="TValue"></typeparam>..
68c0 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 76 6f 69 64 20 53 77 61 70 53 ........public.static.void.SwapS
68e0 6c 69 63 65 3c 54 56 61 6c 75 65 3e 28 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 69 6e 74 lice<TValue>(TValue[].array,.int
6900 20 73 6f 75 72 63 65 49 6e 64 65 78 2c 20 69 6e 74 20 64 65 73 74 69 6e 61 74 69 6f 6e 49 6e 64 .sourceIndex,.int.destinationInd
6920 65 78 2c 20 69 6e 74 20 63 6f 75 6e 74 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 ex,.int.count)..........{.......
6940 20 20 20 20 20 20 20 69 66 20 28 73 6f 75 72 63 65 49 6e 64 65 78 20 3c 20 64 65 73 74 69 6e 61 .......if.(sourceIndex.<.destina
6960 74 69 6f 6e 49 6e 64 65 78 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 tionIndex)..............{.......
6980 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 63 ...........for.(var.i.=.0;.i.<.c
69a0 6f 75 6e 74 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ount;.++i)......................
69c0 53 77 61 70 28 72 65 66 20 61 72 72 61 79 5b 73 6f 75 72 63 65 49 6e 64 65 78 20 2b 20 63 6f 75 Swap(ref.array[sourceIndex.+.cou
69e0 6e 74 20 2d 20 69 20 2d 20 31 5d 2c 20 72 65 66 20 61 72 72 61 79 5b 64 65 73 74 69 6e 61 74 69 nt.-.i.-.1],.ref.array[destinati
6a00 6f 6e 49 6e 64 65 78 20 2b 20 63 6f 75 6e 74 20 2d 20 69 20 2d 20 31 5d 29 3b 0d 0a 20 20 20 20 onIndex.+.count.-.i.-.1]);......
6a20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 ........}..............else.....
6a40 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 .........{..................for.
6a60 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 63 6f 75 6e 74 3b 20 2b 2b 69 29 0d 0a 20 20 20 (var.i.=.0;.i.<.count;.++i).....
6a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 77 61 70 28 72 65 66 20 61 72 72 61 79 5b .................Swap(ref.array[
6aa0 73 6f 75 72 63 65 49 6e 64 65 78 20 2b 20 69 5d 2c 20 72 65 66 20 61 72 72 61 79 5b 64 65 73 74 sourceIndex.+.i],.ref.array[dest
6ac0 69 6e 61 74 69 6f 6e 49 6e 64 65 78 20 2b 20 69 5d 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 inationIndex.+.i]);.............
6ae0 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 .}..........}............///.<su
6b00 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 4d 6f 76 65 20 61 20 73 6c 69 63 65 mmary>..........///.Move.a.slice
6b20 20 69 6e 20 74 68 65 20 61 72 72 61 79 20 74 6f 20 61 20 64 69 66 66 65 72 65 6e 74 20 70 6c 61 .in.the.array.to.a.different.pla
6b40 63 65 20 77 69 74 68 6f 75 74 20 61 6c 6c 6f 63 61 74 69 6e 67 20 61 20 74 65 6d 70 6f 72 61 72 ce.without.allocating.a.temporar
6b60 79 20 61 72 72 61 79 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e y.array...........///.</summary>
6b80 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 70 61 72 61 6d 20 6e 61 6d 65 3d 22 61 72 72 61 79 ..........///.<param.name="array
6ba0 22 3e 3c 2f 70 61 72 61 6d 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 70 61 72 61 6d 20 6e "></param>..........///.<param.n
6bc0 61 6d 65 3d 22 73 6f 75 72 63 65 49 6e 64 65 78 22 3e 3c 2f 70 61 72 61 6d 3e 0d 0a 20 20 20 20 ame="sourceIndex"></param>......
6be0 20 20 20 20 2f 2f 2f 20 3c 70 61 72 61 6d 20 6e 61 6d 65 3d 22 64 65 73 74 69 6e 61 74 69 6f 6e ....///.<param.name="destination
6c00 49 6e 64 65 78 22 3e 3c 2f 70 61 72 61 6d 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 70 61 Index"></param>..........///.<pa
6c20 72 61 6d 20 6e 61 6d 65 3d 22 63 6f 75 6e 74 22 3e 3c 2f 70 61 72 61 6d 3e 0d 0a 20 20 20 20 20 ram.name="count"></param>.......
6c40 20 20 20 2f 2f 2f 20 3c 74 79 70 65 70 61 72 61 6d 20 6e 61 6d 65 3d 22 54 56 61 6c 75 65 22 3e ...///.<typeparam.name="TValue">
6c60 3c 2f 74 79 70 65 70 61 72 61 6d 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 72 65 6d 61 72 </typeparam>..........///.<remar
6c80 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 54 68 65 20 73 6c 69 63 65 20 69 73 20 6d 6f ks>..........///.The.slice.is.mo
6ca0 76 65 64 20 62 79 20 72 65 70 65 61 74 65 64 6c 79 20 73 77 61 70 70 69 6e 67 20 73 6c 69 63 65 ved.by.repeatedly.swapping.slice
6cc0 73 20 75 6e 74 69 6c 20 61 6c 6c 20 74 68 65 20 73 6c 69 63 65 73 20 61 72 65 20 77 68 65 72 65 s.until.all.the.slices.are.where
6ce0 20 74 68 65 79 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 61 72 65 20 73 75 70 70 6f 73 65 64 20 .they..........///.are.supposed.
6d00 74 6f 20 67 6f 2e 20 54 68 69 73 20 69 73 20 6e 6f 74 20 73 75 70 65 72 20 65 66 66 69 63 69 65 to.go..This.is.not.super.efficie
6d20 6e 74 20 62 75 74 20 61 76 6f 69 64 73 20 68 61 76 69 6e 67 20 74 6f 20 61 6c 6c 6f 63 61 74 65 nt.but.avoids.having.to.allocate
6d40 20 61 20 74 65 6d 70 6f 72 61 72 79 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 61 72 72 61 79 20 .a.temporary..........///.array.
6d60 6f 6e 20 74 68 65 20 68 65 61 70 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 72 65 6d 61 on.the.heap...........///.</rema
6d80 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 76 6f 69 64 rks>..........public.static.void
6da0 20 4d 6f 76 65 53 6c 69 63 65 3c 54 56 61 6c 75 65 3e 28 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 .MoveSlice<TValue>(TValue[].arra
6dc0 79 2c 20 69 6e 74 20 73 6f 75 72 63 65 49 6e 64 65 78 2c 20 69 6e 74 20 64 65 73 74 69 6e 61 74 y,.int.sourceIndex,.int.destinat
6de0 69 6f 6e 49 6e 64 65 78 2c 20 69 6e 74 20 63 6f 75 6e 74 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d ionIndex,.int.count)..........{.
6e00 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 6f 75 6e 74 20 3c 3d 20 30 20 7c 7c 20 73 .............if.(count.<=.0.||.s
6e20 6f 75 72 63 65 49 6e 64 65 78 20 3d 3d 20 64 65 73 74 69 6e 61 74 69 6f 6e 49 6e 64 65 78 29 0d ourceIndex.==.destinationIndex).
6e40 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 .................return;........
6e60 20 20 20 20 20 20 20 20 2f 2f 20 4d 61 6b 65 20 73 75 72 65 20 77 65 27 72 65 20 6d 6f 76 69 6e ........//.Make.sure.we're.movin
6e80 67 20 66 72 6f 6d 20 6c 6f 77 65 72 20 70 61 72 74 20 6f 66 20 61 72 72 61 79 20 74 6f 20 68 69 g.from.lower.part.of.array.to.hi
6ea0 67 68 65 72 20 70 61 72 74 20 73 6f 20 77 65 20 6f 6e 6c 79 0d 0a 20 20 20 20 20 20 20 20 20 20 gher.part.so.we.only............
6ec0 20 20 2f 2f 20 68 61 76 65 20 74 6f 20 64 65 61 6c 20 77 69 74 68 20 74 68 61 74 20 73 63 65 6e ..//.have.to.deal.with.that.scen
6ee0 61 72 69 6f 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 73 6f 75 72 63 65 49 6e 64 ario...............if.(sourceInd
6f00 65 78 20 3e 20 64 65 73 74 69 6e 61 74 69 6f 6e 49 6e 64 65 78 29 0d 0a 20 20 20 20 20 20 20 20 ex.>.destinationIndex)..........
6f20 20 20 20 20 20 20 20 20 53 77 61 70 28 72 65 66 20 73 6f 75 72 63 65 49 6e 64 65 78 2c 20 72 65 ........Swap(ref.sourceIndex,.re
6f40 66 20 64 65 73 74 69 6e 61 74 69 6f 6e 49 6e 64 65 78 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 f.destinationIndex);............
6f60 20 20 20 20 77 68 69 6c 65 20 28 64 65 73 74 69 6e 61 74 69 6f 6e 49 6e 64 65 78 20 21 3d 20 73 ....while.(destinationIndex.!=.s
6f80 6f 75 72 63 65 49 6e 64 65 78 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 ourceIndex)..............{......
6fa0 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 77 61 70 20 73 6f 75 72 63 65 20 61 6e 64 20 64 ............//.Swap.source.and.d
6fc0 65 73 74 69 6e 61 74 69 6f 6e 20 73 6c 69 63 65 2e 20 41 66 74 65 72 77 61 72 64 73 2c 20 74 68 estination.slice..Afterwards,.th
6fe0 65 20 73 6f 75 72 63 65 20 73 6c 69 63 65 20 69 73 20 74 68 65 20 72 69 67 68 74 2c 20 66 69 6e e.source.slice.is.the.right,.fin
7000 61 6c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 70 6c 61 63 65 20 62 75 74 al..................//.place.but
7020 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 73 6c 69 63 65 20 6d 61 79 20 6e 6f 74 20 62 .the.destination.slice.may.not.b
7040 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 77 61 70 53 6c 69 63 65 28 61 72 e...................SwapSlice(ar
7060 72 61 79 2c 20 73 6f 75 72 63 65 49 6e 64 65 78 2c 20 64 65 73 74 69 6e 61 74 69 6f 6e 49 6e 64 ray,.sourceIndex,.destinationInd
7080 65 78 2c 20 63 6f 75 6e 74 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f ex,.count);..................../
70a0 2f 20 53 6c 69 64 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 77 69 6e 64 6f 77 20 64 6f 77 6e 2e /.Slide.destination.window.down.
70c0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 64 65 73 74 69 6e 61 74 69 6f ..................if.(destinatio
70e0 6e 49 6e 64 65 78 20 2d 20 73 6f 75 72 63 65 49 6e 64 65 78 20 3e 3d 20 63 6f 75 6e 74 20 2a 20 nIndex.-.sourceIndex.>=.count.*.
7100 32 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 2)..................{...........
7120 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 6c 69 64 65 20 64 6f 77 6e 20 6f 6e 65 20 77 68 6f ...........//.Slide.down.one.who
7140 6c 65 20 77 69 6e 64 6f 77 20 6f 66 20 63 6f 75 6e 74 20 65 6c 65 6d 65 6e 74 73 2e 0d 0a 20 20 le.window.of.count.elements.....
7160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 73 74 69 6e 61 74 69 6f 6e 49 6e 64 ..................destinationInd
7180 65 78 20 2d 3d 20 63 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d ex.-=.count;..................}.
71a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 .................else...........
71c0 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f .......{......................//
71e0 2f 2f 54 4f 44 4f 3a 20 74 68 69 73 20 63 61 6e 20 62 65 20 69 6d 70 72 6f 76 65 64 20 62 79 20 //TODO:.this.can.be.improved.by.
7200 75 73 69 6e 67 20 68 61 6c 76 69 6e 67 20 69 6e 73 74 65 61 64 20 61 6e 64 20 6f 6e 6c 79 20 64 using.halving.instead.and.only.d
7220 6f 69 6e 67 20 74 68 65 20 66 69 6e 61 6c 20 73 74 65 70 20 61 73 20 61 20 73 69 6e 67 6c 65 20 oing.the.final.step.as.a.single.
7240 65 6c 65 6d 65 6e 74 20 73 6c 69 64 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 element.slide...................
7260 20 20 20 2f 2f 20 53 6c 69 64 65 20 64 6f 77 6e 20 62 79 20 6f 6e 65 20 65 6c 65 6d 65 6e 74 2e ...//.Slide.down.by.one.element.
7280 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2d 2d 64 65 73 74 69 6e 61 74 ......................--destinat
72a0 69 6f 6e 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 ionIndex;..................}....
72c0 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 ..........}..........}..........
72e0 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 76 6f 69 64 20 45 72 61 73 65 53 6c 69 63 65 57 ..public.static.void.EraseSliceW
7300 69 74 68 43 61 70 61 63 69 74 79 3c 54 56 61 6c 75 65 3e 28 72 65 66 20 54 56 61 6c 75 65 5b 5d ithCapacity<TValue>(ref.TValue[]
7320 20 61 72 72 61 79 2c 20 72 65 66 20 69 6e 74 20 6c 65 6e 67 74 68 2c 20 69 6e 74 20 69 6e 64 65 .array,.ref.int.length,.int.inde
7340 78 2c 20 69 6e 74 20 63 6f 75 6e 74 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 x,.int.count)..........{........
7360 20 20 20 20 20 20 2f 2f 20 4d 6f 76 65 20 65 6c 65 6d 65 6e 74 73 20 64 6f 77 6e 2e 0d 0a 20 20 ......//.Move.elements.down.....
7380 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 6f 75 6e 74 20 3c 20 6c 65 6e 67 74 68 29 0d 0a 20 ..........if.(count.<.length)...
73a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 43 6f 70 79 28 61 72 72 61 79 2c ...............Array.Copy(array,
73c0 20 69 6e 64 65 78 20 2b 20 63 6f 75 6e 74 2c 20 61 72 72 61 79 2c 20 69 6e 64 65 78 2c 20 6c 65 .index.+.count,.array,.index,.le
73e0 6e 67 74 68 20 2d 20 69 6e 64 65 78 20 2d 20 63 6f 75 6e 74 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 ngth.-.index.-.count);..........
7400 20 20 20 20 20 20 2f 2f 20 45 72 61 73 65 20 6e 6f 77 20 76 61 63 61 6e 74 20 73 6c 6f 74 73 2e ......//.Erase.now.vacant.slots.
7420 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 ..............for.(var.i.=.0;.i.
7440 3c 20 63 6f 75 6e 74 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 <.count;.++i)..................a
7460 72 72 61 79 5b 6c 65 6e 67 74 68 20 2d 20 69 20 2d 20 31 5d 20 3d 20 64 65 66 61 75 6c 74 3b 0d rray[length.-.i.-.1].=.default;.
7480 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6c 65 6e 67 74 68 20 2d 3d 20 63 6f 75 6e 74 3b 0d ...............length.-=.count;.
74a0 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 .........}............public.sta
74c0 74 69 63 20 76 6f 69 64 20 53 77 61 70 45 6c 65 6d 65 6e 74 73 3c 54 56 61 6c 75 65 3e 28 74 68 tic.void.SwapElements<TValue>(th
74e0 69 73 20 54 56 61 6c 75 65 5b 5d 20 61 72 72 61 79 2c 20 69 6e 74 20 69 6e 64 65 78 31 2c 20 69 is.TValue[].array,.int.index1,.i
7500 6e 74 20 69 6e 64 65 78 32 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 nt.index2)..........{...........
7520 20 20 20 4d 65 6d 6f 72 79 48 65 6c 70 65 72 73 2e 53 77 61 70 28 72 65 66 20 61 72 72 61 79 5b ...MemoryHelpers.Swap(ref.array[
7540 69 6e 64 65 78 31 5d 2c 20 72 65 66 20 61 72 72 61 79 5b 69 6e 64 65 78 32 5d 29 3b 0d 0a 20 20 index1],.ref.array[index2]);....
7560 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 ......}............public.static
7580 20 76 6f 69 64 20 53 77 61 70 45 6c 65 6d 65 6e 74 73 3c 54 56 61 6c 75 65 3e 28 74 68 69 73 20 .void.SwapElements<TValue>(this.
75a0 4e 61 74 69 76 65 41 72 72 61 79 3c 54 56 61 6c 75 65 3e 20 61 72 72 61 79 2c 20 69 6e 74 20 69 NativeArray<TValue>.array,.int.i
75c0 6e 64 65 78 31 2c 20 69 6e 74 20 69 6e 64 65 78 32 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ndex1,.int.index2)..............
75e0 77 68 65 72 65 20 54 56 61 6c 75 65 20 3a 20 73 74 72 75 63 74 0d 0a 20 20 20 20 20 20 20 20 7b where.TValue.:.struct..........{
7600 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 74 65 6d 70 20 3d 20 61 72 72 61 79 5b 69 ..............var.temp.=.array[i
7620 6e 64 65 78 31 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 5b 69 6e 64 65 78 ndex1];..............array[index
7640 31 5d 20 3d 20 61 72 72 61 79 5b 69 6e 64 65 78 32 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 1].=.array[index2];.............
7660 20 61 72 72 61 79 5b 69 6e 64 65 78 32 5d 20 3d 20 74 65 6d 70 3b 0d 0a 20 20 20 20 20 20 20 20 .array[index2].=.temp;..........
7680 7d 0d 0a 20 20 20 20 7d 0d 0a 7d 0d 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 }......}..}.....................
76a0 00 00 00 00 0c 00 00 00 41 72 72 61 79 48 65 6c 70 65 72 73 21 00 00 00 55 6e 69 74 79 45 6e 67 ........ArrayHelpers!...UnityEng
76c0 69 6e 65 2e 49 6e 70 75 74 53 79 73 74 65 6d 2e 55 74 69 6c 69 74 69 65 73 00 00 00 ine.InputSystem.Utilities...