97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
|
# File 'lib/ambition/processors/base.rb', line 97
def self.translator(context, name = nil)
name ||= self.name.split('::').last
klass = context.owner.ambition_adapter.const_get(name)
instance = klass.new
unless instance.respond_to? :context
klass.class_eval do
attr_accessor :context, :negated
def owner; @context.owner end
def clauses; @context.clauses end
def stash; @context.stash end
def negated?; @negated end
end
end
instance.context = context
instance
end
|