Вызов методов родительского модуля из вложенного класса

Мне трудно понять, как вызвать метод из родительского модуля в классе.

Я хочу вызвать функции модуля из родительского модуля в своих вложенных классах, но не могу найти способ, как это сделать.

Пример:

module Awesome
  class Checker
    def awesome?
      awesome_detection
    end
  end

  module_function
  def awesome_detection
    true
  end

end

Если я вызываю Awesome::Checker.new.awesome?, он не знает о awesome_detection

Любые идеи о том, что мне не хватает?

Ответы

Ответ 1

#!/usr/bin/env ruby -wKU

module Awesome

  class Checker
    def awesome?
      Awesome.awesome_detection
    end
  end

  def self.awesome_detection
    puts "yes"
  end

end

Awesome::Checker.new.awesome?
# => yes