O'Reilly logo

Swift Functional Programming - Second Edition by Dr. Fatih Nayebi

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Type constraints

It is great that our function works with any type, but what if our API user tries to use the calculate function on types that cannot be used in arithmetic calculations?

To mitigate this problem, we can use type constraints. Using type constraints, we will be able to enforce the use of a certain type. Type constraints specify that a type parameter must inherit from a specific class or conform to a particular protocol or protocol composition. Collections are examples of type constraints that we are already familiar with in the Swift programming language. Collections are Generics in Swift, so we can have arrays of Int, Double, String, and so on.

Unlike Objective-C, where we could have different types in a collection, in Swift ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required