Sha256: e8f094beeb0b6a9454b362960e795652a339837206a22a99962bcd46baf70cb9

Contents?: true

Size: 493 Bytes

Versions: 3

Compression:

Stored size: 493 Bytes

Contents

module Docks
  module SymbolSources
    @sources = []

    def self.register(source)
      source = source.instance
      @sources << source unless @sources.include?(source)
    end

    def self.<<(source)
      register(source)
    end

    def self.path_for(symbol, options = {})
      @sources.each do |source|
        return source.path_for(symbol) if source.recognizes?(symbol, options)
      end

      nil
    end

    private

    def self.clear
      @sources = []
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
docks_app-0.0.3 lib/docks/symbol_sources.rb
docks_app-0.0.2 lib/docks/symbol_sources.rb
docks_app-0.0.1 lib/docks/symbol_sources.rb