# File lib/ramaze/helper/gestalt.rb, line 18 def g(meth = nil, view = nil) meth ||= caller[0].slice(/`(.*)'?/).gsub(/[\`\']/, '') view_name = (self.class.to_s.sub('Controller', '') + 'View').split('::') view ||= view_name.inject(Object){ |ns, name| ns.const_get(name) } gestalt_class = CACHE_G[view] ||= g_class gestalt = gestalt_class.new gestalt.extend(view) instance_variables.each do |iv| gestalt.instance_variable_set(iv, instance_variable_get(iv)) end gestalt.__send__(meth) gestalt.to_s end