An IDL interface is mapped to a Lisp class. The name of this class is the scoped symbol for the interface. The direct superclasses of a generated Lisp class are determined as follows.
If the given IDL interface has no declared base interfaces, the generated class has the single direct superclass namedcorba:object. Otherwise, the generated Lisp class has direct superclasses that are the generated classes corresponding to the declared base interfaces of the given interface. The Lisp valuenil can be passed wherever an object reference is expected.
An IDL interface is also mapped into server-side classes. The server classes are described in Section A.6 on page 91.
For example, in IDL:
module example{
interface foo {};
interface bar {};
interface fum : foo,bar {};
}
And in generated Lisp:
(defclass example:foo(corba:object)()) (defclass example:bar(corba:object)()) (defclass example:fum (example:foo example:bar)())