Sha256: f97a37d859f8b475efa085ef915d9583f8d51f862d5be2112d561936c1b4d834

Contents?: true

Size: 738 Bytes

Versions: 20

Compression:

Stored size: 738 Bytes

Contents

module Startback
  class Context
    module HFactory

      def h(hash)
        h_factor!(self.new, hash)
      end

      def h_factor!(context, hash)
        h_factories.each do |f|
          f.call(context, hash)
        end
        context
      end

      def h_factories
        @h_factories ||= []
      end

      def h_factory(&factory)
        h_factories << factory
      end

      ###

      def h_dump!(context, hash = {})
        h_dumpers.each do |d|
          context.instance_exec(hash, &d)
        end
        hash
      end

      def h_dumpers
        @h_dumpers ||= []
      end

      def h_dump(&dumper)
        h_dumpers << dumper
      end

    end # module HFactory
  end # class Context
end # module Startback

Version data entries

20 entries across 20 versions & 3 rubygems

Version Path
startback-0.17.4 lib/startback/context/h_factory.rb
startback-0.17.3 lib/startback/context/h_factory.rb
startback-0.17.2 lib/startback/context/h_factory.rb
startback-0.17.1 lib/startback/context/h_factory.rb
startback-0.17.0 lib/startback/context/h_factory.rb
startback-0.16.0 lib/startback/context/h_factory.rb
startback-0.15.5 lib/startback/context/h_factory.rb
startback-0.15.4 lib/startback/context/h_factory.rb
startback-0.15.3 lib/startback/context/h_factory.rb
startback-0.15.2 lib/startback/context/h_factory.rb
startback-0.15.1 lib/startback/context/h_factory.rb
startback-0.15.0 lib/startback/context/h_factory.rb
startback-0.14.4 lib/startback/context/h_factory.rb
startback-0.14.3 lib/startback/context/h_factory.rb
startback-0.14.2 lib/startback/context/h_factory.rb
startback-0.14.1 lib/startback/context/h_factory.rb
startback-0.14.0 lib/startback/context/h_factory.rb
startback-jobs-0.14.0 lib/startback/context/h_factory.rb
startback-websocket-0.14.0 lib/startback/context/h_factory.rb
startback-0.13.0 lib/startback/context/h_factory.rb