Class: MKBrut::ErbBindingDelegate

Inherits:
Object
  • Object
show all
Defined in:
lib/mkbrut/erb_binding_delegate.rb

Overview

This exists because ERB can’t working with a SimpleDelegator or Delegate.

Direct Known Subclasses

Base::ErbBinding

Instance Method Summary collapse

Constructor Details

#initialize(app_options) ⇒ ErbBindingDelegate

Returns a new instance of ErbBindingDelegate.



4
5
6
# File 'lib/mkbrut/erb_binding_delegate.rb', line 4

def initialize(app_options)
  @app_options = app_options
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(syn, *args, &block) ⇒ Object

Not using Delegate because it won’t work with ERB binding



9
10
11
12
13
14
15
# File 'lib/mkbrut/erb_binding_delegate.rb', line 9

def method_missing(syn,*args,&block)
  if args.empty? && @app_options.respond_to?(syn)
    @app_options.send(syn)
  else
    super
  end
end

Instance Method Details

#respond_to_missing?(syn, include_all) ⇒ Boolean

Returns:

  • (Boolean)


17
18
19
# File 'lib/mkbrut/erb_binding_delegate.rb', line 17

def respond_to_missing?(syn,include_all)
  @app_options.respond_to?(syn)
end