Sha256: b5d83ca32c5f819938dd5091911a945c1dea424d19d9046612d09e1804421da3

Contents?: true

Size: 1004 Bytes

Versions: 2

Compression:

Stored size: 1004 Bytes

Contents

require 'pp'

module YARD::Templates::Helpers
  module BaseHelper

    # Adds additional test that only includes Objects that contain a URL tag
    def run_verifier(list)

      if options[:verifier]
        list.reject! { |item| options[:verifier].call(item).is_a?(FalseClass) }
      end

      index_objects(list)
    end

    def index_objects(list)
      res = reject_module(list)
      res = reject_without_url(res)
      res = reject_without_topic(res)
      res = reject_overall(res)

      res
    end

    def reject_module(list)
      list.reject { |object| [:root, :module].include?(object.type) }
    end

    def reject_without_url(list)
      list.reject { |object| [:class, :method].include?(object.type) and object.tags("url").empty? }
    end

    def reject_without_topic(list)
      list.reject { |object| [:class].include?(object.type) and object.tags("topic").empty? }
    end

    def reject_overall(list)
      list.reject { |object| object.has_tag?('overall') }
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
yard-rest-plugin-0.2.5 lib/yard-rest-plugin/base_helper.rb
yard-rest-plugin-0.2.4 lib/yard-rest-plugin/base_helper.rb