class AroundTheWorld::ProxyModule

Attributes

purpose[R]

Public Class Methods

new(purpose: nil) click to toggle source

@param :purpose [*] Any string, symbol or object that signifies a purpose for the ProxyModule,

i.e. :memoization or SomeMemoizationGem.
# File lib/around_the_world/proxy_module.rb, line 9
def initialize(purpose: nil)
  @purpose = purpose unless purpose.blank?
end

Public Instance Methods

defines_proxy_method?(method_name) click to toggle source

@return [Boolean] True if the ProxyModule defines aa method of the given name, regardless of its privacy.

# File lib/around_the_world/proxy_module.rb, line 22
def defines_proxy_method?(method_name)
  instance_methods(true).include?(method_name.to_sym) || private_method_defined?(method_name.to_sym)
end
for?(purpose) click to toggle source
# File lib/around_the_world/proxy_module.rb, line 13
def for?(purpose)
  self.purpose == purpose
end
inspect() click to toggle source
# File lib/around_the_world/proxy_module.rb, line 17
def inspect
  "#<#{self.class.name}#{":#{purpose}" if purpose}>"
end