Sha256: 21eaf9ba0aa8ebf8a63cd34c603ebb49557f3c3fd60d26e43742fc8de7b84049
Contents?: true
Size: 495 Bytes
Versions: 3
Compression:
Stored size: 495 Bytes
Contents
require "iolite/lazy" module Iolite module Placeholders def args Lazy.new { |*args| args } end module_function :args def argument index Lazy.new { |*args| args[index-1] } end module_function :argument def prepare n 1.upto(n).each { |i| const_set("ARG#{i}", argument(i)) define_method("arg#{i}") do Placeholders.const_get("ARG#{i}") end module_function "arg#{i}" alias_method "_#{i}", "arg#{i}" } end module_function :prepare prepare(10) end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
iolite-0.0.3 | lib/iolite/placeholders.rb |
iolite-0.0.2 | lib/iolite/placeholders.rb |
iolite-0.0.1 | lib/iolite/placeholders.rb |