interface Printable { void print( uint level) in { assert (level > 0); } } class Widget : Printable { void print( uint level) in { } body { } } class ExtendedWidget : Widget { override void print( uint level) in { } body { } } immutable string programName = "demo" ; int perThread = 42; shared int perApp = 5; struct BigNum { this ( this ) { ... } ~ this () { ... } } void main() { }