Beginning of support for swift generation, kinda hacky just seeing how hard it was