diff --git a/lib/json_logic.rb b/lib/json_logic.rb index 3bb256b..e80b329 100644 --- a/lib/json_logic.rb +++ b/lib/json_logic.rb @@ -61,7 +61,7 @@ def self.filter(logic, data) end def self.add_operation(operator, function) - Operation.class.send(:define_method, operator) do |v, d| + Operation.define_singleton_method(operator) do |v, d| function.call(v, d) end end diff --git a/lib/json_logic/operation.rb b/lib/json_logic/operation.rb index 5cec5b6..b909672 100644 --- a/lib/json_logic/operation.rb +++ b/lib/json_logic/operation.rb @@ -144,11 +144,5 @@ def self.is_standard?(operator) def self.is_iterable?(operator) ['filter', 'some', 'all', 'none', 'in', 'map', 'reduce'].include?(operator.to_s) end - - def self.add_operation(operator, function) - self.class.send(:define_method, operator) do |v, d| - function.call(v, d) - end - end end end