Module: LazyMethods::ClassMethods

Defined in:
lib/lazy_methods.rb

Instance Method Summary collapse

Instance Method Details

#define_async_class_methods(*method_names) ⇒ Object



68
69
70
71
72
73
74
75
76
# File 'lib/lazy_methods.rb', line 68

def define_async_class_methods(*method_names)
  method_names.flatten.each do |method_name|
    class_eval "      def self.async_\#{method_name}(*args, &block)\n        AsyncProxy.new{ \#{method_name}(*args, &block) }\n      end\n    EOS\n  end\nend\n"

#define_async_methods(*method_names) ⇒ Object



48
49
50
51
52
53
54
55
56
# File 'lib/lazy_methods.rb', line 48

def define_async_methods(*method_names)
  method_names.flatten.each do |method_name|
    class_eval "      def async_\#{method_name}(*args, &block)\n        AsyncProxy.new{ \#{method_name}(*args, &block) }\n      end\n    EOS\n  end\nend\n"

#define_lazy_class_methods(*method_names) ⇒ Object



58
59
60
61
62
63
64
65
66
# File 'lib/lazy_methods.rb', line 58

def define_lazy_class_methods(*method_names)
  method_names.flatten.each do |method_name|
    class_eval "      def self.lazy_\#{method_name}(*args, &block)\n        LazyProxy.new{ \#{method_name}(*args, &block) }\n      end\n    EOS\n  end\nend\n"

#define_lazy_methods(*method_names) ⇒ Object



38
39
40
41
42
43
44
45
46
# File 'lib/lazy_methods.rb', line 38

def define_lazy_methods(*method_names)
  method_names.flatten.each do |method_name|
    class_eval "      def lazy_\#{method_name}(*args, &block)\n        LazyProxy.new{ \#{method_name}(*args, &block) }\n      end\n    EOS\n  end\nend\n"