Multiple Inheritance for other languages
Introduction
It would be great if in Eiffel we could multiply inherit from other classes
written in a different language that does not support multiple inheritance. One
easy way to do so is to create a tool that consumes an assembly and for each
class of the assembly, it generates two new entities:
- an interface that collects all methods implemented in the existing class
- an implementation class that implements the above interface by using the
bridge pattern (all calls are delegated to an existing object) and following
what the Eiffel compiler expect to be generated so that it can do a correct
dispatch.