karlentwistle/ruby_home

View on GitHub
lib/ruby_home/service_collection.rb

Summary

Maintainability
A
0 mins
Test Coverage
module RubyHome
  class ServiceCollection
    include Enumerable

    def initialize(*services)
      @services = services
    end

    def each(&block)
      services.each(&block)
    end

    def <<(service)
      @services << service
    end

    def characteristics
      flat_map(&:characteristics).flat_map(&:all)
    end

    private

    attr_reader :services
  end
end