module Axiom::Aliasable
A mixin to allow inheritable aliases for methods to be added
Public Instance Methods
inheritable_alias(aliases)
click to toggle source
Create aliases for each specified method
@example
inheritable_alias(:- => :difference)
@param [Hash{Symbol => Symbol}] aliases
the new and old methods to alias
@return [self]
@api public
# File lib/axiom/support/aliasable.rb, line 19 def inheritable_alias(aliases) aliases.each { |methods| define_inheritable_alias_method(*methods) } self end
Private Instance Methods
define_inheritable_alias_method(new_method, original_method)
click to toggle source
Create a new method alias for the original method
@param [Symbol] new_method
@param [Symbol] original_method
@return [undefined]
@api private
# File lib/axiom/support/aliasable.rb, line 35 def define_inheritable_alias_method(new_method, original_method) define_method(new_method) do |*args, &block| public_send(original_method, *args, &block) end end