module Contextualize
Public Class Methods
included(base)
click to toggle source
# File lib/contextualize.rb, line 39 def self.included base base.extend ClassMethods end
Public Instance Methods
add_context(name)
click to toggle source
# File lib/contextualize.rb, line 59 def add_context name context(name).each do |const| self.send :mixin, const end self end
Also aliased as: enter_context
add_contexts(*names)
click to toggle source
# File lib/contextualize.rb, line 47 def add_contexts *names names.each {|name| add_context(name) } self end
Also aliased as: enter_contexts
context_map()
click to toggle source
# File lib/contextualize.rb, line 43 def context_map self.class.context_map || {} end
remove_context(name)
click to toggle source
# File lib/contextualize.rb, line 67 def remove_context name return if !context(name) || context(name).empty? context(name).each do |const| self.send :unmix, const end self end
Also aliased as: exit_context
remove_contexts(*names)
click to toggle source
# File lib/contextualize.rb, line 53 def remove_contexts *names names.each {|name| remove_context(name) } self end
Also aliased as: exit_contexts
Protected Instance Methods
context(name)
click to toggle source
# File lib/contextualize.rb, line 78 def context name mods = context_map[name.to_sym] || [] [mods].flatten end