W liście LAUPRETRE François z dnia środa, 12 września 2007 12:38: > > > > What do you mean by "try both"? Could you explain a bit more on that? > > Yes. PHK's autoload handler is not filename-based. It works as a (poor > man's :) runtime linker, with a symbol map. In this map, interfaces and > classes have different symbol types. Today, when this handler receives a > request, it cannot know if it should look for an interface or a class. So, > it has to search both in turn. > > Please consider that filename-based autoload handlers are just a primitive > implementation. If you consider only this family of handlers, that's right: > getting the symbol type is not very important. But, with smarter map-based > autoload handlers, it becomes very interesting to extend the feature to > functions and, there, providing the symbol type along with the requested > value becomes mandatory. >
But how can interpreter know if it's looking for class or interface? There are obvious cases (class X implements Y, class A extends B, interface A extends B), but what with following language construct: function doSomething (Service s) {...} PHP tries to autoload type Service, but it can't know if it's looking for interface or class. Both are possible. -- Paweł Stradomski -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php