Declaring a class that works with a constrained generic type

The following lines declare a PartyError enum that conforms to the ErrorType protocol. This way, we will be able to throw a specific exception in the next class that we will create. The code file for the sample is included in the swift_3_oop_chapter_06_03 folder:

    public enum PartyError: Error { 
      case insufficientMembersToRemoveLeader 
      case insufficientMembersToVoteLeader 


In case you worked with previous Swift versions, take into account that Swift 3 renamed ErrorType to Error. Swift 3 uses lowerCamelCase for enumeration values.

The following lines declare a Party class that takes advantage of generics to work with many types. The class name is followed by a less than sign (<), an ...

Get Swift 3 ObjectOriented Programming - Second Edition now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.