Gen 1 = GB.
Gen 2 (G/S) = GB with GBC enhancements.
Gen 2 (Crystal) = GBC.
Gen 3 = GBA.
Gen 4 = DS
Gen 5 = DS with DSi/3DS enhancements.
Gen 6 = 3DS.
Gen 7 (S/M/US/UM) = 3DS with N3DS enhancements..
Gen 7 (LGP/LGE) = Switch
Gen 8 = Switch.
Fixed that right up for you.
If your logic is that a system family jump equals a new Gen then you're already fucked with Crystal since it was the first one to actually jump family lines mid-Gen but the DS and 3DS shit just fucks it even further since the DSi/XL and 3DS XL/New 3DS/XL/2DS/New 2DS XL are still just DS and 3DS family systems respectively, not new system family lines.