Method: YARD::Handlers::C::Base.handles?

Defined in:
lib/yard/handlers/c/base.rb

.handles?(statement, processor) ⇒ Boolean

Returns whether the handler handles this statement.

Returns:

  • (Boolean)

    whether the handler handles this statement

Since:

  • 0.8.0


9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/yard/handlers/c/base.rb', line 9

def self.handles?(statement, processor)
  processor.globals.cruby_processed_files ||= {}
  processor.globals.cruby_processed_files[processor.file] = true

  if statement.respond_to? :declaration
    src = statement.declaration
  else
    src = statement.source
  end

  handlers.any? do |a_handler|
    statement_class >= statement.class &&
      case a_handler
      when String
        src == a_handler
      when Regexp
        src =~ a_handler
      end
  end
end