Refactor 'deriveProtocolRequirement' dispatch to switch on known protocol kind.
Refactor 'deriveProtocolRequirement' dispatch to switch on known protocol kind.

NFC.

Swift SVN r26779

apple/swift,gmilos/swift,kusl/swift,rudkx/swift,tardieu/swift,kstaring/swift,LeoShimonaka/swift,tinysun212/swift-windows,jckarter/swift,calebd/swift,sschiau/swift,danielmartin/swift,emilstahl/swift,hooman/swift,ken0nek/swift,xedin/swift,Ivacker/swift,practicalswift/swift,lorentey/swift,brentdax/swift,dduan/swift,codestergit/swift,felix91gr/swift,allevato/swift,johnno1962d/swift,swiftix/swift.old,kusl/swift,xedin/swift,karwa/swift,frootloops/swift,jopamer/swift,ahoppen/swift,KrishMunot/swift,kusl/swift,nathawes/swift,lorentey/swift,JGiola/swift,jtbandes/swift,kstaring/swift,benlangmuir/swift,hooman/swift,OscarSwanros/swift,zisko/swift,frootloops/swift,OscarSwanros/swift,danielmartin/swift,gregomni/swift,hooman/swift,emilstahl/swift,gmilos/swift,milseman/swift,practicalswift/swift,shahmishal/swift,arvedviehweger/swift,parkera/swift,glessard/swift,xwu/swift,hooman/swift,tinysun212/swift-windows,CodaFi/swift,JGiola/swift,lorentey/swift,bitjammer/swift,LeoShimonaka/swift,khizkhiz/swift,devincoughlin/swift,hughbe/swift,therealbnut/swift,austinzheng/swift,huonw/swift,jckarter/swift,natecook1000/swift,nathawes/swift,xwu/swift,xedin/swift,return/swift,dreamsxin/swift,ben-ng/swift,shajrawi/swift,tinysun212/swift-windows,Ivacker/swift,IngmarStein/swift,karwa/swift,atrick/swift,russbishop/swift,russbishop/swift,harlanhaskins/swift,KrishMunot/swift,roambotics/swift,cbrentharris/swift,austinzheng/swift,jopamer/swift,milseman/swift,JaSpa/swift,aschwaighofer/swift,gottesmm/swift,kperryua/swift,benlangmuir/swift,natecook1000/swift,khizkhiz/swift,sschiau/swift,huonw/swift,amraboelela/swift,slavapestov/swift,JaSpa/swift,shahmishal/swift,gribozavr/swift,russbishop/swift,tjw/swift,codestergit/swift,gregomni/swift,felix91gr/swift,natecook1000/swift,roambotics/swift,lorentey/swift,uasys/swift,milseman/swift,huonw/swift,sschiau/swift,IngmarStein/swift,austinzheng/swift,SwiftAndroid/swift,codestergit/swift,uasys/swift,codestergit/swift,xwu/swift,shahmishal/swift,IngmarStein/swift,JGiola/swift,therealbnut/swift,kusl/swift,sdulal/swift,manavgabhawala/swift,hughbe/swift,KrishMunot/swift,Ivacker/swift,mightydeveloper/swift,jmgc/swift,khizkhiz/swift,ahoppen/swift,shajrawi/swift,ben-ng/swift,gottesmm/swift,swiftix/swift,gregomni/swift,tkremenek/swift,stephentyrone/swift,gregomni/swift,ben-ng/swift,adrfer/swift,sschiau/swift,ben-ng/swift,JaSpa/swift,jopamer/swift,alblue/swift,allevato/swift,roambotics/swift,amraboelela/swift,milseman/swift,kentya6/swift,sdulal/swift,JGiola/swift,apple/swift,xwu/swift,jopamer/swift,aschwaighofer/swift,arvedviehweger/swift,airspeedswift/swift,tkremenek/swift,return/swift,russbishop/swift,hughbe/swift,felix91gr/swift,tardieu/swift,Jnosh/swift,kusl/swift,austinzheng/swift,kentya6/swift,tjw/swift,khizkhiz/swift,emilstahl/swift,dduan/swift,emilstahl/swift,hooman/swift,mightydeveloper/swift,LeoShimonaka/swift,LeoShimonaka/swift,tinysun212/swift-windows,slavapestov/swift,harlanhaskins/swift,jmgc/swift,gmilos/swift,benlangmuir/swift,practicalswift/swift,ahoppen/swift,tjw/swift,swiftix/swift.old,calebd/swift,JaSpa/swift,CodaFi/swift,KrishMunot/swift,jmgc/swift,jtbandes/swift,MukeshKumarS/Swift,xwu/swift,codestergit/swift,codestergit/swift,adrfer/swift,kperryua/swift,devincoughlin/swift,Ivacker/swift,stephentyrone/swift,ken0nek/swift,swiftix/swift.old,hughbe/swift,Jnosh/swift,deyton/swift,Jnosh/swift,gribozavr/swift,zisko/swift,sdulal/swift,bitjammer/swift,hughbe/swift,huonw/swift,gribozavr/swift,rudkx/swift,Ivacker/swift,Ivacker/swift,swiftix/swift,danielmartin/swift,huonw/swift,modocache/swift,uasys/swift,allevato/swift,codestergit/swift,swiftix/swift.old,kstaring/swift,manavgabhawala/swift,jmgc/swift,airspeedswift/swift,zisko/swift,jmgc/swift,tjw/swift,shahmishal/swift,parkera/swift,gribozavr/swift,gmilos/swift,kusl/swift,deyton/swift,uasys/swift,djwbrown/swift,nathawes/swift,uasys/swift,dreamsxin/swift,alblue/swift,alblue/swift,IngmarStein/swift,djwbrown/swift,lorentey/swift,arvedviehweger/swift,glessard/swift,parkera/swift,tardieu/swift,natecook1000/swift,allevato/swift,MukeshKumarS/Swift,kentya6/swift,hughbe/swift,tkremenek/swift,gottesmm/swift,cbrentharris/swift,devincoughlin/swift,kentya6/swift,harlanhaskins/swift,adrfer/swift,swiftix/swift.old,CodaFi/swift,SwiftAndroid/swift,mightydeveloper/swift,rudkx/swift,parkera/swift,aschwaighofer/swift,modocache/swift,tkremenek/swift,Ivacker/swift,cbrentharris/swift,modocache/swift,return/swift,parkera/swift,swiftix/swift.old,SwiftAndroid/swift,cbrentharris/swift,djwbrown/swift,practicalswift/swift,djwbrown/swift,frootloops/swift,swiftix/swift,calebd/swift,danielmartin/swift,bitjammer/swift,adrfer/swift,return/swift,adrfer/swift,atrick/swift,glessard/swift,rudkx/swift,allevato/swift,ken0nek/swift,stephentyrone/swift,adrfer/swift,lorentey/swift,natecook1000/swift,OscarSwanros/swift,khizkhiz/swift,gribozavr/swift,shajrawi/swift,harlanhaskins/swift,benlangmuir/swift,slavapestov/swift,tkremenek/swift,kperryua/swift,johnno1962d/swift,IngmarStein/swift,practicalswift/swift,dduan/swift,jtbandes/swift,mightydeveloper/swift,kusl/swift,jtbandes/swift,aschwaighofer/swift,devincoughlin/swift,bitjammer/swift,MukeshKumarS/Swift,zisko/swift,amraboelela/swift,gottesmm/swift,JaSpa/swift,kperryua/swift,calebd/swift,OscarSwanros/swift,roambotics/swift,stephentyrone/swift,danielmartin/swift,tardieu/swift,SwiftAndroid/swift,amraboelela/swift,deyton/swift,tinysun212/swift-windows,huonw/swift,jopamer/swift,ken0nek/swift,Ivacker/swift,parkera/swift,brentdax/swift,bitjammer/swift,airspeedswift/swift,Jnosh/swift,manavgabhawala/swift,jckarter/swift,allevato/swift,kentya6/swift,airspeedswift/swift,milseman/swift,OscarSwanros/swift,johnno1962d/swift,sschiau/swift,benlangmuir/swift,gregomni/swift,modocache/swift,lorentey/swift,felix91gr/swift,KrishMunot/swift,airspeedswift/swift,roambotics/swift,amraboelela/swift,jmgc/swift,huonw/swift,felix91gr/swift,karwa/swift,natecook1000/swift,therealbnut/swift,djwbrown/swift,alblue/swift,dduan/swift,kentya6/swift,rudkx/swift,practicalswift/swift,apple/swift,jtbandes/swift,kstaring/swift,apple/swift,atrick/swift,shajrawi/swift,rudkx/swift,harlanhaskins/swift,karwa/swift,sschiau/swift,devincoughlin/swift,sdulal/swift,atrick/swift,frootloops/swift,JGiola/swift,ken0nek/swift,stephentyrone/swift,harlanhaskins/swift,manavgabhawala/swift,ben-ng/swift,gribozavr/swift,gregomni/swift,brentdax/swift,swiftix/swift,dduan/swift,modocache/swift,therealbnut/swift,ben-ng/swift,deyton/swift,roambotics/swift,jopamer/swift,stephentyrone/swift,lorentey/swift,JaSpa/swift,gottesmm/swift,tkremenek/swift,glessard/swift,xedin/swift,natecook1000/swift,gmilos/swift,JaSpa/swift,aschwaighofer/swift,karwa/swift,nathawes/swift,Jnosh/swift,danielmartin/swift,milseman/swift,kperryua/swift,manavgabhawala/swift,LeoShimonaka/swift,arvedviehweger/swift,jckarter/swift,brentdax/swift,dduan/swift,manavgabhawala/swift,IngmarStein/swift,IngmarStein/swift,kstaring/swift,sschiau/swift,frootloops/swift,adrfer/swift,emilstahl/swift,OscarSwanros/swift,practicalswift/swift,CodaFi/swift,nathawes/swift,ken0nek/swift,aschwaighofer/swift,ahoppen/swift,allevato/swift,kentya6/swift,austinzheng/swift,danielmartin/swift,cbrentharris/swift,Jnosh/swift,kperryua/swift,xwu/swift,nathawes/swift,shajrawi/swift,kentya6/swift,kstaring/swift,jtbandes/swift,russbishop/swift,swiftix/swift,milseman/swift,kusl/swift,amraboelela/swift,hooman/swift,felix91gr/swift,brentdax/swift,sdulal/swift,djwbrown/swift,MukeshKumarS/Swift,hughbe/swift,practicalswift/swift,sdulal/swift,jckarter/swift,SwiftAndroid/swift,calebd/swift,shajrawi/swift,johnno1962d/swift,tardieu/swift,emilstahl/swift,devincoughlin/swift,frootloops/swift,cbrentharris/swift,gribozavr/swift,airspeedswift/swift,brentdax/swift,OscarSwanros/swift,LeoShimonaka/swift,alblue/swift,parkera/swift,slavapestov/swift,zisko/swift,return/swift,atrick/swift,ahoppen/swift,shahmishal/swift,hooman/swift,LeoShimonaka/swift,amraboelela/swift,tardieu/swift,ahoppen/swift,xwu/swift,therealbnut/swift,JGiola/swift,jtbandes/swift,khizkhiz/swift,deyton/swift,alblue/swift,johnno1962d/swift,mightydeveloper/swift,emilstahl/swift,cbrentharris/swift,arvedviehweger/swift,Jnosh/swift,xedin/swift,shahmishal/swift,return/swift,arvedviehweger/swift,gribozavr/swift,KrishMunot/swift,airspeedswift/swift,LeoShimonaka/swift,swiftix/swift,sdulal/swift,bitjammer/swift,johnno1962d/swift,alblue/swift,swiftix/swift,modocache/swift,CodaFi/swift,russbishop/swift,MukeshKumarS/Swift,atrick/swift,russbishop/swift,therealbnut/swift,apple/swift,calebd/swift,cbrentharris/swift,therealbnut/swift,modocache/swift,slavapestov/swift,deyton/swift,uasys/swift,khizkhiz/swift,parkera/swift,mightydeveloper/swift,gottesmm/swift,xedin/swift,xedin/swift,KrishMunot/swift,devincoughlin/swift,calebd/swift,ken0nek/swift,gmilos/swift,CodaFi/swift,swiftix/swift.old,xedin/swift,ben-ng/swift,shajrawi/swift,stephentyrone/swift,sdulal/swift,nathawes/swift,deyton/swift,djwbrown/swift,arvedviehweger/swift,gottesmm/swift,apple/swift,glessard/swift,kperryua/swift,emilstahl/swift,bitjammer/swift,frootloops/swift,uasys/swift,karwa/swift,slavapestov/swift,karwa/swift,swiftix/swift.old,felix91gr/swift,tjw/swift,glessard/swift,MukeshKumarS/Swift,harlanhaskins/swift,aschwaighofer/swift,slavapestov/swift,tjw/swift,CodaFi/swift,tkremenek/swift,tjw/swift,karwa/swift,mightydeveloper/swift,benlangmuir/swift,zisko/swift,gmilos/swift,austinzheng/swift,jckarter/swift,mightydeveloper/swift,manavgabhawala/swift,kstaring/swift,shahmishal/swift,tinysun212/swift-windows,jckarter/swift,tinysun212/swift-windows,SwiftAndroid/swift,johnno1962d/swift,return/swift,zisko/swift,shahmishal/swift,tardieu/swift,devincoughlin/swift,jopamer/swift,austinzheng/swift,MukeshKumarS/Swift,jmgc/swift,dduan/swift,brentdax/swift,SwiftAndroid/swift,sschiau/swift,shajrawi/swift