# File lib/moped/cluster.rb, line 143
    def nodes
      # Find the nodes that were down but are ready to be refreshed, or those
      # with stale connection information.
      needs_refresh, available = seeds.partition do |node|
        refreshable?(node)
      end

      # Refresh those nodes.
      available.concat(refresh(needs_refresh))

      # Now return all the nodes that are available and participating in the
      # replica set.
      available.reject{ |node| node.down? }
    end