Sha256: dca7004fb0ed6c43880520716c3496d89439857b37c6f6a2c0a4f0809f13bccc
Contents?: true
Size: 668 Bytes
Versions: 1
Compression:
Stored size: 668 Bytes
Contents
# enables variable access as a method call to render helper # = render :_menu, foo: 123, bar: nil # render.foo # 123 # render.bar ||= 456 # render.bar # 456 module Lux class InlineRenderProxy def initialize context, &block @context = context @block = block end def method_missing name, value=nil name = name.to_s if name.sub!('=', '') @context.instance_variable_set("@_#{name}", value) end @context.instance_variable_get("@_#{name}") end end def [] name @context.instance_variable_get("@_#{name}") end def []= name, value @context.instance_variable_set("@_#{name}", value) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
lux-fw-0.6.2 | ./lib/lux/template/inline_render_proxy.rb |