Implements restructuration methods directly on generics