hiragram no blog

iOSとか

複数のプロトコルに適合する型、という書き方

最近知りました。

//: Playground - noun: a place where people can play

protocol Animal {
  func run()
}

protocol Vehicle {
  func drive()
}

struct Nekobasu: Animal, Vehicle {
  func run() { }
  func drive() { }
}

let bus: protocol<Animal, Vehicle>

bus = Nekobasu()

bus.drive() // ok
bus.run()   // ok