protocol Incrementable { var count: Int { get } func increment() } struct Counter: Incrementable { private(set) var count = 0 func increment() { count += 1 } }