module DeepCover::Memoize

Memoize is a quick way to prepend a module that defines the memoized methods as `@_cache ||= super.freeze` It also refines `freeze` to precache memoized methods

Public Class Methods

included(base) click to toggle source
# File lib/deep_cover/memoize.rb, line 11
def self.included(base)
  base.extend ClassMethods
end

Public Instance Methods

freeze() click to toggle source
Calls superclass method
# File lib/deep_cover/memoize.rb, line 15
def freeze
  self.class.memoized.each do |method|
    send method
  end
  super
end