Sha256: 6f069b5c7ae06270f9a8569586ccba8d3f46fd77e5d61d2f7b7dcde0949241cb

Contents?: true

Size: 800 Bytes

Versions: 5

Compression:

Stored size: 800 Bytes

Contents

module Popular
  # Namespace for classes and modules that handle including the library's modules
  module Extenders

    # Namespace for classes and modules that handle making a given model popular
    module Popular

      # Helper method for determining whether or not a model has included
      # the Popular module
      #
      # @return [Boolean] whether or not the including class has included the module
      def popular?
        false
      end

      # Includes the module in a given class
      #
      # @overload friendable *args
      #   @param [Hash] options
      def popular *args
        require 'popular/popular'
        include ::Popular::Popular
        
        class_eval do
          def self.popular?
            true
          end
        end
      end

    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
popular-0.6.0 lib/popular/extenders/popular.rb
popular-0.5.1 lib/popular/extenders/popular.rb
popular-0.5.0 lib/popular/extenders/popular.rb
popular-0.4.0 lib/popular/extenders/popular.rb
popular-0.3.2 lib/popular/extenders/popular.rb