Classes can also define Nested Types. Nested types are like regular custom types, except they are considered part of the class they are nested in, and their visibility can be scoped as granular as all class Members.
Nested types are declared using the
nested in syntax, and (outside of the containing class) are referred to in the same way as static class members would – prefixed with the name of the class, and dot.
Refer to the Nested Types topic for more details.
```oxygene type OuterClass = public class end;
InnerClass nested in OuterClass = public class end;```
These can be accessed as
var i := new OuterClass.InnerClass(...);
A visibility level modifier can be applied to a class type, the default level is
assembly. Note that because nested types are considered class members, they can be applied the full range of more granular member visibility levels, instead od just