PKHeX/PKHeX.Core/Legality/Encounters/Data
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
..
EncounterEvent.cs Add more xmldoc 2022-08-21 01:39:16 -07:00
Encounters1.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
Encounters2.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
Encounters3.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
Encounters3GC.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
Encounters3Shadow.cs File scoped namespaces (#3529) 2022-06-18 11:04:24 -07:00
Encounters3Teams.cs File scoped namespaces (#3529) 2022-06-18 11:04:24 -07:00
Encounters4.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
Encounters5.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
Encounters6.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
Encounters7.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
Encounters7b.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
Encounters8.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
Encounters8a.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
Encounters8b.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
Encounters8Nest.cs File scoped namespaces (#3529) 2022-06-18 11:04:24 -07:00
Encounters8NestCrystal.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
Encounters8NestDistBase.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
Encounters8NestDistDLC1.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
Encounters8NestDistDLC2.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
Encounters8NestLair.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
EncounterServerDate.cs Add more xmldoc 2022-08-21 01:39:16 -07:00
EncountersGO.cs File scoped namespaces (#3529) 2022-06-18 11:04:24 -07:00
EncountersWC3.cs Add specialized struct for Moveset and IV specs (#3572) 2022-08-21 17:34:32 -07:00
EncounterUtil.cs File scoped namespaces (#3529) 2022-06-18 11:04:24 -07:00