class Foo { func methodWithParameters(param1: Foo, param2: Foo) { } @discardableResult private func privateMethodWithAnnotation() -> Foo? { return nil } var anInstanceVariable: String? func justAnotherMethod() { } } extension Foo { /// This is just some documentation func methodWithoutParameters() { } } class OtherClass { func foo() { } var computedVariable: Int { return 0 } var computedVariable2: Int { get { return 0 } set { } } deinit { print("deinit") } } enum MyEnum { case foo, bar case baz }