class OpenDSL
OpenDSL
is a clever way to create a plugable free-form domain specific language.
Example = OpenDSL.new do size do 100 end end class Foo include Example end Foo.new.size #=> 100
Constants
- VERSION
Public Class Methods
new(&block)
click to toggle source
# File lib/opendsl.rb, line 21 def initialize(&block) instance_eval(&block) if block_given? end
Public Instance Methods
method_missing(s, *a, &b)
click to toggle source
Calls superclass method
# File lib/opendsl.rb, line 26 def method_missing(s, *a, &b) if block_given? define_method(s, &b) else super(s, *a, &b) end end