Module YARD::Handlers::Ruby::DecoratorHandlerMethods
In: lib/yard/handlers/ruby/decorator_handler_methods.rb

Helper methods to assist with processing decorators.

Methods

Public Instance methods

@overload process_decorator(*nodes, opts = {}, &block)

  Takes care of parsing method definitions passed to decorators
  as parameters, as well as parsing chained decorators.

  Use this in a handler's process block.

  @yieldparam method [YARD::CodeObjects::MethodObject] Method being decorated.
  @yieldparam node [YARD::Parser::Ruby::AstNode] AST node of the decorated method.
  @yieldparam name [Symbol] Name of the decorated method.
  @return [Array<Hash>] Array of hashes containing :method, :node, :name.
    See yield params.

  @param nodes [YARD::Parser::Ruby::AstNode] AST nodes that refer to decorated
    methods, like indexes of statement.parameter. Defaults to all parameters.
    Pass nil to specify zero parameters.

  @option opts [:instance, :class] :scope (:instance) Scope to use for each
    MethodObject.

  @option opts [true, false] :transfer_docstring Set false to disable
    transferring the decorator docstring to method definitions passed to the
    decorator as parameters.

  @option opts [true, false] :transfer_source Set false to disable
    transferring the decorator source code string to method definitions
    passed to the decorator as parameters.

  @example Basic Usage
    # Simply pass the method docs through to the method definition.
    process do
      process_decorator
    end

  @example Setting a method's visibility to private.
    process do
      process_decorator :scope => :class do |method|
        method.visibility = :private if method.respond_to? :visibility
      end
    end

[Validate]