class YARD::Handlers::Ruby::HandlesExtension
To implement a custom handler matcher, subclass this class and implement {#matches?} to return whether a node matches the handler.
@example A Custom Handler Matcher Extension
# Implements a handler that checks for a specific string # in the node's source. class MyExtension < HandlesExtension def matches?(node) node.source.include?(name) end end # This handler will handle any node where the source includes 'foo' class MyHandler < Handlers::Ruby::Base handles MyExtension.new('foo') end
Attributes
@return [String] the extension matcher value
Public Class Methods
Source
# File lib/yard/handlers/ruby/base.rb, line 22 def initialize(name) @name = name end
Creates a new extension with a specific matcher value name
@param [Object] name the matcher value to check against {#matches?}
Public Instance Methods
Source
# File lib/yard/handlers/ruby/base.rb, line 27 def matches?(node) # rubocop:disable Lint/UnusedMethodArgument raise NotImplementedError end
Tests if the node matches the handler @param [Parser::Ruby::AstNode] node a Ruby
node @return [Boolean] whether the node
matches the handler