class RubyProxy::KlassFactory
Public Class Methods
make_class(klass_name) { |klass| ... }
click to toggle source
generate proxy class
# File lib/woolen_common/ruby_proxy/client.rb, line 172 def self.make_class(klass_name) klass_name = klass_name.to_s name_ok?(klass_name) eval <<-EOF class #{klass_name} end EOF klass = eval(klass_name) yield klass klass end
make_klass(klass_name, type)
click to toggle source
# File lib/woolen_common/ruby_proxy/client.rb, line 160 def self.make_klass(klass_name, type) case type when 'Class' make_class(klass_name) when 'Module' make_module(klass_name) else raise TypeError, "wrong make_klass type: #{type}" end end
make_module(klass_name) { |klass| ... }
click to toggle source
# File lib/woolen_common/ruby_proxy/client.rb, line 184 def self.make_module(klass_name) klass_name = klass_name.to_s name_ok?(klass_name) eval <<-EOF module #{klass_name} end EOF klass = eval(klass_name) yield klass klass end
name_ok?(name)
click to toggle source
# File lib/woolen_common/ruby_proxy/client.rb, line 196 def self.name_ok?(name) raise TypeError, " name #{name} can't be class or module name." unless name =~ /^[A-Z][a-zA-Z_0-9]*/ end