module DuckPuncher::Ducks

Public Class Methods

[](klass) click to toggle source
# File lib/duck_puncher/ducks.rb, line 17
def [](klass)
  list[klass]
end
list() click to toggle source
# File lib/duck_puncher/ducks.rb, line 13
def list
  @list ||= DuckPuncher.ancestral_hash
end
load_mods(klass, loaded_mods: []) click to toggle source
# File lib/duck_puncher/ducks.rb, line 21
def load_mods(klass, loaded_mods: [])
  if klass.respond_to?(:superclass)
    load_mods(klass.superclass, loaded_mods: list[klass].to_a.map(&:mod) + loaded_mods)
  else
    loaded_mods
  end
end