PKHeX/PKHeX.Core/Legality/LearnSource/Group
Kurt 6441bdadd8
Add specialized struct for Moveset and IV specs (#3572)
`Moveset` struct stores 4 moves, and exposes methods to interact with a moveset.
`IndividualValueSet` stores a 6 IV template (signed).

Performance impact:
* Less allocating on the heap: Moves - (8 bytes member ptr, 20 bytes heap->8 bytes member)
* Less allocating on the heap: IVs - (8 bytes member ptr, 28 bytes heap->8 bytes member)
* No heap pointers, no need to jump to grab data.
* Easy to inline logic for checking if moves are present (no linq usage with temporary collections).

End result is faster ctor times, less memory used, faster program.
2022-08-21 17:34:32 -07:00
..
ILearnGroup.cs Refactoring: Move Source (Legality) (#3560) 2022-08-03 16:15:27 -07:00
LearnGroup1.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
LearnGroup2.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
LearnGroup3.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
LearnGroup4.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
LearnGroup5.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
LearnGroup6.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
LearnGroup7.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
LearnGroup7b.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
LearnGroup8.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
LearnGroup8a.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
LearnGroup8b.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
LearnGroupUtil.cs Add more xmldoc 2022-08-21 01:39:16 -07:00