Class AbstractCodeGenerator<A extends Arguments<A>>