Module: YARD::Handlers::Ruby::DecoratorHandlerMethods

Included in:
ModuleFunctionHandler, PrivateClassMethodHandler, PublicClassMethodHandler, VisibilityHandler
Defined in:
lib/yard/handlers/ruby/decorator_handler_methods.rb

Overview

Helper methods to assist with processing decorators.

Instance Method Summary collapse

Instance Method Details

#process_decorator(*nodes, opts = {}) {|method, node, name| ... } ⇒ Array<Hash>

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.

Examples:

Basic Usage

# Simply pass the method docs through to the method definition.
process do
  process_decorator
end

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

Parameters:

  • 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.

Options Hash (opts):

  • :scope (:instance, :class) — default: :instance

    Scope to use for each MethodObject.

  • :transfer_docstring (true, false)

    Set false to disable transferring the decorator docstring to method definitions passed to the decorator as parameters.

  • :transfer_