lib/origin/macroable.rb
# encoding: utf-8
module Origin
# Adds macro behaviour for adding symbol methods.
module Macroable
# Adds a method on Symbol for convenience in where queries for the
# provided operators.
#
# @example Add a symbol key.
# key :all, "$all
#
# @param [ Symbol ] name The name of the method.
# @param [ Symbol ] strategy The merge strategy.
# @param [ String ] operator The MongoDB operator.
# @param [ String ] additional The additional MongoDB operator.
#
# @since 1.0.0
def key(name, strategy, operator, additional = nil, &block)
::Symbol.add_key(name, strategy, operator, additional, &block)
end
end
end