Declaring a protocol to be used as a constraint