# File lib/puppet/type.rb, line 881
881:   def self.providers_by_source
882:     # Put the default provider first, then the rest of the suitable providers.
883:     sources = []
884:     [defaultprovider, suitableprovider].flatten.uniq.collect do |provider|
885:       next if sources.include?(provider.source)
886: 
887:       sources << provider.source
888:       provider
889:     end.compact
890:   end