Relocate DslHelper from root namespace to under AASM namespace
`DslHelper` is a module for AASM and should not be located in the root namespace.
This commit is contained in:
parent
42b66b8377
commit
ccdb2172f8
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
module AASM::Core
|
module AASM::Core
|
||||||
class Event
|
class Event
|
||||||
include DslHelper
|
include AASM::DslHelper
|
||||||
|
|
||||||
attr_reader :name, :state_machine, :options
|
attr_reader :name, :state_machine, :options
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
module AASM::Core
|
module AASM::Core
|
||||||
class Transition
|
class Transition
|
||||||
include DslHelper
|
include AASM::DslHelper
|
||||||
|
|
||||||
attr_reader :from, :to, :event, :opts, :failures
|
attr_reader :from, :to, :event, :opts, :failures
|
||||||
alias_method :options, :opts
|
alias_method :options, :opts
|
||||||
|
|
|
@ -1,30 +1,32 @@
|
||||||
module DslHelper
|
module AASM
|
||||||
|
module DslHelper
|
||||||
|
|
||||||
class Proxy
|
class Proxy
|
||||||
attr_accessor :options
|
attr_accessor :options
|
||||||
|
|
||||||
def initialize(options, valid_keys, source)
|
def initialize(options, valid_keys, source)
|
||||||
@valid_keys = valid_keys
|
@valid_keys = valid_keys
|
||||||
@source = source
|
@source = source
|
||||||
|
|
||||||
@options = options
|
@options = options
|
||||||
end
|
end
|
||||||
|
|
||||||
def method_missing(name, *args, &block)
|
def method_missing(name, *args, &block)
|
||||||
if @valid_keys.include?(name)
|
if @valid_keys.include?(name)
|
||||||
options[name] = Array(options[name])
|
options[name] = Array(options[name])
|
||||||
options[name] << block if block
|
options[name] << block if block
|
||||||
options[name] += Array(args)
|
options[name] += Array(args)
|
||||||
else
|
else
|
||||||
@source.send name, *args, &block
|
@source.send name, *args, &block
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
|
||||||
def add_options_from_dsl(options, valid_keys, &block)
|
def add_options_from_dsl(options, valid_keys, &block)
|
||||||
proxy = Proxy.new(options, valid_keys, self)
|
proxy = Proxy.new(options, valid_keys, self)
|
||||||
proxy.instance_eval(&block)
|
proxy.instance_eval(&block)
|
||||||
proxy.options
|
proxy.options
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
|
Loading…
Reference in New Issue