module Decors::DecoratorDefinition
Public Instance Methods
define_decorator(decorator_name, decorator_class, mixin: false)
click to toggle source
# File lib/decors/decorator_definition.rb, line 9 def define_decorator(decorator_name, decorator_class, mixin: false) method_definer = mixin ? :define_method : :define_singleton_method send(method_definer, decorator_name) do |*args, **kwargs, &blk| extend(singleton_class? ? Decors::MethodAdded::SingletonListener : Decors::MethodAdded::StandardListener) declared_decorators << [decorator_class, args, kwargs, blk] end end
define_mixin_decorator(decorator_name, decorator_class)
click to toggle source
# File lib/decors/decorator_definition.rb, line 5 def define_mixin_decorator(decorator_name, decorator_class) define_decorator(decorator_name, decorator_class, mixin: true) end