PKHeX/PKHeX.Core/Legality/Encounters/EncounterTrade
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
..
EncounterTrade.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
EncounterTrade1.cs Refactoring: Move Source (Legality) (#3560) 2022-08-03 16:15:27 -07:00
EncounterTrade2.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
EncounterTrade3.cs Refactoring: Move Source (Legality) (#3560) 2022-08-03 16:15:27 -07:00
EncounterTrade4.cs Refactoring: Move Source (Legality) (#3560) 2022-08-03 16:15:27 -07:00
EncounterTrade5.cs Refactoring: Move Source (Legality) (#3560) 2022-08-03 16:15:27 -07:00
EncounterTrade6.cs Refactoring: Move Source (Legality) (#3560) 2022-08-03 16:15:27 -07:00
EncounterTrade7.cs Refactoring: Move Source (Legality) (#3560) 2022-08-03 16:15:27 -07:00
EncounterTrade7b.cs Refactoring: Move Source (Legality) (#3560) 2022-08-03 16:15:27 -07:00
EncounterTrade8.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
EncounterTrade8b.cs Refactoring: Move Source (Legality) (#3560) 2022-08-03 16:15:27 -07:00
EncounterTradeGB.cs File scoped namespaces (#3529) 2022-06-18 11:04:24 -07:00