Module: Qswarm::DSL

Included in:
Broker, Listener, Speaker
Defined in:
lib/qswarm/dsl.rb

Instance Method Summary collapse

Instance Method Details

#dsl_accessor(*symbols) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
14
15
# File 'lib/qswarm/dsl.rb', line 3

def dsl_accessor(*symbols)
  symbols.each { |sym|
    class_eval %{
      def #{sym}(*val)
        if val.empty?
          @#{sym}
        else
          @#{sym} = val.size == 1 ? val[0] : val
        end
      end
    }
  }
end