module Kenma::Macro::UseMacro
Public Class Methods
new(context = {})
click to toggle source
Calls superclass method
# File lib/kenma/macro/use_macro.rb, line 13 def initialize(context = {}) super extend *use_macros.reverse unless use_macros.empty? end
Public Instance Methods
use_macro!(node)
click to toggle source
# File lib/kenma/macro/use_macro.rb, line 18 def use_macro!(node) macro_mod = bind.eval(node.source) use_macros << macro_mod extend macro_mod nil end
Private Instance Methods
scope_context_switch(context, &block)
click to toggle source
Calls superclass method
# File lib/kenma/macro/use_macro.rb, line 36 def scope_context_switch(context, &block) super(context) { |converter| converter.extend *use_macros.reverse unless use_macros.empty? block.call(converter) } end
use_macro(mod)
click to toggle source
# File lib/kenma/macro/use_macro.rb, line 28 def use_macro(mod) end
use_macros()
click to toggle source
# File lib/kenma/macro/use_macro.rb, line 32 def use_macros scope_context[:use_macros] ||= [] end