Your friend is being very colorful and creative.
However, the code below is not legal. It doesn't make much sense either.
Classes inherit interfaces.
By creating an interface that declares a class in it, what intent is the
programmer attempting to describe in the code? Is it the intent that the
object which implement the interface must "have a" member class completely
declared within them? Why not just define that a child class returns an
object of a particular type from a member method? The same structural
purpose would be served.
In this case, the Interface can simply refer to another interface for a
member method.
This allows you to have composition without the byzantine declaration syntax
below.

Signature
--- Nick Malik [Microsoft]
MCSD, CFPS, Certified Scrummaster
http://blogs.msdn.com/nickmalik
Disclaimer: Opinions expressed in this forum are my own, and not
representative of my employer.
I do not answer questions on behalf of my employer. I'm just a
programmer helping programmers.
--
>the code below is not legal. It doesn't make much sense either.
Well, any illegal code (except for logical bugs) must be trapped by the
compiler I guess...
> Classes inherit interfaces.
> By creating an interface that declares a class in it, what intent is the
> programmer attempting to describe in the code?
I am not going to say that this is a good coding practice or not. However,
there is probably a way to know that If class "RenderMan" has inherited the
"Engine" Class of the IRenerable Interface through "IRenderable.Engine" , it
must also implement the IRenderable interface either. And why not declaring
the whole methods of "IRenderable" in the "Engine" class in the first place?
Probably because the "Render" method will be able to be implemented in
classes that "Also"
happen to have implemented from other interfaces, just one like
"IRenderable.Engine.Automatic"
...
> object which implement the interface must "have a" member class completely
> declared within them? Why not just define that a child class returns an
> object of a particular type from a member method? The same structural
> purpose would be served.
you're right....
> In this case, the Interface can simply refer to another interface for a
> member method.
that's a nice idea, just maybe the nested naming of Interfaces could help to
be more specific of where an interface come or sth.. I don't know!....Wow...
I'm messing up...
> This allows you to have composition without the byzantine declaration
> syntax below.
I 'll tell this to my friend.
Thanks for the help anyway