Sha256: 0265ccfec5925d7ad1537d05f612bca1b86ebc7c87f97e52240955fb2a860956

Contents?: true

Size: 635 Bytes

Versions: 2

Compression:

Stored size: 635 Bytes

Contents

# encoding: utf-8

module PagesCore
  module Templates
    class ConfigurationProxy
      def initialize(callback, parent = nil)
        @callback = callback
        @parent = parent
      end

      def method_missing(method_name, *args, &block)
        if @parent
          if block_given?
            @callback.call(@parent, method_name, block)
          else
            @callback.call(@parent, method_name, *args)
          end
        else
          if block_given?
            @callback.call(method_name, block)
          else
            @callback.call(method_name, *args)
          end
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
pages_core-3.4.3 lib/pages_core/templates/configuration_proxy.rb
pages_core-3.4.2 lib/pages_core/templates/configuration_proxy.rb