Module: Bogo::Lazy

Defined in:
lib/bogo/lazy.rb

Overview

Adds functionality to facilitate laziness

Defined Under Namespace

Modules: ClassMethods, InstanceMethods

Class Method Summary collapse

Class Method Details

.included(klass) ⇒ Object

Injects laziness into class

Parameters:

  • klass (Class)


222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
# File 'lib/bogo/lazy.rb', line 222

def included(klass)
  klass.class_eval do
    include InstanceMethods
    extend ClassMethods

    class << self

      def inherited(klass)
        klass.set_attributes(
          MultiJson.load(
            MultiJson.dump(self.attributes)
          ).to_smash
        )
      end

    end
  end
end