What would prohibit this? class Factory<T> { public static function makeFoo() { return new Foo<T>(); } }It's perhaps less generic than what you posted, but this demonstrates that that a Factory *could* hold the definition on the class and not the method. To be honest, I don't know why you would bother doing this anyway. I am a fan of realistic examples and Factories that make Foos of type T is pretty unrealistic.
Well, the counter-example would be that without generic methods, thus automatically applying the class instance types to static method, you would enforce that the user has to define them for static method calls which don't require a type at all (helper methods for instance).
-- Ben Scholzen http://www.dasprids.de
smime.p7s
Description: S/MIME Cryptographic Signature